Всем привет ребята, есть задача:
Есть девятиэтажный дом, в котором 4 подъезда. Номер подъезда начинается с единицы. На одном этаже 4 квартиры. Напишите программу которая получит номер квартиры с клавиатуры и выведет на экран на каком этаже, какого подъезда расположена эта квартира. Если такой квартиры нет в этом доме то нужно сообщить об этом пользователю.
Примерная формула такова:
X - номер квартиры 4*9=36
номер подъезда X div 36 + 1
этаж (Х mod 36) div 4 + 1
Нужно: 21 квартира
4 квартиры на этаже
9 этажный дом
4 подъезда
4 * 9 = 36 (квартир в подъезде)
(21 - 1) / 36 + 1 = 1; (1 Подъезд)
(21 - 1) % 36 / 4 + 1 = 6; (6 Этаж)
Смысл понятен, но не пойму зачем отнимать и прибавлять единицу обьясните пожалуйста или дайте ссылочку, буду благодарен!
И вот ещё смотрите что получается у нас:
5 этажный дом
4 подъезда
4 квартиры в подъезде
Нужна 31 квартира
5 * 4 = 20;
(31 - 1) / 20 + 1 = 11 (Подъезд)
(31 - 1) % 20 / 4 + 1 = (1 этаж)
Что - то тут неправильно, может я не понял как задачу решать? Буду благодарен за вашу помощь! Ведь в данном случае у нас получается 31 квартира находится на 3 этаже второго подъезда верно же?
Большое спасибо за внимание!