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

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

Войти
Регистрация
Восстановить пароль
 
Mind_Hunter
2 / 0 / 1
Регистрация: 25.12.2011
Сообщений: 120
#1

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

29.05.2012, 11:53. Просмотров 1028. Ответов 3
Метки нет (Все метки)

Даны три квадратных уравнения (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++
Даны три квадратных уравнения ах^2 + bх + с = 0, bх^2 + ах + с = 0, сх^2 + ах + b = 0. Сколько из них имеют вещественные корни?...

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

Определить процедуру, позволяющую распознавать простые числа - C++
Дано четное число n>2; проверить для этого числа гипотенузу Гольдбаха. Эта гипотенуза заключается в том, что каждое четное число n, ...

Определить процедуру, позволяющую распознавать полные квадраты - C++
Дано натуральное число n. Среди чисел 1,2,...,n найти все те, которые можно представить в виде суммы квадратов двух натуральных чисел....

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

Дано натуральное число n. Выяснить, является ли оно полным квадратом.Определить функ-цию, позволяющую распознавать полные квадраты - C++
Вот пока что сделал, дальше домозговать не могу. #include "stdafx.h" #include "math.h" #include <iostream> using namespace std; ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Andrey.K
342 / 263 / 15
Регистрация: 14.11.2010
Сообщений: 482
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
Модератор
22514 / 10919 / 1774
Регистрация: 12.02.2012
Сообщений: 18,067
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 раза...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.05.2012, 12:32     Даны три квадратных уравнения (ax^2+bx+c=0 , bx^2+ax+c=0 , cx^2+ax+b=0). Определить процедуру, позволяющую распознавать наличие вещественных корней в
Еще ссылки по теме:

Условные операторы: даны три вещественных числа, вычислить max(x+y+z, xyz) - C++
Буду благодарен( Составить программу с использованием условных операторов. Даны три вещественных числа. Вычислить max(x+y+z, xyz).

Даны три вещественных числа. Выбрать те из них, которые принадлежат интервалу (1,3). (C++) - C++
Даны три вещественных числа. Выбрать те из них, которые принадлежат интервалу (1,3). Сделать нужно на С++. Буду очень признателен!!!...

Даны три вещественных числа. Возвести в квадрат те из них, значения которых неотрицательны - C++
int x,s; if (s&gt;=0) {x=s*s;}; Почему ответ (x) всегда равен 0?

Даны три вещественных числа, вывести на экран те из них, которые не принадлежат заданному диапазону - C++
Даны три вещественных числа, вывести на экран те из них, которые не принадлежат диапазону (-3,8; 1,8). #include &quot;stdafx.h&quot; #include...

Составить программу с использованием условных операторов. Даны три вещественных числа. Вычислить max(x+y+z, xyz). - C++
Составить программу с использованием условных операторов. Даны три вещественных числа. Вычислить max(x+y+z, xyz).

Определить количество корней уравнения х2 = A + 1 - C++
Написать программу, которая по заданному значению А определяет количество корней уравнения х2 = A + 1 и выводит значения корней вместе с...


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

Или воспользуйтесь поиском по форуму:
Andrey.K
342 / 263 / 15
Регистрация: 14.11.2010
Сообщений: 482
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). Определить процедуру, позволяющую распознавать наличие вещественных корней в
Ответ Создать тему
Опции темы

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