0 / 0 / 0
Регистрация: 29.03.2019
Сообщений: 6
1

Ошибка в коде

01.12.2019, 12:05. Показов 323. Ответов 1

Author24 — интернет-сервис помощи студентам
Почему при отрицательном или равном нулю дискриминанте код не выполеняется, и как это исправить?
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
#include <iostream>
#include <math.h>
 
using std::cout;
using std::cin;
using std::endl;
 
int main()
{
    float a, b, c, x1, x2, d;
    setlocale(LC_ALL, "Russian");
    cout << "Введите коэффициент a:\na = ";
    cin >> a;
    cout << "Введите коэффициент b:\nb = ";
    cin >> b;
    cout << "Введите коэффициент с:\nc = ";
    cin >> c;
    d = pow(b, 2) -4 * a * c;
    cout << "D = " << d << endl;
    if (d > 0) {
        x1 = (-b - sqrt(d)) / 2 * a;
        x2 = (-b + sqrt(d)) / 2 * a;
        cout << "x1 = " << x1 << "\nx2 = " << x2;
    }
    if (d = 0) {
        x1 = -b / 2 * a;
        cout << "x = " << x1;
    }
    if (d < 0) {
        cout << "Нет корней";
    }
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.12.2019, 12:05
Ответы с готовыми решениями:

Ошибка в коде (Ошибка сегментирования (core dumped)
Добрый день. Подскажите пожалуйста, где ошибка в коде? char ch; string s; ...

В чём ошибка.В коде там где коментарий там ошибка поучается.
#include &lt;iostream&gt; #include &lt;Windows.h&gt; using namespace std; class CMyString{ char *pStr;...

Ошибка в коде
Проверьте эту программу пожалуйста, вроде она не сложная, а я не могу найти ошибку вообще уже пол...

Ошибка в коде
класс big нужен для хранения чисел в двоичном виде #include &lt;iostream&gt; using namespace std; ...

1
Just Do It!
3837 / 2283 / 636
Регистрация: 23.09.2014
Сообщений: 7,051
Записей в блоге: 2
01.12.2019, 12:23 2
Цитата Сообщение от HAVINGTON Посмотреть сообщение
if (d = 0)
C++
1
if (d == 0)
а до отрицательного d просто не доходит. потому что он там всегда ноль!

Добавлено через 2 минуты
а чтобы доходил при такой ошибке нужно так
C++
1
2
3
4
5
6
7
8
9
10
11
12
    if (d > 0) {
        x1 = (-b - sqrt(d)) / 2 * a;
        x2 = (-b + sqrt(d)) / 2 * a;
        cout << "x1 = " << x1 << "\nx2 = " << x2;
    }
    else if (d < 0) {
        cout << "Нет корней";
    }
    else if (d = 0) { /// <<<--- Всё ещё НЕ исправлено!!!
        x1 = -b / 2 * a;
        cout << "x = " << x1;
    }
но лучше исправить
1
01.12.2019, 12:23
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.12.2019, 12:23
Помогаю со студенческими работами здесь

Ошибка в коде
Посмотрите код С++ пожалуйста выдаёт три ошибки: 157 1 C:\Users\Валера\Desktop\Безымянный1.cpp ...

Ошибка в коде
Помогите с ошибкой пожалуйста, компилю на линуксе, суть такова, изменение порядка строк в текстовом...

ошибка в коде
выдает ошибку в строке c getch #include &lt;iostream&gt; using namespace std; int main() { int...

Ошибка в коде
Задание такое: Даны мозаичные изображения замочной скважины и ключа. Пройдет ли ключ в скважину?...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru