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

[страуструп] задача на нахождение корней кв ур-я , проверьте пожалуйста - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ С++ (одномерний массив) http://www.cyberforum.ru/cpp-beginners/thread1031043.html
Дано одномерний массив который состоит из 20 элементов. Определить сумму 5 последних элементов массива.
C++ Вывод количества заданной буквы в файле Нужно посчитать количество букв в файле. Не считает. #include <iostream> #include <conio.h> #include <cstring> #include <stdio.h> #include <fstream> // ôàéëîâûé ââîä âûâîä íà ïîòîê using namespace std; http://www.cyberforum.ru/cpp-beginners/thread1031037.html
Перевод дабла из строки C++
Всем привет. Есть проблема - нужно из строки, начиная с позиции l, вытянуть число с плавающей точкой, при этом нужно узнать, сколько символов из этой строки перевелось. Например, строка: А234B.02 и l = 6, то должно получиться число "0.02" и его длина 3. Как осуществить это и обойтись без самостоятельного посимвольного вытягивания? UPD Длина числа - кол-во символов, которые мы вытянули из...
программный комплекс для решения систем линейных алгебраических уравнений C++
помогите!!!! Нужно создать калькулятор для систем линейных уравнений Задача: Написать библиотеку математических функций, позволяющих решать систему линейных уравнений из трех уравнений с тремя неизвестными МОЖЕТ У КОГО ЕСТЬ ЧТО ТО ПОДОБНОЕ ,БУДУ БЛАГОДАРЕН ЗА ПОМОЩЬ
C++ Посчитать сумму элементов главной диагонали матрицы http://www.cyberforum.ru/cpp-beginners/thread1031031.html
Почему когда я хочу посчитать сумму элементов главной диагонали матрицы 4*4 , ответ неправильный? {for (int i = 0; i < 4; i++){ for (int j=0; j<4; j++){ if(i=j) s+=A;}}
C++ Создать список отделов и вычислить общую сумму заработной платы сотрудников каждого отдела помогите пожалуйста решить задачу! срочно нужно! в с++. 7. В файле задан список сотрудников с указанием фамилии, отдела, названия месяца и заработанной сотрудником за этот месяц заработной платы. Создать список отделов и вычислить общую сумму заработной платы сотрудников каждого отдела. подробнее

Показать сообщение отдельно
tyan
0 / 0 / 0
Регистрация: 03.06.2012
Сообщений: 14

[страуструп] задача на нахождение корней кв ур-я , проверьте пожалуйста - C++

06.12.2013, 17:03. Просмотров 389. Ответов 4
Метки (Все метки)

Здравствуйте, в книге Страуструпа "Основы и принципы программирования" есть задача на нахождение корней кв. ур-я, я её написал, но терминал выдает такое - http://puu.sh/5DQV0.png , я так понимаю , что проблема с типами double/int , может кто сказать что не так?

директива "std_lib_facilities.h" дана из книги, функция "keep_window_open" оттуда же

вот код:

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
#include "../../std_lib_facilities.h"
 
int a;
int b;
int c;
double D;
 
 
// Нахождение дискриминанта
double reshaem_D()
{
    return D=(b^2)-(4*a*c);
}
 
// Нахождение 1го корня для дискриминанта > 0
double reshaem_D_polozh_1(double x)
{
    return x=((-b) + sqrt((b^2)-(4*a*a))) / (2*a);
}
 
// Нахождение 2го корня для дискриминанта > 0
double reshaem_D_polozh_2(double x)
{
    return x=((-b) - sqrt((b^2)-(4*a*a))) / (2*a);
}
 
// Нахождение корня для дискриминанта = 0
double reshaem_D_nol(double x)
{
    return x=(-b)/(2*a);
}
 
 
 
int main()
{
    int a = 0;
    int b = 0;
    int c = 0;
    double x = 0;
    double D = 0;
 
    //Вводим a,b,c
    cout << "Uravnenie imeet vid: a*x^2 + b*x + c = 0, vvedite a,b,c dlya resheniya uravneniya" << endl;
    cout << "Vvedite a= "; cin>> a; cout << "Vvedite b= ";cin>> b; cout << "Vvedite c= ";cin>> c;
 
    //Вычисляем дискриминант 
    reshaem_D();
 
    //Проверяем дискриминант, D>0;D<0;D=0
    if (reshaem_D>0)
    {
        reshaem_D_polozh_1(x);
        reshaem_D_polozh_2(x);
        cout << "Korni uravneniya x1= " << reshaem_D_polozh_1(x) << " x2= " << reshaem_D_polozh_2(x) << endl;
    }
    else if (reshaem_D<0)
    {
        cout << "Net reshenii" << endl;
    }
    else if (reshaem_D==0)
    {
        reshaem_D_nol(x);
        cout << "Korni uravneniya x= " << reshaem_D_nol << endl;
    }
 
    keep_window_open();
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 09:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru