Цель. Научиться использовать оператор выбора (if-else) одной из двух альтернатив if-else. Получить навыки работы с оператором if без ветки else и лесенкой if-else-if. Научиться применять логические операции «и», «или», «не».
ПРИМЕРЫ РЕШЕНИЯ ЗАДАЧ
Задача 1. Напишите программу, которая принимает вещественное число и проверяет, попадает ли оно в отрезок [-10, 10].
#include <iostream>
using namespace std;
int main() {
cout << "Введите число:" << endl;
double x;
cin >> x;
if (-5<=x && x<=5) {
cout << "Попадает" << endl;
} else {
cout << "Не попадает" << endl;
}
system("pause");
return 0;
}
Задача 2. Введите три угла и проверьте, может ли треугольник иметь такие углы.
#include <iostream>
using namespace std;
int main() {
double angle1, angle2, angle3;
cout << "Введите углы:\n";
cin >> angle1 >> angle2 >> angle3;
double sum = angle1 + angle2 + angle3;
sum==180? cout << "Может": cout << "Нет";
system("pause");
return 0;
}
Задача 3. Назовем число счастливым, если сумма его цифр равна произведению. Введите четырехзначное число и проверьте, является ли оно счастливым.
#include <iostream>
using namespace std;
int main() {
setlocale(LC_ALL, "Russian");
cout << "Введите число:\n";
int n;
cin >> n;
if (!(1000<=n && n<= 9999)) {
cout << "Число не четырехзначное\n";
} else {
int d1 = n%10;
int d2 = (n/10)%10;
int d3 = (n/100)%10;
int d4 = (n/1000)%10;
if (d1+d2+d3+d4 == d1*d2*d3*d4) {
cout << "Счастливое\n";
} else {
cout << "Нет\n";
}
}
system("pause");
return 0;
}
Задача 4. На некотором участке дороги разрешенная скорость составляет 60 км/ч. Введите скорость водителя и определите, движется ли он с разрешенной скоростью, или же его следует наказать согласно ПДД.
#include <iostream>
using namespace std;
int main() {
setlocale(LC_ALL, "Russian");
double speed;
cout << "Введите скорость:\n";
cin >> speed;
if (speed<=0) {
cout << "Ошибка ввода\n";
} else if (speed<=60) {
cout << "Разрешенная скорость\n";
} else if (speed<=70) {
cout << "Предупреждение\n";
} else if (speed<=80) {
cout << "Штраф 100 рублей\n";
} else if (speed<=100) {
cout << "Штраф 300 рублей\n";
} else if (speed<=120) {
cout << "Штраф 1500 рублей\n";
} else {
cout << "Лишение прав\n";
}
system("pause");
return 0;
}
Задача 5. Введите три целых числа и определите, сколько среди них двузначных.
#include <iostream>
using namespace std;
int main() {
setlocale(LC_ALL, "Russian");
int n1, n2, n3, kol=0;
cout << "Введите три числа через пробел:\n";
cin >> n1 >> n2 >> n3;
if (10<=n1 && n1<=99) { kol++; }
if (10<=n2 && n2<=99) { kol++; }
if (10<=n3 && n3<=99) { kol++; }
cout << "Кол-во двузначных=" << kol << endl;
system("pause");
return 0;
}
ЗАДАЧИ
1. Введите целое число и проверьте, является ли оно трехзначным.
2. Введите число и проверьте, каким оно является: положительным, отрицательным или нулем.
3. На сейфе установлен код 1234. Введите код и сообщите, откроется ли сейф.
4. Введите целое число и сообщите, четное оно или нечетное.
5. Введите целое число и сообщите, делится ли оно на 3 или нет.
6. Введите два числа и сообщите, какое из них больше.
7. Введите два числа и проверьте, делится ли одно из них на другое.
8. Введите число и проверьте, попадает ли оно в отрезок [10, 20].
9. Введите три числа и определите минимальное (максимальное).
10. Введите три числа и проверьте, есть ли среди них одинаковые.
11. Введите пять целых чисел и определите, сколько среди них четных (нечетных).
12. Введите три числа, представляющие собой длины отрезков, и проверьте, можно ли из них составить треугольник.
13. Введите три числа, представляющие собой длины сторон треугольника, и проверьте, является ли он прямоугольным.
14. Введите коэффициенты квадратного уравнения и определите, сколько вещественных корней оно имеет.
15. Введите коэффициенты квадратного уравнения и решите его.
16. Введите год и проверьте, является ли он високосным.
17. Введите номер месяца и определите, к какому времени года (весна, лето, осень или зима) он относится.
18. Введите год и сообщите, какое животное соответствует этому году согласно Китайскому календарю.
19. Введите целое число и проверьте, является ли оно полным квадратом. Например, полными квадратами являются числа 1, 4, 9, 16 и 25.
20. Введите координаты точки в двумерном пространстве (x и y) и сообщите, в какой четверти декартовой плоскости лежит эта точка.
21. Введите координаты точки в двумерном пространстве (x и y) и проверьте, попадает ли она в единичную окружность.
22. Введите номер дня недели и проверьте, выходной ли это день.
23. Школьника рекомендуют к зачислению в физико-математический класс, если его средний балл по математике, физике и информатике не меньше 4.75. Введите оценки и проверьте, будет ли школьник рекомендован к зачислению в этот класс. Используйте оператор?:.
24. Сергей и Иван соревновались в метании молота на дальность. Введите результаты спортсменов и определите, кто победил. Используйте оператор?:.
25. Нападающим футбольного клуба «Юный программист» назначают премию, если они забивают 20 и более голов. Введите число голов, забитых футболистом, и определите, положена ему премия или нет. Используйте оператор?:.
26. Проездной билет считают счастливым, если в его шестизначном номере сумма первых трех цифр равна сумме последних трех. Введите номер билета и проверьте, счастливый ли он. Используйте оператор?:.
27. При поступлении на платное обучение абитуриенты получают скидку в зависимости от суммарного балла ЕГЭ по трем предметам. Схема следующая: 0-99 баллов не дают скидки; 100-199 баллов дают скидку 10%; 200-249 баллов дают скидку 15%; 250-300 баллов дают скидку 20%. Введите сумму баллов по трем предметам и стоимость обучения. Определите стоимость с учетом скидки.
28. Ученому выплачивают премию в зависимости от числа публикаций: 10000 (до 2 публикаций), 20000 (до 5), 50000 (до 10) и 100000 (свыше 10). Введите количество публикаций ученого и определите размер премии.
29. В зависимости от суммы вклада банк выплачивает разные проценты: 7% (до 100000 рублей), 9% (до 1000000 рублей) и 11% (свыше 100000 рублей). Введите сумму вклада и определите доход вкладчика через год.
30. Беговые легкоатлетические дистанции делятся на спринт (до 400 метров), средние (до 3000 метров) и длинные (свыше 3000 метров). Введите дистанцию и сообщите, к какому классу она относится.