Определить номер подъезда и этажа по номеру квартиры девятиэтажного дома - Turbo Pascal
Формулировка задачи:
Определить номер подъезда и этажа за номером квартиры девяти-этажного дома, учитывая, что на каждом этаже 4 квартиры, а нумерация квартир начинается с 1 подъезда.
Решение задачи: «Определить номер подъезда и этажа по номеру квартиры девятиэтажного дома»
textual
Листинг программы
var podezd,etag,nomer:integer; begin readln(nomer); podezd:=(nomer+35)div 36; nomer:=nomer-(podezd-1)*36; etag:=(nomer+3)div 4; writeln('podezd=',podezd); writeln('etag=',etag); end.
Объяснение кода листинга программы
В данном коде на Turbo Pascal происходит следующее:
- Переменная
nomer
считывает номер квартиры, которую нужно определить. - Выражение
(nomer+35)div 36
преобразует номер квартиры в номер подъезда, добавляя к нему 35 и деля на 36. Это необходимо потому, что в девятиэтажном доме есть 9 подъездов, и номер квартиры в этом случае представляет собой номер подъезда, а не номер этажа. - Затем переменная
nomer
обновляется, вычитая из нее(podezd-1)*36
, чтобы получить номер этажа. Поскольку подъезд определяется как номер квартиры плюс 35, то для получения номера этажа нужно отнять от номера квартиры номер подъезда, умноженный на 36. - Переменная
etag
считывает номер этажа, деля номер квартиры на 4. В девятиэтажном доме обычно есть 4 этажа на каждый подъезд, поэтому это деление позволяет определить номер этажа. - Наконец, значения переменных
podezd
иetag
выводятся на экран с помощью функцииwriteln
.