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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
duden
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 42
#1

Для нахождения корней квадратного уравнения использовать функцию - C++

30.03.2010, 17:59. Просмотров 1256. Ответов 9
Метки нет (Все метки)

Даны вещественные числа a,b,c,d,e,f.Переменноый S присвоить значение 1,
если оба уравнения ах2 + bх + с = 0 и dx2 + ex + f = 0.для нахождения корней квадратного уравнения использовать функцию.

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.h>
#include<conio.h>
#include<math.h>
void math (int,int,int)
void main ()
{
clrscr ();
cout <<"Vvedite chisla";
int a,b,c,x1,x2;
a=b=c=x1=x2=0;
math (a,b,c);
cout <<"x1="<<x1<<endl<<"x2="<<endl;
getch();
}
void math (int a,int b,int c)
{
int d=0;
if(b%2==0)
d=(b/2)-a*c;
x1=((((b-b)-b)/2)-sqrt(d))/a;
x2=((((b-b)-b)/2+sqrt(d))/a;
else{
d=(b*b)-(a*c*4);
x1=((((b-b)-b)/2)-sqrt(d))/2*a;
x2=((((b-b)-b)/2+sqrt(d))/2*a;
}}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.03.2010, 17:59     Для нахождения корней квадратного уравнения использовать функцию
Посмотрите здесь:

Написать прогу для вычисления корней квадратного уравнения C++
Составить программу нахождения действительных корней квадратного уравнения C++
C++ Напишите функцию, 1.которая переворачивает строку 2.вычисления корней квадратного уравнения
писать функцию RootsCount(A, B, C) целого типа, определяющую количество корней квадратного уравнения A•x2 + B•x + C = 0 (A, B, C — вещественные параме C++
C++ Шаблон функции нахождения корней квадратного уравнения
C++ Составить программу для нахождения коэффициентов приведенного квадратного уравнения, корнями которого являются
C++ Написать функцию вычисления корней квадратного уравнения
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
neske
1466 / 833 / 69
Регистрация: 26.03.2010
Сообщений: 2,839
30.03.2010, 18:06     Для нахождения корней квадратного уравнения использовать функцию #2
C++
1
cout <<"Vvedite chisla";
Где cin << ?
duden
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 42
30.03.2010, 19:08  [ТС]     Для нахождения корней квадратного уравнения использовать функцию #3
не помогает

Добавлено через 22 секунды
#include<iostream.h>
#include<conio.h>
#include<math.h>
здесь чтото не то
neske
1466 / 833 / 69
Регистрация: 26.03.2010
Сообщений: 2,839
30.03.2010, 19:15     Для нахождения корней квадратного уравнения использовать функцию #4
Ты инициализируешь переменные:
C++
1
a=b=c=x1=x2=0;
Затем a,b,c - посылаешь в функцию math:
C++
1
math (a,b,c);
_____________________
C++
1
2
if(b%2==0)
d=(b/2)-a*c;
В чем тогда смысл этого? При условии что a=b=c=0.
duden
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 42
30.03.2010, 19:27  [ТС]     Для нахождения корней квадратного уравнения использовать функцию #5
не помогло
neske
1466 / 833 / 69
Регистрация: 26.03.2010
Сообщений: 2,839
30.03.2010, 19:31     Для нахождения корней квадратного уравнения использовать функцию #6
Если никто не опередит, к вечеру напишу.
duden
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 42
30.03.2010, 22:21  [ТС]     Для нахождения корней квадратного уравнения использовать функцию #7
#include<stdio.h>
#include<conio.h>
#include<math.h>

здесь ошыбка пишет - неспособный открыться включают файл
M128K145
Эксперт С++
8282 / 3501 / 143
Регистрация: 03.07.2009
Сообщений: 10,707
31.03.2010, 00:27     Для нахождения корней квадратного уравнения использовать функцию #8
duden, хотелось бы увидеть текст ошибки на оригинальном языке
duden
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 42
31.03.2010, 08:03  [ТС]     Для нахождения корней квадратного уравнения использовать функцию #9
пишет unable to open include file

здесь - #include<stdio.h>
#include<conio.h>
#include<math.h>
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.03.2010, 08:15     Для нахождения корней квадратного уравнения использовать функцию
Еще ссылки по теме:

Вычисление корней квадратного уравнения C++
Написать программу нахождения корней квадратного уравнения C++
Реализовать функцию, определяющую количество корней квадратного уравнения C++
Функция нахождения комплексных корней квадратного уравнения C++
Решить систему с помощью функции нахождения корней квадратного уравнения C++

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

Или воспользуйтесь поиском по форуму:
Bloodykeeper
This party getting crazy!
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
31.03.2010, 08:15     Для нахождения корней квадратного уравнения использовать функцию #10
У меня была вот такая задачка:
Даны вещественные числа а, b, с, d, e, f. Переменной s присвоить значение 1, если оба уравнения ах2 + bх + с = 0 и dx2 + ex + f = 0 имеют вещественные корни и при этом все корни первого уравнения лежат между корнями второго уравнения. В противном случае переменной s присвоить значение 0. (Для нахождения корней квадратного уравнения использовать функцию.)

Это почти такая же как и у тебя. Вот её решение:
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
 
float Discr(float a, float b, float c)
{
        return (float)(b*b-4*a*c);
}
 
float Quadro(float a, float b, float D, int flag)
{
        if(flag==0) return (float)((-b+sqrt(D))/(2*a));
        if(flag==1) return (float)((-b-sqrt(D))/(2*a));
        return 0;
}
 
void main()
{
        float a,b,c,d,e,f,D,D2,x1,x2,y1,y2;
        int s=0,f1=0,f2=0; //f1,f2 - признаки вещественности корней
        do
        {
                printf("Vvedite a(ne ravnoe 0):");
                scanf("%f",&a);
                if(a==0) printf("\nError! Retry!\n");
        }
        while(a==0);
        printf("\nVvedite b:");
        scanf("%f",&b);
        printf("\nVvedite c:");
        scanf("%f",&c);
        do
        {
                printf("\nVvedite d(ne ravnoe 0):");
                scanf("%f",&d);
                if(d==0) printf("\nError! Retry!\n");
        }
        while(a==0);
        printf("\nVvedite e:");
        scanf("%f",&e);
        printf("\nVvedite f:");
        scanf("%f",&f);
        D=Discr(a,b,c);
        if(D<0)
        {
                printf("D pervogo uravneniya <0; Net reshenii!");
                exit(1);
                getch();
        }
        if(D==0)
        {
                x1=x2=Quadro(a,b,D,0);
                if((int)x1!=x1) f1=1; //если они вещественные, то ставим флажок, т.к. x1 и х2 равны, то проверять можно только один
        }
        if(D>0)
        {
                x1=Quadro(a,b,D,0);
                x2=Quadro(a,b,D,1);
                if(((int)x1!=x1)&&((int)x2!=x2)) f1=1; // тут проверять надо оба значения
        }
        D2=Discr(d,e,f);
        if(D2<0)
        {
                printf("D vtorogo uravneniya <0; Net reshenii!");
                getch();
                exit(1);
        }
        if(D2==0)
        {
                y1=y2=Quadro(d,e,D2,0);
                printf("\nNe podhodit po usloviyu"); // не подходит, потому что между ними должны лежать другие корни
                exit(1);
                getch();
        }
        if(D>0)
        {
                y1=Quadro(d,e,D2,0);
                y2=Quadro(d,e,D2,1);
                if(((int)y1!=y1)&&((int)y2!=y2)) f2=1; // анаолгично, но теперь ставим второй флажок
        }
        if(y1>y2)
        {
                float temp=y2;
                y2=y1;
                y1=temp; // теперь в у1 всегда меньший корень
        }
        printf("\nKorni pervogo uravneniya:\tx1=%f\tx2=%f\nKorni vtorogo uravneniya:\tx1=%f\tx2=%f\n",x1,x2,y1,y2);
        if((x1>y1)&&(x1<y2)&&(x2>y1)&&(x2<y2)&&(f1)&&(f2)) //все удовлетворяет условию
        s=1;
        else
        {
                printf("\nUsloviya ne vypolneny!");
                if((x1<y1)||(x1>y2)||(x2<y1)||(x2>y2)) printf("\nKorni pervogo uravneniya ne lezhat mezhdu kornyami vtorogo uravneniya");
                if((!f1)||(!f2)) printf("\nKorni ne veshsestvennye");
        }
        printf("\ns=%d",s);
        getch();
}
Немного измени и будет твоя)
Yandex
Объявления
31.03.2010, 08:15     Для нахождения корней квадратного уравнения использовать функцию
Ответ Создать тему
Опции темы

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