Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Chernobyl
212 / 212 / 67
Регистрация: 30.09.2012
Сообщений: 542
#1

Цикл(Доработать прогу для решения квадратных уравнений) - C++

10.04.2013, 18:40. Просмотров 434. Ответов 3
Метки нет (Все метки)

Написал прогу для решения квадратных уравнений,но как известно она вычисляет только раз и потом уже закрывается,а я захотел сделать так,чтобы можна было решать уравнения, вводя по 3 коэфициенты, сколь угодно раз.По сути,сделал я это при помощи do...while, по идеи вышло,но каким еще способом можно сделать так?
Вот мой код.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# include <iostream>
# include <string>
# include <vector>
# include <algorithm>
# include <cmath>
# include <windows.h>
using namespace std;
int main()
{
SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    cout <<"Введите коэфициенты a,b,c" <<endl ;
    double a, b, c ;
    cin >> a >> b >> c;
    do{
    double d=(b*b)-(4*(a*c));
    double f=sqrt(d);
    if (d>0) cout << "x1 = " << (-b + f)/2/a <<" x2 = " << ( -b - f)/2/a <<endl ;
    if (d==0) cout <<"x = " << -b/2/a <<endl ;
    if (d<0) cout <<"Дискриминант меньше нуля.Корней нет." <<endl ;
    }while(cin >> a >> b >> c);
 
    system("pause");
    return 0;
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2013, 18:40     Цикл(Доработать прогу для решения квадратных уравнений)
Посмотрите здесь:

Среди N квадратных уравнений с заданными коэффициентами подсчитать количество уравнений - C++
Среди N квадратных уравнений с заданными коэффициентами подсчитать количество уравнений, имеющих различные действительные корни, определить...

Программа для решения уравнений - C++
Помогите написать програму для уравнений z1=1-1/4*sin^2*2(альфа)+cos2(альфа) z2=cos^2(альфа)+cos^4(альфа)

Написать программу для решения уравнений - C++
Не могу сделать прогу на С++. Кто сделает - огромное спасибо. Необходимо выбрать 3 уравнения и написать для них программу на С++. ...

Программа для решения хим. уравнений - C++
Здравствуйте форумчане! Мне нужна ваша помощь!!! Я хочу сделать программу для решения ХИМИЧЕСКИХ УРАВНЕНИЙ. Как только я начал столкнулся с...

сделать программу для решения дифференциальных уравнений - C++
Нужна сделать программу для решения дифференциальных уравнений 1)(1+x2)dy+ydx=0,y=1 при x=1; 2)y|=tgx*tgy; программу сделать я смогу...

Метод Гаусса для решения линейных уравнений - C++
Мож у когото завалялся, буду благодарен.

Готовые библиотеки для решения систем уравнений - C++
Методом Гаусса. Приведением к диагональному виду. Разрядность 32 бита, при обращении элементов главной диагонали в ноль возвращается FALSE.

Пример кода для решения системы уравнений - C++
Здравствуйте. Нужен код на С или С++, решающий системы уравнений. Подскажите, плз, где его можно достать. Заранее, спасибо.

Нужна программа для решения системы математических уравнений - C++
Написать программу для решения системы математических уравнений для диапазона чисел от 1,5 до 15 с шагом прироста 0,6. y =...

Метод хорд для решения системы нелинейных уравнений - C++
Здравствуйте, задал вопрос по чисмету вот тут http://www.cyberforum.ru/numerical-methods/thread1529078.html#post8064137 Не знаю,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
GetVariable
163 / 119 / 5
Регистрация: 17.03.2013
Сообщений: 283
10.04.2013, 18:42     Цикл(Доработать прогу для решения квадратных уравнений) #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# include <iostream>
# include <string>
# include <vector>
# include <algorithm>
# include <cmath>
# include <windows.h>
 
using namespace std;
 
int main()
{
 
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
    cout <<"Введите коэфициенты a,b,c" <<endl ;
 
    double a, b, c ;
    do
    {
    cin >> a >> b >> c;
 
        double d=(b*b)-(4*(a*c));
        double f=sqrt(d);
        if (d>0) cout << "x1 = " << (-b + f)/2/a <<" x2 = " << ( -b - f)/2/a <<endl;
        if (d==0) cout <<"x = " << -b/2/a <<endl ;
        if (d<0) cout <<"Дискриминант меньше нуля.Корней нет." <<endl;
 
    }
    while(true);
 
    system("pause");
    return 0;
}
yoghurt92
374 / 345 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
10.04.2013, 18:51     Цикл(Доработать прогу для решения квадратных уравнений) #3
Chernobyl,

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# include <iostream>
# include <string>
# include <vector>
# include <algorithm>
# include <cmath>
# include <windows.h>
 
using namespace std;
 
int main()
{
 
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
    cout <<"Введите коэфициенты a,b,c" <<endl ;
 
    int punkt;
    double a, b, c ;
    do
    {
        cin >> a >> b >> c;
 
        double d=(b*b)-(4*(a*c));
        double f=sqrt(d);
        if (d>0) cout << "x1 = " << (-b + f)/2/a <<" x2 = " << ( -b - f)/2/a <<endl;
        if (d==0) cout <<"x = " << -b/2/a <<endl ;
        if (d<0) cout <<"Дискриминант меньше нуля.Корней нет." <<endl;
 
        cout <<"Вы хотите продолжить (1 - да, 2 нет)? ";
            cin >> punkt;
 
    }
    while(punkt != 2);
 
    system("pause");
    return 0;
}
stima
449 / 298 / 20
Регистрация: 22.03.2011
Сообщений: 965
Завершенные тесты: 2
10.04.2013, 18:56     Цикл(Доработать прогу для решения квадратных уравнений) #4
Никак. Только через infinity loop. Можно только причесать.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <cmath>
#include <iostream>
 
int main()
{
    for ( ;; )
      {
      double a, b, c;
      std::cin >> a >> b >> c;
 
      double d = (b * b) - 4 * a * c;
      double f = sqrt(d);
 
      if (d > 0)
        std::cout << "x1 = " << (-b + f) / (2 * a) << ", x2 = " << (-b - f) / (2 * a) << std::endl;
      else if (d == 0)
        std::cout << "x = " << -b / (2 * a) << std::endl;
      else
        std::cout << "Error" << std::endl;
 
      char exit;
      std::cout << "For exit type e" << std::endl;
      std::cin >> exit;
 
      if (exit == 'e')
        break;
 
      std::cin.unget(); //return previous simbol to stream
      }
 
    getchar();
    getchar();
 
    return 0;
 
}
Yandex
Объявления
10.04.2013, 18:56     Цикл(Доработать прогу для решения квадратных уравнений)
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru