По введённому числу (градусы) определить, какой это угол (острый, прямой или тупой) - C (СИ)
Формулировка задачи:
Написать программу, которая по введённому числу(градусы) определяла бы какой это угол(острый, прямой или тупой)
Написал вот такой код, но никак не могу разобраться с вводом некорректных данных. Например если ввожу число меньше 1 или больше 180, то программа должна выдавать сообщение "Ведённые данные корректны".
Помогите пожалуйста.
# include <stdio.h>
# include <conio.h>
# include <locale.h>
int main (void)
{
setlocale(LC_CTYPE, "rus");
int a;
printf("Ведите угол в градусах:\n");
scanf_s("%d", &a);
switch (a>=1 && a<=89)
{
case 1:printf ("Угол острый"); break;
}
switch (a==90)
{
case 1:printf ("Угол прямой"); break;
}
switch (a>=91 && a<=180)
{
case 1:printf ("Угол тупой"); break;
}
return 0;
}Решение задачи: «По введённому числу (градусы) определить, какой это угол (острый, прямой или тупой)»
textual
Листинг программы
switch (a <= 0) {
case 0:
switch (a) {
case 90:
printf("= 90\n");
break;
case 180:
printf("> 90\n");
break;
default:
switch (a / 90) {
case 0:
printf("< 90\n");
break;
case 1:
printf("> 90\n");
break;
default:
printf("error\n");
break;
}
break;
}
break;
default:
printf("error\n");
break;
}
Объяснение кода листинга программы
В данном коде представлена программа, которая по введенному числу (градусы) определяет тип угла (острый, прямой или тупой). Код имеет следующую структуру:
- Сначала код проверяет, является ли угол острым (меньше или равным 0 градусов).
- Если условие выполняется, то программа переходит к проверке угла в 90 градусов. Если значение переменной
aравно 90, то выводится сообщение= 90. Если значение переменнойaравно 180, то выводится сообщение> 90. В противном случае программа переходит к следующей проверке. - Если предыдущее условие не выполняется, то программа проверяет, является ли угол прямым (равным 90 градусов). Если значение переменной
aкратно 90, то выводится сообщение< 90. Если значение переменнойaравно 90, то выводится сообщение> 90. В противном случае программа переходит к следующей проверке. - Если предыдущие условия не выполняются, то программа проверяет, является ли угол тупым (больше 90 градусов). Если значение переменной
aбольше 90, то выводится сообщение> 90. В противном случае программа выводит сообщениеerror. - Если ни одно из условий не выполняется, то программа выводит сообщение
error. Таким образом, данный код позволяет определить тип угла по его значению в градусах.