Печатает цвет клетки на пересечении вертикали и горизонтали - Free Pascal
Формулировка задачи:
Сама задача: Программа запрашивает в цикле два числа: вертикаль и горизонталь
шахматной доски (числа от 1 до 8), а затем печатает цвет клетки на их пересечении.
Если хотя бы одно из чисел равно нулю, цикл завершается. Если числа выходят за
указанные пределы, сообщает об ошибке и повторяет запрос чисел.
Подсказка: на пересечении 1-й строки и 1-го столбца находится чёрная клетка
Опять Case of и опять не догоняю как его тут использовать, прошлая похожая темаТанк в компьютерной игре может двигаться в одном из четырех направлений . Что можно подставить между Case и of? Надо как-то использовать это, как я понял. Задача из книги "Песни о Паскале", да вот только в книге рассматривается легкий пример, а как делать такой не объясняется
Решение задачи: «Печатает цвет клетки на пересечении вертикали и горизонтали»
textual
Листинг программы
program pr;
var
a, b: integer;
begin
repeat
writeln('С какой клетки по горизонтали стартуем?');
readln(a);
if a = 0 then break;
if a > 8 then
begin
writeln('Некорректный ввод');
break;
end;
writeln('Куда идём по вертикали?');
readln(b);
if a = 0 then break;
if a mod 2 <> 0 then
begin
case b of
1: writeln('чёрная');
2: writeln('белая');
3: writeln('чёрная');
4: writeln('белая');
5: writeln('чёрная');
6: writeln('белая');
7: writeln('чёрная');
8: writeln('белая');
else writeln( 'Вводи правильно!')
end;
end
else
if a mod 2 = 0 then
begin
case b of
1: writeln('белая');
2: writeln('чёрная');
3: writeln('белая');
4: writeln('чёрная');
5: writeln('белая');
6: writeln('чёрная');
7: writeln('белая');
8: writeln('чёрная');
else writeln( 'Вводи правильно!')
end;
end
until false;
end.
Объяснение кода листинга программы
Список действий в коде:
- Запрос на ввод номера клетки по горизонтали.
- Проверка корректности введенного значения. Если оно некорректно, выводится сообщение об ошибке и происходит выход из программы.
- Запрос на ввод номера клетки по вертикали.
- Проверка корректности введенного значения. Если оно некорректно, выводится сообщение об ошибке и происходит выход из программы.
- Определение цвета клетки на пересечении вертикали и горизонтали.
- Вывод соответствующего сообщения с названием цвета.