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

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

Войти
Регистрация
Восстановить пароль
 
ProFiLeR
47 / 5 / 0
Регистрация: 06.04.2010
Сообщений: 39
#1

Ошибка в коде программы для кв. уравнений - C++

07.04.2010, 18:37. Просмотров 728. Ответов 10
Метки нет (Все метки)

вопрос такой почему у меня все время ошибки в этом коде (Квадратное уравнение)
Пишу в этот раздел тк я в C++ два дня
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
int AA BB CC DD X1 X2
using namespace std;
int main()
{
std::cout<<"A = "; //На экран выводится 'X = '
std::cin>>AA; //вводим с клавиатуры число, например: 5
std::cout<<"B = "; //На экран выводится 'Y = '
std::cin>>BB; //вводим с клавиатуры число, например: 8
std::cout<<"C = "; //На экран выводится 'Y = '
std::cin>>CC; //вводим с клавиатуры число, например: 8
DD = BB^2 - 4*AA1*CC ;
X1 = -(BB) - sqrt(double(DD) / 2*AA
X2 = -(BB) + sqrt(double(DD) / 2*AA
 
 
std::cout<<"X1 = "<<X1<<std::endl;
std::cout<<"X2 = "<<X2<<std::endl;
//На экран монитора выводится сообщение 'x + y = 13'
 
_getch(); //Экран не закрывается, пока не нажата любая клавиша
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2010, 18:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка в коде программы для кв. уравнений (C++):

Ошибка в коде программы - C++
Заданаие такое: Дано натуральное число n (n&lt;9999). Определить, является ли это число палиндромом (перевертышем) с учетом четырех цифр ...

Ошибка в коде программы. - C++
Не инциализируется подключенный файл &lt;alloс.h&gt;.Это ведь стандартная библеотека С. Среда Vusial Studio 2008. #include &lt;stdio.h&gt; ...

Ошибка в коде программы - C++
Всем привет! Уважаемые, помогите разобраться с проблемой, есть программа, которая должна считать периметр треугольника по его сторонам,...

Ошибка в коде программы - C++
Не могу найти ошибку в коде: #include &quot;stdafx.h&quot; #include &lt;iostream&gt; using namespace std; int main() { int *pint = 0; ...

Ошибка библиотеки в коде программы?:) - C++
Всем привет. Вот этот код компилируется без ошибок и все работает #include &lt;windows.h&gt; #include &lt;gl\GLU.h&gt; #include &lt;gl\GL.h&gt; ...

Ошибка в коде программы(Классы) - C++
Собственно вод код #include &quot;stdafx.h&quot; #include &lt;conio.h&gt; #include &lt;string.h&gt; #include &lt;iostream&gt; using namespace std; ...

10
schdub
2955 / 1300 / 239
Регистрация: 19.01.2009
Сообщений: 3,413
Завершенные тесты: 1
07.04.2010, 18:43 #2
стр. 2 должно быть
C++
1
int AA, BB, CC, DD, X1, X2;
Добавлено через 2 минуты
стр.12
BB^2
в С++ такого оператора нет используй
C++
1
BB*BB
например
0
M128K145
Эксперт С++
8293 / 3513 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
07.04.2010, 18:49 #3
C++
1
using namespace std;
и
C++
1
2
std::cout
std::cin
избыточно. Удалите строку
C++
1
using namespace std;
0
schdub
2955 / 1300 / 239
Регистрация: 19.01.2009
Сообщений: 3,413
Завершенные тесты: 1
07.04.2010, 18:52 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <math.h>
#include <conio.h>
int AA, BB, CC;
double DD, X1, X2;
using namespace std;
int main()
{
    cout<<"A = "; //На экран выводится 'X = '
    cin>>AA; //вводим с клавиатуры число, например: 5
    cout<<"B = "; //На экран выводится 'Y = '
    cin>>BB; //вводим с клавиатуры число, например: 8
    cout<<"C = "; //На экран выводится 'Y = '
    cin>>CC; //вводим с клавиатуры число, например: 8
    DD = BB*BB - 4*AA*CC;
    X1 = (-(BB) - sqrt(DD)) / (2*AA);
    X2 = (-(BB) + sqrt(DD)) / (2*AA);
    cout<<"X1 = "<<X1<<endl;
    cout<<"X2 = "<<X2<<endl;
    //На экран монитора выводится сообщение 'x + y = 13'
    getch(); //Экран не закрывается, пока не нажата любая клавиша
    return 0;
}
Добавлено через 51 секунду
PS: под рукой нет компилера, но должно все хотябы компилиться, имхо
0
alex_x_x
бжни
2449 / 1654 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
07.04.2010, 19:08 #5
Цитата Сообщение от Oleg Посмотреть сообщение
PS: под рукой нет компилера, но должно все хотябы компилиться, имхо
http://codepad.org/
0
ProFiLeR
47 / 5 / 0
Регистрация: 06.04.2010
Сообщений: 39
07.04.2010, 19:25  [ТС] #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
int AA, BB, CC, DD, X1, X2;
int main()
{
std::cout<<"A = "; //На экран выводится 'X = '
std::cin>>AA; //вводим с клавиатуры число, например: 5
std::cout<<"B = "; //На экран выводится 'Y = '
std::cin>>BB; //вводим с клавиатуры число, например: 8
std::cout<<"C = "; //На экран выводится 'Y = '
std::cin>>CC; //вводим с клавиатуры число, например: 8
DD = BB*BB - 4*AA*CC ;
X1 = -(BB) - sqrt(double(DD)) / 2*AA;
X2 = -(BB) + sqrt(double(DD)) / 2*AA;
 
 
std::cout<<"X1 = "<<X1<<std::endl;
std::cout<<"X2 = "<<X2<<std::endl;
}
вот ошибки но что они означают
C++
1
2
3
4
5
Output:
1.cc1plus: warnings being treated as errors
2.In function 'int main()':
3.Line 12: warning: converting to 'int' from 'double'
4.Line 13: warning: converting to 'int' from 'double'
0
alex_x_x
бжни
2449 / 1654 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
07.04.2010, 19:27 #7
это не ошибки, это warning, объяви все переменные как double, иначе будет теряться много много знаков
0
ProFiLeR
47 / 5 / 0
Регистрация: 06.04.2010
Сообщений: 39
07.04.2010, 22:21  [ТС] #8
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
#include <iostream>
int AA, BB, CC, DD, X1, X2;
int main()
{
double AA;
double BB;
double CC;
double DD;
double X1;
double X2;
std::cout<<"A = "; //На экран выводится 'X = '
std::cin>>AA; //вводим с клавиатуры число, например: 5
std::cout<<"B = "; //На экран выводится 'Y = '
std::cin>>BB; //вводим с клавиатуры число, например: 8
std::cout<<"C = "; //На экран выводится 'Y = '
std::cin>>CC; //вводим с клавиатуры число, например: 8
DD = BB*BB - 4*AA*CC ;
X1 = -(BB) - sqrt(DD) / 2*AA;
X2 = -(BB) + sqrt(DD) / 2*AA;
 
 
std::cout<<"X1 = "<<X1<<std::endl;
std::cout<<"X2 = "<<X2<<std::endl;
}
че за гон в онлайн компиляторе пишет
C++
1
2
3
Output:
1.A = B = C = X1 = -4.94695e-270
2.X2 = -4.94695e-270
а в моем Code::Blocks 8.02
C++
1
18: error: `sqrt' was not declared in this scope
0
alex_x_x
бжни
2449 / 1654 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
07.04.2010, 22:26 #9
#include <stdlib.h> на что
0
ProFiLeR
47 / 5 / 0
Регистрация: 06.04.2010
Сообщений: 39
08.04.2010, 00:17  [ТС] #10
люди короче я переписал скрипт заново но вот проблема второй корениь не высчитывается из за того что он округляет результат
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
#include <iostream>
#include <windows.h>
#include <cstdlib>
#include <iostream>
#include <cmath>
using namespace std;
int AA, BB, CC, DD, X1, X2, VID, QDD;
int main()
{
 
std::cout<<"‚ўҐ¤ЁвҐ Є*Є®© вЁЇ Єў*¤а*в*®Ј® га*ў*Ґ*Ёп ўл ўЇЁблў*ҐвҐ\n1)Љў*¤а*в*®Ґ га*ў*Ґ*ЁҐ\n2)ЃЁЄў*¤а*в*®Ґ га*ў*Ґ*ЁҐ\n‚л ўлЎЁа*ҐвҐ: ";
std::cin>>VID;
      if (VID == 1) {
        std::cout<<"‚ўҐ¤ЁвҐ A: ";
        std::cin>>AA;
        std::cout<<"‚ўҐ¤ЁвҐ B: ";
        std::cin>>BB;
        std::cout<<"‚ўҐ¤ЁвҐ C: ";
        std::cin>>CC;
        DD=(BB*BB)-(4*AA*CC);
        QDD=sqrt(DD);
      }
      if (VID == 2) {
        std::cout<<"‚ўҐ¤ЁвҐ A: ";
        std::cin>>AA;
        std::cout<<"‚ўҐ¤ЁвҐ B: ";
        std::cin>>BB;
        std::cout<<"‚ўҐ¤ЁвҐ C: ";
        std::cin>>CC;
        DD=(BB*BB)-(4*AA*CC);
        QDD=sqrt(DD);
      }
      std::cout<<"-----------------------------------------"<<std::endl;
        if (DD > 0 && VID == 1) {
            X1 = ( -(BB) - QDD ) / ( 2 * AA );
            X2 = ( -(BB) + QDD ) / ( 2 * AA );
                std::cout<<"ЋвўҐв: "<<std::endl;
                std::cout<<"X1="<<X1<<","<<std::endl;
                std::cout<<"X2="<<X2<<"."<<std::endl;
        }
        if (DD == 0 && VID == 1) {
            X1 = ( -(BB) - QDD ) / ( 2 * AA );
                std::cout<<"ЋвўҐв: "<<std::endl;
                std::cout<<"X="<<X1<<"."<<std::endl;
        }
        if (DD < 0 && VID == 1) {
                std::cout<<"Љ®а*Ґ© *Ґв.";
        }
 
 
    system("PAUSE");
}
Иероглифы это dos для того чтобы был русский в консоле
0
alex_x_x
бжни
2449 / 1654 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
08.04.2010, 00:34 #11
1. используйте setlocale
2. это не скрипт
3. корни извлекаются до проверки отрицательности детерминанта
0
08.04.2010, 00:34
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.04.2010, 00:34
Привет! Вот еще темы с ответами:

Ошибка в коде программы новичка - C++
Всем доброй ночи. Помогите найти ошибку в программе. Задали сделать многофайловый проект. Моя первая работа в языке С++, поэтому не...

Ошибка в коде, при разбивании программы на 3 файла. (<<) - C++
Здравствуйте, вот код программы, после разбивания её на 3 файла перестают работать операторы &lt;&lt; &gt;&gt;. Кто знает, как можно исправить эту...

Ошибка в коде программы. conversion from 'double' to 'int', possible loss of data, error C2018: unknown charact - C++
#include &lt;iostream.h&gt; int add3(int, int, int); double average(int); void main() { int score_l, score_2, score_3, sum; ...

Не могу разобраться в коде программы для заполнения массива - C++
Заранее извините, если глупые вопросы, я просто совсем новичок в этом деле. Разъясните, пожалуйста, подробно. В одном из видео уроков...


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

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

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