Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Помогите с решнием задач:) (http://forum.oszone.net/showthread.php?t=130576)

DruOleg 01-02-2009 13:59 1026141

Помогите с решнием задач:)
 
Тема: Потоки. Использование стандартного ввода-вывода (iostream)(1-5 задания). Наследование. Иерархия и контейнерные классы(задание 6)
1. Написать программу вычисления наибольшего общего делителя двух целых чисел. Наибольший общий делитель рекурсивно вычисляется следующим образом;
GCD(m, n) is:
if m mod n equals 0 then n;
else GCD(n, m mod n);
Программа должна использовать цикл while. Входные данные поступают с клавиатуры. Результат выводится на экран. Предусмотреть обработку ошибок.
2. Написать программу, печатающую символы от A до Z. Использовать цикл while. В строку выводится номер, символ, шестнадцатеричный и восьмеричный код.
З. Написать программу решения квадратного уравнения. Корни только вещественные. Ввод и вывод через стандартные потоки ввода-вывода. Вывод результата в “научном” формата. Установить ширину поля 12 символов, установить точность 4 цифры, заполнить вместо пробелов символом _. с помощью функций и манипуляторов.
4. Проверить какие флаги потока вывода установлены и заменить попарно на десятичные, на шестнадцатеричные (и наоборот), обычную на научную нотацию (и наоборот) Проверить результат.
5. Написать программу с двумя своими манипуляторами. Один выводит сообщение, другой устанавливает шестнадцатеричный вывод и переход на новую строку.
б. Используя иерархию и композицию классов, создать бинарное дерево. У бинарного дерева есть корневой узел. Мы можем вставлять узел. Мы можем обходить вначале левое поддерево, потом правое (последовательный обход) и обратный обход. Узел может быть помещен в дерево двоичного поиска только в качестве концевого узла. Если дерево является пустым, то создается новый экземпляр класса узел дерева и узел помещается в дерево. Если дерево не является пустым, то программа сравнивает вставляемое в дерево значение со значением в корневом узле и если меньше, то помещает в левые поддеревья, а если больше, то в правые. Если значения равны, то выводится сообщение, что повтор и не вставляется.

Drongo 01-02-2009 14:54 1026187

Цитата:

Цитата DruOleg
Помогите с решнием задач:) »

Тема называется Помогите, а не решите за меня. Есть какие-то варианты решений или моменты которые не понятны?
Пару частичных решений

Код:

//Программа нахождения наибольшего общего делителя
#include <iostream>
using std::cout;
using std::cin;
using std::endl;

void ged(int, int);

int c = 1;

int main()
{
  ...
  // Объявление переменных
  // Считывание с клавиатуры
  // Проверка на валидность
  // Передача аргументов функции
  ...

    return 0;
}

// Рекурсивная функция нахождения НОД
void ged(int number1, int number2)
{
  c = number1 % number2;
  number1 = number2;
  number2 = c;

  if(c != 0)
      ged(number1, number2);
  else
      cout<<"\n  MAXIMUM OBSCHIY DELITEL CHISEL RAVEN:  "<<number1<<endl;
}

Цитата:

Цитата DruOleg
З. Написать программу решения квадратного уравнения. »

Решение не проверяет наличие ошибок и без форматирования, но содержит идею вычисления корня.
Код:

...
  double a, b, c, d;    // объявления переменных
  d = b * b + 4 * a * c;      // нахождение дискриминанта

  if(d < 0)
    cout<<" НЕТ КОРНЕЙ!!! ";  // если нет корней

  double x1 = (-b + sqrt(d)) / (2 * a);      // 1 корень
  double x2 = (-b - sqrt(d)) / (2 * a);      // 2 корень

  cout<<" x1: "<<x1<<endl;
  cout<<" x2: "<<x2<<endl;
...


Частичные решения для задания № 2 присутствуют в этой теме - [решено] Четыре задачи начального уровня

DruOleg 24-02-2009 10:09 1047150

Люди добрые. Горю с сессией, помогите пожалуйста с решением задач....
Учусь на заочном отделении, бюджетник, был в рабочей командировке, приехал на той неделе только, сходил на кафедру - там надавали заданий...
С паскалем я еще бы и сам справился - но вот с С++ - честно старался разобраться еще в том году, самостоятельно не смог, да и так не смог найти рабочий си бюлдер...
Заранее благодарен всем за проявление помощи!

Admiral 25-02-2009 01:22 1047959

DruOleg, тогда на Паскале стоит пробовать решать.
Переводы с одного языка на другой в темах раздела Программирования встречаются.
В любом случаи даже если позже перевести не удастца - преподу можно показать и эти труды, что б оценил реализацию.
Среда и компилятор обязательно от Борланд? Если нет то можно поискать и от других производителей.


Время: 19:08.

Время: 19:08.
© OSzone.net 2001-