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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.91
dimiby
5 / 5 / 1
Регистрация: 22.06.2010
Сообщений: 320
#1

Квадратное уравнение в с - C++

23.07.2010, 10:29. Просмотров 1409. Ответов 10
Метки нет (Все метки)

Здравствуйте. Надо найти корни квадратного уравнения или показать что один корень или нет корней. Нужно сделать в с, а не в с++. Please, help
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.07.2010, 10:29
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Квадратное уравнение в с (C++):

Создать производные классы линейное уравнение и квадратное уравнение, в которых данная функция переопределена - C++
Создать абстрактный базовый класс уравнение с виртуальной функцией - корни уравнения. Создать производные классы линейное уравнение и...

Квадратное уравнение - C++
ax^2+bx+c=o в c\c++

Квадратное уравнение - C++
Нужно написать программу: вывести три целых числа, которые есть коэффициентами квадратного уравнения, найти корни квадратного уравнения. ...

Квадратное уравнение - C++
Здравствуйте! Это код квадратного уравнение. Компилируется все нормально. Но программа не выполняет поиск корней, если D>0 и D=0....

Квадратное уравнение - C++
Привет всем, застрял, помогите :) Ввести три вещественных числа a, b, c. Решить квадратное уравнение ax2 +bx+c=0. Вывести информацию...

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

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
PointsEqual
ниначмуроФ
834 / 518 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
23.07.2010, 10:43 #2
пользуйтесь поиском..
dimiby
5 / 5 / 1
Регистрация: 22.06.2010
Сообщений: 320
23.07.2010, 10:50  [ТС] #3
искал, в с++ только нашел.

Добавлено через 26 секунд
Помогите, пожалуйста.
PointsEqual
ниначмуроФ
834 / 518 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
23.07.2010, 10:54 #4
а тут смотрели? http://www.cyberforum.ru/cpp-beginne...ead101663.html
dimiby
5 / 5 / 1
Регистрация: 22.06.2010
Сообщений: 320
23.07.2010, 11:09  [ТС] #5
смотрел, по кернигану си учу, ничего там не понятно в книжке. мне без вещественных корней и попроще как то, я в паскале делал, хочу просто сравнить с си.

Добавлено через 2 минуты
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
begin
writeln('wwedite chisla');
readln(a,b,c);
if a=0
then if b=0
then writeln('korney net');
else writeln('odin koren x=', -c/b:6:3);
else begin
d:=b*b+4*a*c;
a:=2*a;
if d<0
then writeln('korney net');
if d:=0 then
writeln('korni rawni', -b/a:6:3);
writeln('imeet odno reshenie');
else begin
d:=sqrt(d);
writeln('x1=',(-b+d)/a:6:3);
writeln('x2=',(-b-d)/a:6:3);
writeln('imeet dwa resheniya');
end;
end;
end.
Это в паскале, как аналогичное в си сделать?
Qwerty_coder
29 / 29 / 2
Регистрация: 14.12.2009
Сообщений: 79
23.07.2010, 13:40 #6
dimiby, хоть я не знаю паскаля, но перевел твой код на c++
вроде работает

Добавлено через 19 минут
и в твоем паскальном коде вроде бы надо поставить знак минуса:
d:=b*b-4*a*c;

Добавлено через 28 минут
как бы final...

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 <conio.h>
#include <math.h>
 
using namespace std;
 
int _getch();
 
int main()
{
    double a, b, c, d;
    cout << "Wwedite chisla: ";
    cin >> a;
    cin >> b;
    cin >> c;
    if (a == 0)
    {
        if (b == 0)
            cout << "Korney net!" << endl;
            else
            cout << "Odin koren x = " << -c / b << endl;
    }
    else
    {
        d = pow(b, 2) - 4 * a * c;
        a = 2 * a;
            if (d < 0) cout << "Korney net!" << endl;
            if (d == 0) cout << "Korni rawni " << -b / a << endl << "imeet odno reshenie" << endl;
        else
        {
            d = sqrt(d);
                cout << "x1 = " << (-b + d) / a << endl;
                cout << "x2 = " << (-b - d) / a << endl;
                cout << "imeet dwa resheniya" << endl;
        }
    }
    _getch();
}
dimiby
5 / 5 / 1
Регистрация: 22.06.2010
Сообщений: 320
23.07.2010, 13:47  [ТС] #7
Спасибо большое, так это в с или в с++ написано?
Xensis
5 / 5 / 0
Регистрация: 15.07.2010
Сообщений: 57
23.07.2010, 13:52 #8
в c++ написано
Qwerty_coder
29 / 29 / 2
Регистрация: 14.12.2009
Сообщений: 79
23.07.2010, 13:56 #9
dimiby,

Окончательный код. Проверил все случаи. Теперь без багов
Да, писал на c++
Если нужно в C, то, скорее всего, надо просто поправить вывод - вместо cin, cout писать scanf и printf, вроде бы... Хотя я основ C не знаю. Сразу же начал с изучения C++

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 <conio.h>
#include <math.h>
 
using namespace std;
 
int _getch();
 
int main()
{
    double a, b, c, d;
    cout << "Wwedite chisla: ";
    cin >> a;
    cin >> b;
    cin >> c;
    if (a == 0)
    {
        if (b == 0)
            cout << "Korney net!" << endl;
            else
            cout << "Odin koren x = " << -c / b << endl;
    }
    else
    {
        d = pow(b, 2) - 4 * a * c;
        a = 2 * a;
            if (d < 0) cout << "Korney net!" << endl;
            if (d == 0) cout << "Korni rawni " << -b / a << endl << "imeet odno reshenie" << endl;
        if (d > 0)
        {
            d = sqrt(d);
                cout << "x1 = " << (-b + d) / a << endl;
                cout << "x2 = " << (-b - d) / a << endl;
                cout << "imeet dwa resheniya" << endl;
        }
    }
    _getch();
}
Somebody
2788 / 1602 / 145
Регистрация: 03.12.2007
Сообщений: 4,193
Завершенные тесты: 1
23.07.2010, 14:19 #10
Если уж с проверкой на a == 0, то тут ещё не хватает случая, когда a, b, c все три равны нулю: решение - все действительные числа.
Nameless One
Эксперт С++
5771 / 3420 / 255
Регистрация: 08.02.2010
Сообщений: 7,447
23.07.2010, 19:16 #11
Цитата Сообщение от Somebody Посмотреть сообщение
Если уж с проверкой на a == 0, то тут ещё не хватает случая, когда a, b, c все три равны нулю: решение - все действительные числа.
Только вот уравнение является квадратным только тогда, когда главный коэффициент (т.е. коэффициент при http://www.cyberforum.ru/cgi-bin/latex.cgi?{x}^{2}) не равен нулю, так что Ваше замечание неуместно.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.07.2010, 19:16
Привет! Вот еще темы с ответами:

Квадратное уравнение - C++
Решил немного попрактиковаться и написать програмку для решения квадратных уравнений. И у меня вопрос - поддерживает ли С++ комплексные...

Квадратное уравнение - C++
Хотел написать программу которая решает квадратное уравнение.Выдает две ошибки. #include &quot;stdafx.h&quot; #include &quot;iostream&quot; #include...

квадратное уравнение - C++
Обработка исключительных ситуаций Функция вычисляет корень квадратного уравнения ax2+bx+c=0

Квадратное уравнение - C++
Пишет ошибку &quot;тип &quot;double&quot; не требуется&quot; и &quot;d: необъявленный идентификатор&quot;, помогите разобраться плз #include &quot;stdafx.h&quot; #include...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
23.07.2010, 19:16
Ответ Создать тему
Опции темы

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