2 / 2 / 3
Регистрация: 08.01.2013
Сообщений: 62
1

Определить вид треугольника

27.10.2013, 21:51. Показов 2888. Ответов 7
Метки нет (Все метки)

1. Ввести углы а, в, с треугольника (а + в + с = 180 º) и определить вид треугольника (остроугольный, прямоугольный, тупоугольный, равнобедренный, ривньосторонний или Δ-к - не существует).
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
#include <iostream>
#include <math.h>
using namespace std;
void main()
{
    float a,b,c;
    cout<<("Enter a*, b* & c*")<<endl; cin>>a>>b>>c;
    if (a+b+c=180)
    {
    case a=90: cout<<"Triygolnik pryamoygolniu"<<endl;
         case b=90: cout<<"Triygolnik pryamoygolniu"<<endl;
              case c=90: cout<<"Triygolnik pryamoygolniu"<<endl;
              case a=b=c=60: cout<<"Triygolnik ravnostornniu"<<endl;
                   case a<90: cout<<"Triygolnik ostroygolniu"<<endl;
                       case b<90: cout<<"Triygolnik ostroygolniu"<<endl;
                           case c<90: cout<<"Triygolnik ostroygolniu"<<endl;
                           case a=b: cout<<"Triygolnik ravnobedrenniu"<<endl;
                               case c=b: cout<<"Triygolnik ravnobedrenniu"<<endl;
                                   case a=c: cout<<"Triygolnik ravnobedrenniu"<<endl;
    }
else
    {
        cout<<"Triygolnik ne sychestvyet"<<endl;
    }
    system("pause");
}
выдает ошибки:
e:\администратор\проекти с++\1\1\1.cpp(8): error C2106: =: левый операнд должен быть левосторонним значением
e:\администратор\проекти с++\1\1\1.cpp(10): error C2046: недопустимый вариант выбора
e:\администратор\проекти с++\1\1\1.cpp(11): error C2046: недопустимый вариант выбора
e:\администратор\проекти с++\1\1\1.cpp(12): error C2046: недопустимый вариант выбора
e:\администратор\проекти с++\1\1\1.cpp(13): error C2046: недопустимый вариант выбора
e:\администратор\проекти с++\1\1\1.cpp(14): error C2046: недопустимый вариант выбора
e:\администратор\проекти с++\1\1\1.cpp(15): error C2046: недопустимый вариант выбора
e:\администратор\проекти с++\1\1\1.cpp(16): error C2046: недопустимый вариант выбора
e:\администратор\проекти с++\1\1\1.cpp(17): error C2046: недопустимый вариант выбора
e:\администратор\проекти с++\1\1\1.cpp(18): error C2046: недопустимый вариант выбора
e:\администратор\проекти с++\1\1\1.cpp(19): error C2046: недопустимый вариант выбора
Как их исправить?
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.10.2013, 21:51
Ответы с готовыми решениями:

Определить вид треугольника
Добрый день, пытался написать программку на c++ которая бы отвечала за определение вида...

Определить вид треугольника
Здравствуйте, дорогие форумчане. Мне снова нужна ваша помощь. Вот задание: Треугольник задан...

Определить вид треугольника
Программа должна выводить результаты в цифрах: а) 0-не треугольник, б) другой треугольник,...

Определить вид треугольника
Ошибка, как исправить: Проверка треугольника #include &quot;stdafx.h&quot; #include &lt;string&gt; #include...

7
Don't worry, be happy
17758 / 10526 / 2030
Регистрация: 27.09.2012
Сообщений: 26,502
Записей в блоге: 1
27.10.2013, 22:06 2
Цитата Сообщение от prog-hak Посмотреть сообщение
Как их исправить?
почитать еще раз о том, как использовать switch
а так же о операторе присваивания и операторе сравнения!
0
82 / 82 / 44
Регистрация: 14.07.2013
Сообщений: 410
27.10.2013, 22:09 3
Цитата Сообщение от prog-hak Посмотреть сообщение
#include <math.h>
можна обойтись и без этой библиотеки)
0
2 / 2 / 3
Регистрация: 08.01.2013
Сообщений: 62
27.10.2013, 22:29  [ТС] 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
#include <iostream>
#include <math.h>
using namespace std;
void main()
{
    int a,b,c;
    cout<<("Enter a*, b* & c*")<<endl; cin>>a>>b>>c;
    if (a+b+c!=180)
    
        cout<<"Triygolnik ne sychestvyet"<<endl;
    
    else
    
        switch (a,b,c)
case a=90: cout<<"Triygolnik pryamoygolniu"<<endl;
         case b=90: cout<<"Triygolnik pryamoygolniu"<<endl;
              case c=90: cout<<"Triygolnik pryamoygolniu"<<endl;
              case a=b=c=60: cout<<"Triygolnik ravnostornniu"<<endl;
                   case a<90: cout<<"Triygolnik ostroygolniu"<<endl;
                       case b<90: cout<<"Triygolnik ostroygolniu"<<endl;
                           case c<90: cout<<"Triygolnik ostroygolniu"<<endl;
                           case a=b: cout<<"Triygolnik ravnobedrenniu"<<endl;
                               case c=b: cout<<"Triygolnik ravnobedrenniu"<<endl;
                                   case a=c: cout<<"Triygolnik ravnobedrenniu"<<endl;
    
    system("pause");
}
0
89 / 51 / 15
Регистрация: 26.06.2013
Сообщений: 179
27.10.2013, 22:34 5
Прочитайте про switch. В качестве условия ставится какая-то переменная, а в case пишется значение (возможное значение) переменной, вы не имеете права писать логическое выражение тут. Допустим такой вариант:
C++
1
2
3
4
5
6
7
8
9
10
int a;
cin >> a;
switch(a) {
case 1: cout << 1;
break;
case 2: cout << 2;
break;
default: cout << "Not 1,2";
break;
}
И да, вы забываете оператор break, если вы его не поставите, то даже при закрытии компилятором "глаз" на то, что вы в case используете логические значения, то вам выведет все сообщения, если вы, к примеру, введете для a 90.
И еще момент, вы в switch можете использовать ТОЛЬКО ОДИН операнд (переменную), а то, что делаете вы неверно.
В вашем случае лучше юзать if
0
2 / 2 / 3
Регистрация: 08.01.2013
Сообщений: 62
27.10.2013, 22:35  [ТС] 6
Вот это другое дело, спасибо буду пробывать.
0
Заблокирован
28.10.2013, 00:17 7
Видов треугольников три: остроугольный, прямоугольный, тупоугольный.

Равнобедренный и равносторонний - "особые случаи" в этих видах. Равнобедренный может быть и остроугольным, и прямоугольным, и тупоугольным. Равносторонний - только остроугольным.

Нужно менять логику решения.

Добавлено через 16 минут
К тому же, равносторонний - частный случай остроугольного равнобедренного.
0
Заблокирован
28.10.2013, 00:29 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
25
26
27
28
29
30
31
32
#include <iostream>
#include <clocale>
 
using std::cout;
using std::cin;
 
int main()
{   setlocale(LC_ALL, "");
    int a,b,c;
    cout<<"Введите значения углов через пробел\n";
    cin>>a>>b>>c;
 
    if(a+b+c == 180 && a>0 && b>0 && c>0)
    {   if(a<90 && b<90 && c<90)
        {   cout<<"\nТреугольник остроугольный";
            if(a==b && b==c && c==60)
                cout<<"\nТреугольник равносторонний";
        }
        else if(a == 90 || b == 90 || c == 90)
            cout<<"\nТреугольник прямоугольный";
        else
            cout<<"\nТреугольник тупоугольный";
    
        if(a==b || b==c || a==c)
            cout<<"\nТреугольник равнобедренный";
    }
    else
        cout<<"\nТреугольник не существует";
    
    cin.sync(); cin.get();
    return 0;
}
Миниатюры
Определить вид треугольника  
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.10.2013, 00:29
Помогаю со студенческими работами здесь

Определить вид треугольника по его сторонам
Помогите кто-нибудь Даны три числа.Если они могут быть длинами сторон треугольника,определите его...

Определить вид треугольника по его углам
Программа правильно выдает результат с тестами 1,2,4. Но неправильно считает гамму в 3 тесте....

Определить вид треугольника по координатам вершин
Задача 2 : Задача на строки. Даны координаты трех точек на плоскости. Если они могут быть вершинами...

Определить вид треугольника по длинам его сторон
Составьте программу, которая определяет вид треугольника по длинам его сторон(если данные длины...


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

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

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