Условный оператор

34 задачи
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.
Поле шахматной доски определяется парой чисел (a, b), каждое от 1 до 8, первое число задает номер столбца, второе – номер строки. Заданы две клетки. Определите, может ли шахматная ладья попасть с первой клетки на вторую за один ход.

Входные данные
Даны 4 целых числа от 1 до 8 каждое, первые два задают начальную клетку, вторые два задают конечную клетку. Начальная и конечная клетки не совпадают.

Выходные данные
Программа должна вывести YES, если из первой клетки ходом ладьи можно попасть во вторую, или NO в противном случае.
Входные данные
Даны два целых числа, каждое записано в отдельной строке.

Выходные данные
Программа должна вывести число 1, если первое число больше второго, число 2, если второе больше первого, или число 0, если они равны.

В кафе мороженое продают по три шарика и по пять шариков. Можно ли купить ровно k шариков мороженого?

Входные данные
Вводится число k (целое,положительное)

Выходные данные
Программа должна вывести слово YES, если при таких условиях можно набрать ровно k шариков (не больше и не меньше), в противном случае - вывести NO.

Ужасная болезнь поражает коров. Фермер Джон хочет их защитить.
Амбар ФД - это узкое длинное здание, содержащее N стойл в ряд (2≤N≤105). Некоторые из этих стойл уже заняты коровами, некоторые - свободны. Прочитав о необходимости социального дистанцирования, ФД хочет максимизировать D, где D, это расстояние между двумя ближайшими занятыми стойлами. Например, если стойла 3 и 8 ближайшие, которые заняты, тогда D=5.

Две новых коровы пополнили стадо ФД и он должен решить, в какое не занятое стойло разместить каждую из них. Определите, ка к он должен разместить этих коров, чтобы в результате D, стало максимальным из возможных. ФД не может передвигать никакую из имеющихся коров, он может только назначить стойла новым коровам.

Входные данные
Первая строка ввода содержит N. Следующая строка содержит строку длиной N из 0 и 1, описывающая последовательность стойл в амбаре. 0 означает пустое стойло, 1 означает занятое стойло. В строке имеется как минимум два нуля, что достаточно для размещения двух коров.
Выходные данные
Выведите наибольше значение D (наименьшее расстояние между двумя занятыми стойлами), которое ФД может получить добавлением двух новых коров оптимальным образом.
Примеры
Входные данные Выходные данные  
1 14
10001001000010
2 В этом примере ФД может добавить коров так: 10x010010x0010 где x показывает новых коров. В этом случае D=2. Невозможно разметить коров так, чтобы получить D больше.
Про три числа (обозначенных a, b, c) известны все результаты сравнения их друг с другом. Требуется расположить эти числа в порядке возрастания.

Входные данные
Вводятся три строки. В первой записан результат сравнения между собой чисел a и b в следующем формате. Первый символ — всегда a, третий символ — b (соответствующие маленькие латинские буквы), а между ними записан один из символов >, < или =. Во второй строке в таком же формате записан результат сравнения a и с (первый символ всегда a, третий — c), а в третьей строке — результат сравнения b и c (первый символ всегда b, третий — c). Гарантируется, что входные данные не противоречивы.

Выходные данные
Выведите символы a, b, c в порядке величины соответствующих им чисел — каждое следующее число должно быть больше либо равно предыдущему. Если два числа равны между собой, соответствующие переменные могут быть выведены в любом порядке. Символы должны быть выведены в одной строке без пробелов и других разделителей.

Примечание
Во втором примере ответ cba также является верным. Обратите внимание, если вариантов ответа несколько — не нужно выводить их все, ваша программа должна вывести ровно один вариант ответа.
 
Примеры
Входные данные Выходные данные
1 a>b
a>c
b>c
cba
2 a=b
a>c
b>c
cab
cba
Благотоворительные организации каждый год собирают деньги на теплую одежду бедным. У главного героя этой задачи есть целых две куртки, но это не мешает ему страдать. Одна из его курток — зимняя, а вторая — демисезонная (в ней приятно ходить осенью или весной). Куртки подобраны идеально: в зимней куртке комфортно при температуре в x градусов или ниже, а в демисезонной – при температуре выше x градусов. В общем, жить бы ему и радоваться. Но откуда бы тогда появиться задаче?

Проблема нашего героя в том, что он, надевая сегодня не ту куртку, которую носил вчера, по- стоянно забывает переложить проездной, ключи и прочие полезные вещи в карман новой куртки. Немного подумав, он решил, что не совсем подходящая к сегодняшней температуре куртка — это не так плохо, как забытые вещи. Поэтому, если сегодня незначительно теплее, чем граничная температура, он все равно пойдет в зимней куртке, аналогично для демисезонной. Чуть более формально это звучит так: он меняет куртку с зимней на демисезонную, только если сегодня за окном есть хотя бы x + d  градусов, а с демисезонной на зимнюю — если за окном x − d  градусов или холоднее. Иногда ему, конечно, не очень комфортно на улице, но зато все вещи точно с собой.

По архиву прогноза погоды за последние n дней определите, сколько дней главному герою этой задачи было некомфортно. Считается, что в первый день он вышел в той куртке, в которой в этот день комфортно.

Входные данные
В первой строчке даны два вещественных числа x и d — граница температуры между куртками и отклонение температуры, которое герой задачи считает незначительным (−89≤x≤55, 1≤d≤6 ).

Во второй строчке дано целое число n, 1≤n≤105 — количество дней в архиве прогноза погоды.

В третьей строчке перечислены n вещественных чисел ti — температура в i-й день (−89≤ti≤55 ).

Выходные данные
Выведите одно число: количество дней, в которые герою задачи было некомфортно в той куртке, в которой он вышел в этот день
 
Примеры
Входные данные Выходные данные
1 5 1
7
6 7 4 4 2 3 7
0
2 0 2
4
-1 1 -1 1
2

Король – это особая в шахматах фигура. Его ценность несравнима с ценностью остальных фигур – с его потерей партия сразу заканчивается.

Поэтому шахматный король бесценен! Но он тоже имеет право вести бой. Король может закрыть путь трём пешкам. А в паре с пешкой он может доставить неприятности самым сильным фигурам. Шахматный король ходит по горизонтали, вертикали и диагонали, но только на 1 клетку.
Поможем Вилли запрограммировать ход шахматного короля. 

Даны две различные клетки шахматной доски, определите, может ли король попасть с первой клетки на вторую одним ходом.

Входные данные: Программа получает на вход четыре числа от 1 до 8 каждое, задающие номер столбца и номер строки сначала для первой клетки, потом для второй клетки.
Выходные данные: Программа должна вывести YES, если из первой клетки ходом короля можно попасть во вторую или NO в противном случае.
Примеры
Входные данные Выходные данные
1 4
4
5
5
YES
Вилли пошел еще дальше. Теперь он решил написать программу, которая будет сообщать ему, есть ли на доске двойной удар (то есть угрожает ли какая-либо фигура двум другим). Но у Вилли мало времени, сейчас он готовится к очередным соревнованиям. Он просит Вас помочь ему написать заготовку для его программы. Вам необходимо по координатам фигур определить, угрожает ли слон другим двум фигурам или нет.
Входные данные: программа на вход получает три строки с двумя числами. Первое число в строке - номер вертикали, второе номер горизонтали. В первой строке координаты слона (одного цвета). Во второй и третьей координаты двух других фигур (другого цвета). Все фигуры стоят на разных полях. 
Выходные данные: вывести слово "double", если слон угрожает двум другиим фигурам, в противном случае вывести слово "no"
Нельзя использовать в программе конструкции цикла

Пример
Входные данные

4 4
5 5
6 6
Выходные данные
double
Вилли устал от шахмат и опять решил попрограммировать. Теперь он хочет написать программу, которая получает на вход 4 числа: первые два числа - координаты первой ладьи (номер вертикали и горизонтали), вторые два числа координаты второй ладьи. И выводит "x", если ладьи бьют друг друга и "no", если не бьют

Пример 1
Входные данные

2 2
2 8
Выходные данные
x

Пример 2
Входные данные

1 2
2 8
Выходные данные
no
23426#23426
Для чего предназначен оператор IF?

1. для выполнения проверки условия
2. для выполнения нескольких команд в цикле
3. для выполнения последовательности команд заданное количество раз
4. для выполнения последовательности команд, пока соблюдается заданное условие
1115#1115
В каком из условных операторов допущена синтаксическая ошибка?

Ответ: 1) if B = 0 then Writeln('Деление на нуль невозможно.') 2) 3)if a > b then max := a else max := b 4)

Поделиться
Класснуть