Назад
Зміст
Вперед
Задачі з повним умовним оператором,
з складеною умовою
Приклад 1
З’ясуйте, чи може шахова тура за один ход потрапити з клітинки з координатами (x1,y1) у клітинку з координатами
(x2,y2). Тура ходить тільки у горизонтальному або вертикальному напрямках.
Дано: чотири цілих додатних числа. (x1,y1) – координати першої клітинки, в який знаходиться
тура, (x2,y2) – координати другої клітинки.
Знайти: умову, яка зв’язує координати двох клітинок,
і надрукувати "yes", якщо умова вірна; надрукувати
"no", якщо невірна.
Змінні:
Вхідні:
Всі дані цілого типу.
Алгоритм
- Введення чисел x1, y1, x2, y2.
- Нехай перша клітинка має координати: x1=3, y1=6.
- Тура ходить тільки у горизонтальному або вертикальному напрямках. Тобто у першій та другій клітинці повинні співпадати або координати
x або координати y.
Програма
Var x1,x2,y1,y2:byte;
begin
write('координати тури '); read(x1,y1);
write('координати клітинки '); read(x2,y2);
if (x2=x1)or(y2=y1) then writeln('yes')
else writeln('no');
end.
|
Приклад 2
Поїзд прибуває на станцію в a годин
b хвилин та відправляється в c годин d хвилин. Пасажир прийшов на платформу в
n годин m хвилин. Чи буде поїзд стояти на платформі?
(для випадку, що все відбувається за одну добу)
Дано: шість цілих додатних чисел: (a, b)– час прибуття поїзду, (c, d)
– час відправлення поїзду, (n, m)– час приходу людини.
Знайти: умову, яка зв’язує ці дані, таку щоб, якщо умова вірна, надрукувати
"yes", якщо невірна, надрукувати
"no".
Змінні:
Вхідні:
-
a, b – час прибуття поїзду,
-
c, d – час відправлення поїзду,
-
n, m – час приходу людини.
Проміжні:
-
t1 – час прибуття поїзду (в хвилинах, від початку доби),
-
t2 – час відправлення поїзду (в хвилинах, від початку доби),
-
t3 – час приходу людини (в хвилинах, від початку доби).
Всі дані цілого типу.
Алгоритм
- Ввід чисел a, b, c, d, n, m.
- Обчислення t1, t2, t3.
- Людина побачить поїзд, якщо час її приходу t3 більший, ніж час приходу поїзду
t1 і менший, ніж час від’їзду поїзду t2.
Програма
Var a,b,c,d,n,m,t1,t2,t3:byte;
begin
write('поезд пришел ');read(a,b);
write('поезд ушел ');read(c,d);
t1:=a*60+b;
t2:=c*60+d;
t3:=n*60+m;
if (t3>=t1)and(t3<=t2)
then writeln('yes')
else writeln('no');
end.
|
Варіанти задач
- Дано дійсне число X. Визначте, чи належить воно інтервалу [-5;
5].
З’ясуйте, чи може шаховий кінь за один хід попасти з клітинки з координатами (x1,
y1) у клітинку з координатами (x2, y2).
- Дано A, B,
C – сторони трикутника. Чи є цей трикутник рівностороннім?
- Дано A, B,
C – сторони трикутника. Чи є цей трикутник різностороннім?
- Дано A, B,
C – сторони трикутника. Чи є цей трикутник рівнобедреним?
- Дано A, B,
C – кути трикутника. Чи є цей трикутник гострокутним?
- Дано A, B,
C – кути трикутника. Чи є цей трикутник тупокутним?
- Дано A, B,
C – кути трикутника. Чи є цей трикутник прямокутним?
- Дано дійсні додатні числа a, b, c. З’ясуйте, чи існує трикутник з такими сторонами.
- Дано ціле трьохзначне число. Чи всі його цифри однакові?
- Дано ціле двозначне число. Визначте, чи є сума його цифр двозначним числом.
- Дано ціле трьохзначне число. Визначте, чи є добуток його цифр трьохзначним числом.
- Дано трьохзначне натуральне число. Чи вірно, що воно містить рівно дві однакові цифри.
- Відома дата народження людини (рік, номер місяця, число)
і сьогоднішня дата. Визначте вік людини (число повних років).
- Визначити, чи є трикутник із сторонами a, b, c прямокутним (a, b, c
- натуральні). Якщо так, то обчисліть його площу. Примітка: використовуйте теорему Піфагора.
- Дано дійсні додатні числа a, b, c, x, y. З’ясувати, чи пролізе цеглина з розмірами a, b, c у отвір зі сторонами x, y. Просовувати цеглину у отвір можна тільки так, щоб кожне з ребер було паралельне або перпендикулярне сторонам отвору.
- З’ясуйте, чи може шаховий ферзь за один хід попасти з клітинки з координатами (x1, y1) у клітинку з координатами (x2, y2).
- З’ясуйте, чи може шаховий кінь за один хід попасти з клітинки з координатами (x1, y1) у клітинку з координатами (x2, y2).
Назад
Зміст
Вперед