Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/2: Рейтинг темы: голосов - 2, средняя оценка - 4.50
2 / 2 / 0
Регистрация: 14.07.2012
Сообщений: 28
1

В чём ошибка?

16.07.2012, 18:49. Просмотров 480. Ответов 5
Метки нет (Все метки)

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
#include <stdio.h>
#include <iostream>
#include <conio.h>
#include <math.h>
#define PI 3.14159265
using namespace std;
int main ()
{      setlocale(LC_ALL,"Russian");
      cout << "Äàíííàÿ ïðîãðàììà îïðåäåëèò \n" 
           <<"ìîæíî ëè ïîñòðîèòü òåðåóãîëüíèê ïî ïðÿìûì,\n"
           <<"ââåä¸ííûì ñ êëàâèàòóðû,\n"
           <<"è åñëè ìîæíî îïðåäåëèò åãî òèï \n";
int bolsh;
int mel1;
int mel2;
         
do {     //îïèñûâàåì òðè ñòîðîíû è ââîäèì èõ ñ êëàâèàòóðû
            float storonaA;
              cout << "Ââåäèòå çíà÷åíèå ïåðâîé ïðÿìîé ";
              cin >> storonaA;
              float storonaB;
              cout << "Ââåäèòå çíà÷åíèå âòîðîé ïðÿìîé ";
              cin >> storonaB;
              float storonaC;
              cout << "Ââåäèòå çíà÷åíèå òðåòüåé ïðÿìîé ";
              cin >> storonaC;
                  //íà÷èíàåì àëãîðèòì ïðîâåðêè
if ( storonaA<0 ||  storonaB<0 ||  storonaC<0)
   { cout <<"ÎØÈÁÊÀ!!! ÏÐßÌÛÅ ÍÅ ÌÎÃÓÒ ÁÛÒÜ ÎÒÐÈÖÖÀÒÅËÜÍÛÌÈ!!! ";}
else {               
                  //ñíà÷àëà îïðåäåëèì ìîæíî ëè ïîñòðîèòü òðåóãîëüíèê âîîáùå
                   if ( storonaA+storonaB<storonaC ||
                        storonaA+storonaC<storonaB ||                         
                        storonaC+storonaB<storonaA)
                       {cout <<"\nÈç äàííûõ ïðÿìûõ ÍÅËÜÇß ïîñòðîèòü òðåóãîëüíèê  ";}
else  {
       cout <<"\nÈç äàííûõ ïðÿìûõ ÌÎÆÍÎ ïîñòðîèòü òðåóãîëüíèê\n ";
// ïðîâåðèì òðåóãîëüíèê íà îäíîñòîðîííîñòü
       if (storonaA==storonaB && storonaA==storonaC)
          { cout <<"\nÄàííûé òðåóãîëüíèê ðîâíîñòîðîííèé\n";}
      else{   
              if (storonaA==storonaB ||  storonaA==storonaC || storonaB==storonaC)
                 { cout <<"\nÄàííûé òðåóãîëüíèê ðàâíîáåäðåííûé\n";}}
 //ïðîâåðèì äàííûé òðåóãîëüíèê íà òèï ïî óãëàì
 // íàéä¸ì áîëüøóþ ñòîðîíó
                                            if (storonaA>=storonaB && storonaA>=storonaC)
                                                {bolsh=storonaA;
                                                 mel1=storonaB;
                                                 mel2=storonaC;}
                                           else{        if(storonaB>=storonaA &&  storonaB>=storonaC)
                                                           { bolsh=storonaB;
                                                             mel1=storonaA;
                                                             mel2=storonaC;}
                                                        else{bolsh=storonaC;
                                                             mel1=storonaA;
                                                             mel2=storonaB;}}  
//èñïîëüçóåì ïðàâèëî
//Åñëè êâàäðàò áîëüøåé ñòîðîíû áîëüøå, ÷åì ñóììà êâàäðàòîâ äâóõ îñòàëüíûõ ñòîðîí, òî òðåóãîëüíèê òóïîóãîëüíûé.
//åñëè êâàäðàò áîëüøåé ñòîðîíû ìåíüøå ñóììû êâàäðàòîâ äâóõ äðóãèõ ñòîðîí, òî òðåóãîëüíèê îñòðîóãîëüíûé.                                                            
 if( bolsh*bolsh<mel1*mel1+mel2*mel2)
       { cout <<"\nÄàííûé òðåóãîëüíèê îñòðîóãîëüíûé\n";}
 else  { if (bolsh*bolsh>mel1*mel1+mel2*mel2)
            { cout <<"\nÄàííûé òðåóãîëüíèê òóïîóãîëüíûé\n";}
         else{ cout <<"\nÄàííûé òðåóãîëüíèê ïðÿìîóãîëüíûé\n";}}
          
 }    
};
int otvet
cout << "Õîòèòå ïîïðîáûâàòü åù¸???\n"
     << "1. Äà\n"
     << "2. Íåò\n ";
cin >> otvet;
}
while(otvet==1)
      
getch(); 
return 0;              
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.07.2012, 18:49
Ответы с готовыми решениями:

Выскакивает ошибка Stack around the voriable 'text' was corrupted. Подскажите пожалуйста в чём ошибка
Выскакивает ошибка Stack around the voriable 'text' was corrupted. Подскажите пожалуйста в чём...

В чём ошибка?
Выдаёт странную ошибку, я новичок, поэтому не могу понять. вот весь код: #include &lt;iostream&gt;...

В чём ошибка?
Немогу понять где накосячил, после внесения данных программа зависает. Помогите пожалуйста.#include...

В чём ошибка?
Начал писать класс: class TGame{ public: TGame(char *WorldFileName, char *TexturesFileName); ...

5
104 / 98 / 40
Регистрация: 01.07.2012
Сообщений: 277
16.07.2012, 19:46 2
C++ (Qt)
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
#include "stdafx.h"
#include <stdio.h>
#include <iostream>
#include <conio.h>
#include <math.h>
#define PI 3.14159265
using namespace std;
int main ()
{      setlocale(LC_ALL,"Russian");
      cout << "Даннная программа определит \n" 
           <<"можно ли построить тереугольник по прямым,\n"
           <<"введённым с клавиатуры,\n"
           <<"и если можно определит его тип \n";
int bolsh;
int mel1;
int mel2;
int otvet;
 
         
do {     //описываем три стороны и вводим их с клавиатуры
            float storonaA;
              cout << "Введите значение первой прямой ";
              cin >> storonaA;
              float storonaB;
              cout << "Введите значение второй прямой ";
              cin >> storonaB;
              float storonaC;
              cout << "Введите значение третьей прямой ";
              cin >> storonaC;
                  //начинаем алгоритм проверки
if ( storonaA<0 ||  storonaB<0 ||  storonaC<0)
   { cout <<"ОШИБКА!!! ПРЯМЫЕ НЕ МОГУТ БЫТЬ ОТРИЦЦАТЕЛЬНЫМИ!!! ";}
else {               
                  //сначала определим можно ли построить треугольник вообще
                   if ( storonaA+storonaB<storonaC ||
                        storonaA+storonaC<storonaB ||                         
                        storonaC+storonaB<storonaA)
                       {cout <<"\nИз данных прямых НЕЛЬЗЯ построить треугольник  ";}
else  {
       cout <<"\nИз данных прямых МОЖНО построить треугольник\n ";
// проверим треугольник на односторонность
       if (storonaA==storonaB && storonaA==storonaC)
          { cout <<"\nДанный треугольник ровносторонний\n";}
      else{   
              if (storonaA==storonaB ||  storonaA==storonaC || storonaB==storonaC)
                 { cout <<"\nДанный треугольник равнобедренный\n";}}
 //проверим данный треугольник на тип по углам
 // найдём большую сторону
                                            if (storonaA>=storonaB && storonaA>=storonaC)
                                                {bolsh=storonaA;
                                                 mel1=storonaB;
                                                 mel2=storonaC;}
                                           else{        if(storonaB>=storonaA &&  storonaB>=storonaC)
                                                           { bolsh=storonaB;
                                                             mel1=storonaA;
                                                             mel2=storonaC;}
                                                        else{bolsh=storonaC;
                                                             mel1=storonaA;
                                                             mel2=storonaB;}}  
//используем правило
//Если квадрат большей стороны больше, чем сумма квадратов двух остальных сторон, то треугольник тупоугольный.
//если квадрат большей стороны меньше суммы квадратов двух других сторон, то треугольник остроугольный.                                                            
 if( bolsh*bolsh<mel1*mel1+mel2*mel2)
       { cout <<"\nДанный треугольник остроугольный\n";}
 else  { if (bolsh*bolsh>mel1*mel1+mel2*mel2)
            { cout <<"\nДанный треугольник тупоугольный\n";}
         else{ cout <<"\nДанный треугольник прямоугольный\n";}}
          
 }    
};
cout << "Хотите попробывать ещё???\n"
     << "1. Да\n"
     << "2. Нет\n ";
cin >> otvet;
}
while(otvet==1);
      
//getch(); 
return 0;              
}
поправил, у вас программа ругалась на объявление переменной otvet внутри функции

Добавлено через 35 секунд
советую также использовать более удобное форматирование
1
2 / 2 / 0
Регистрация: 14.07.2012
Сообщений: 28
16.07.2012, 20:18  [ТС] 3
всё равно пишет что ошибка в этой строчке
{bolsh=storonaA
0
Заблокирован
16.07.2012, 20:24 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
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
#include <stdio.h>
#include <iostream>
#include <conio.h>
#include <math.h>
#define PI 3.14159265
using namespace std;
int main ()
{      setlocale(LC_ALL,"Russian");
      cout << "Даннная программа определит \n" 
           <<"можно ли построить тереугольник по прямым,\n"
           <<"введённым с клавиатуры,\n"
           <<"и если можно определит его тип \n";
int bolsh;
int mel1;
int mel2;
int otvet;
 
         
do {     //описываем три стороны и вводим их с клавиатуры
            float storonaA;
              cout << "Введите значение первой прямой ";
              cin >> storonaA;
              float storonaB;
              cout << "Введите значение второй прямой ";
              cin >> storonaB;
              float storonaC;
              cout << "Введите значение третьей прямой ";
              cin >> storonaC;
                  //начинаем алгоритм проверки
if ( storonaA<0 ||  storonaB<0 ||  storonaC<0)
   { cout <<"ОШИБКА!!! ПРЯМЫЕ НЕ МОГУТ БЫТЬ ОТРИЦЦАТЕЛЬНЫМИ!!! ";}
else {               
                  //сначала определим можно ли построить треугольник вообще
                   if ( storonaA+storonaB<storonaC ||
                        storonaA+storonaC<storonaB ||                         
                        storonaC+storonaB<storonaA)
                       {cout <<"\nИз данных прямых НЕЛЬЗЯ построить треугольник  ";}
else  {
       cout <<"\nИз данных прямых МОЖНО построить треугольник\n ";
// проверим треугольник на односторонность
       if (storonaA==storonaB && storonaA==storonaC)
          { cout <<"\nДанный треугольник ровносторонний\n";}
      else{   
              if (storonaA==storonaB ||  storonaA==storonaC || storonaB==storonaC)
                 { cout <<"\nДанный треугольник равнобедренный\n";}}
 //проверим данный треугольник на тип по углам
 // найдём большую сторону
                                            if (storonaA>=storonaB && storonaA>=storonaC)
                                                {bolsh=storonaA;
                                                 mel1=storonaB;
                                                 mel2=storonaC;}
                                           else{        if(storonaB>=storonaA &&  storonaB>=storonaC)
                                                           { bolsh=storonaB;
                                                             mel1=storonaA;
                                                             mel2=storonaC;}
                                                        else{bolsh=storonaC;
                                                             mel1=storonaA;
                                                             mel2=storonaB;}}  
//используем правило
//Если квадрат большей стороны больше, чем сумма квадратов двух остальных сторон, то треугольник тупоугольный.
//если квадрат большей стороны меньше суммы квадратов двух других сторон, то треугольник остроугольный.                                                            
 if( bolsh*bolsh<mel1*mel1+mel2*mel2)
       { cout <<"\nДанный треугольник остроугольный\n";}
 else  { if (bolsh*bolsh>mel1*mel1+mel2*mel2)
            { cout <<"\nДанный треугольник тупоугольный\n";}
         else{ cout <<"\nДанный треугольник прямоугольный\n";}}
          
 }    
};
cout << "Хотите попробывать ещё???\n"
     << "1. Да\n"
     << "2. Нет\n ";
cin >> otvet;
}
while(otvet==1);
      
//getch(); 
return 0;              
}
1
2 / 2 / 0
Регистрация: 14.07.2012
Сообщений: 28
16.07.2012, 20:27  [ТС] 5
а в чём была ошибка....а то я что то не могу заметить

а всё нашёл............то есть я так понял лучше сразу все переменные обьявить???
0
Заблокирован
16.07.2012, 20:37 6
программа ругалась на объявление переменной otvet внутри функции
Ты забыл поставить int otvet;

Добавлено через 3 минуты
Цитата Сообщение от max_oops Посмотреть сообщение
а в чём была ошибка....а то я что то не могу заметить

а всё нашёл............то есть я так понял лучше сразу все переменные обьявить???
да. вы правильно поняли
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.07.2012, 20:37

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

В чём ошибка?
#include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; int main (){ const char*str1;...

В чём ошибка?
#include &lt;iostream&gt; using namespace std; int main() { int N, i; cin &gt;&gt; N; int *arr =...

в чём ошибка?
Спичечная модель Профессор Самоделкин решил изготовить объемную модель кубиков из спичек,...

C++ в чём ошибка
//--------------------------------------------------------------------------- #include &lt;stdio.h&gt;...


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

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

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