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

Даны три квадратных уравнения (ax^2+bx+c=0 , bx^2+ax+c=0 , cx^2+ax+b=0). Определить процедуру, позволяющую распознавать наличие вещественных корней в - C++

Войти
Регистрация
Восстановить пароль
 
Mind_Hunter
2 / 0 / 1
Регистрация: 25.12.2011
Сообщений: 120
29.05.2012, 11:53     Даны три квадратных уравнения (ax^2+bx+c=0 , bx^2+ax+c=0 , cx^2+ax+b=0). Определить процедуру, позволяющую распознавать наличие вещественных корней в #1
Даны три квадратных уравнения (ax^2+bx+c=0 , bx^2+ax+c=0 , cx^2+ax+b=0). Определить процедуру, позволяющую распознавать наличие вещественных корней в квадратном уравнении. Знаю, что эта задача уже на Паскале есть на форуме, но нам её на С++ задали, а я вообще не догоняю, как проверить тип числа. Да и как задачу саму решить тоже, нам С++ не преподавали нифига, а теперь на практике лютуют
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.05.2012, 11:53     Даны три квадратных уравнения (ax^2+bx+c=0 , bx^2+ax+c=0 , cx^2+ax+b=0). Определить процедуру, позволяющую распознавать наличие вещественных корней в
Посмотрите здесь:

C++ Составить программу с использованием условных операторов. Даны три вещественных числа. Вычислить max(x+y+z, xyz).
C++ Условные операторы: даны три вещественных числа, вычислить max(x+y+z, xyz)
C++ Определить количество корней уравнения х2 = A + 1
C++ Даны три квадратных уравнения (ax^2+bx+c=0 , bx^2+ax+c=0 , cx^2+ax+b=0)
C++ Дано натуральное число n. Выяснить, является ли оно полным квадратом.Определить функ-цию, позволяющую распознавать полные квадраты
C++ Даны три вещественных числа. Возвести в квадрат те из них, значения которых неотрицательны
C++ Определить процедуру, позволяющую распознавать полные квадраты
Определить функцию, позволяющую распознавать наличие вещественных корней в квадратном уравнении C++
Определить функцию, позволяющую распознавать наличие вещественных корней в квадратном уравнении C++
C++ Определить процедуру, позволяющую распознавать простые числа
C++ Даны три вещественных числа. Выбрать те из них, которые принадлежат интервалу (1,3). (C++)
Даны три вещественных числа, вывести на экран те из них, которые не принадлежат заданному диапазону C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Andrey.K
 Аватар для Andrey.K
340 / 261 / 15
Регистрация: 14.11.2010
Сообщений: 480
29.05.2012, 12:11     Даны три квадратных уравнения (ax^2+bx+c=0 , bx^2+ax+c=0 , cx^2+ax+b=0). Определить процедуру, позволяющую распознавать наличие вещественных корней в #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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <iostream>
#include <conio.h>
#include <cmath>
using namespace std;
void Metod(double a1, double b1, double c1)
{
        int kol = 0;
        double D,D1,D2;
        double x1;
        double x2;
        D=pow(b1,2)-4*a1*c1;// ax^2+bx+c=0
        D1=pow(a1,2)-4*b1*c1;// bx^2+ax+c=0
        D2=pow(a1,2)-4*c1*b1;// cx^2+ax+b=0
            if (D >= 0)
            {
                x1 = (-b1 + sqrt(D)) / (2 * a1);
                x2 = (-b1 - sqrt(D)) / (2 * a1);
                if (x1 - (int)x1 != 0 || x2 - (int)x2 != 0)
                {
                    cout<<"Уравнение "<<a1<<"x^2+"<<b1<<"x+"<<c1<<" имеет вещественные корни"<<endl;
                    kol++;
                }
            }
            if (D1 >= 0)
            {
                x1 = (-a1 + sqrt(D)) / (2 * b1);
                x2 = (-a1 - sqrt(D)) / (2 * b1);
                if (x1 - (int)x1 != 0 || x2 - (int)x2 != 0)
                {
                    cout<<"Уравнение "<<b1<<"x^2+"<<a1<<"x+"<<c1<<" имеет вещественные корни"<<endl;
                    kol++;
                }
            }
            if (D2 >= 0)
            {
                x1 = (-a1 + sqrt(D)) / (2 * c1);
                x2 = (-a1 - sqrt(D)) / (2 * c1);
                if (x1 - (int)x1 != 0 || x2 - (int)x2 != 0)
                {
                    cout<<"Уравнение "<<c1<<"x^2+"<<a1<<"x+"<<b1<<" имеет вещественные корни"<<endl;
                    kol++;
                }
            }
}
int main()
{
    setlocale(LC_ALL, "rus");
    Metod(5,6,1);
    getch();
    return 0;
}
Catstail
Модератор
 Аватар для Catstail
21682 / 10406 / 1688
Регистрация: 12.02.2012
Сообщений: 17,340
29.05.2012, 12:23     Даны три квадратных уравнения (ax^2+bx+c=0 , bx^2+ax+c=0 , cx^2+ax+b=0). Определить процедуру, позволяющую распознавать наличие вещественных корней в #3
1) совершенно непонятно назначение вот этого:

C++
1
2
if (x1 - (int)x1 != 0 || x2 - (int)x2 != 0)
                {...
2) Зачем же трижды программировать одно и то же? А если бы уравнений было 1000?
Функция, возвращающая истину, если корни вещественны:

C++
1
2
3
4
5
6
7
8
9
10
11
12
int ChkRoot(double a, double b, double c) 
{
    double D=b*b-4.0*a*c;
 
    if (D >= 0)
      return 1;
    else
      return 0;
 
}
 
// эту функцию вызвать в main 3 раза...
Andrey.K
 Аватар для Andrey.K
340 / 261 / 15
Регистрация: 14.11.2010
Сообщений: 480
29.05.2012, 12:32     Даны три квадратных уравнения (ax^2+bx+c=0 , bx^2+ax+c=0 , cx^2+ax+b=0). Определить процедуру, позволяющую распознавать наличие вещественных корней в #4
Цитата Сообщение от Catstail Посмотреть сообщение
1) совершенно непонятно назначение вот этого:

C++
1
2
if (x1 - (int)x1 != 0 || x2 - (int)x2 != 0)
                {...
2) Зачем же трижды программировать одно и то же? А если бы уравнений было 1000?
Функция, возвращающая истину, если корни вещественны:

C++
1
2
3
4
5
6
7
8
9
10
11
12
int ChkRoot(double a, double b, double c) 
{
    double D=b*b-4.0*a*c;
 
    if (D >= 0)
      return 1;
    else
      return 0;
 
}
 
// эту функцию вызвать в main 3 раза...
С вами согласен, хотел просто наглядно ему показать. Можно убрать лишнее и просто вызывать функцию от разных значений.
Yandex
Объявления
29.05.2012, 12:32     Даны три квадратных уравнения (ax^2+bx+c=0 , bx^2+ax+c=0 , cx^2+ax+b=0). Определить процедуру, позволяющую распознавать наличие вещественных корней в
Ответ Создать тему
Опции темы

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