Так как целевой яп не указан написал на С#. Пример работы на рисунке 1.
Условия выделены комментариями внутри кода!
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Etazhi
{
class Program
{
static void Main(string[] args)
{
const int ET = 9, KV = 4; //Константы
int N;
Console.Write("Введите номер квартиры: ");
if (!int.TryParse(Console.ReadLine(), out N) || N < 1)
{
Console.WriteLine("Некорретный ввод");
return;
}
//Условия [Начало]
int iTop = N / KV + ((N % KV > 0) ? 1 : 0);
int Npd = (iTop-1) / ET + 1;
int Net = (iTop-1) % ET + 1;
//Условия [Конец]
Console.WriteLine("В {0}-этажном доме, где на каждом этаже по {1} квартиры, \nквартира №{2} будет располагаться в {3} подъезде на {4} этаже", ET, KV, N, Npd, Net);
Для того, чтобы узнать в каком подъезде находится квартира, разделим ее номер на количество квартир в подъезде, на 36. Запомним частное и остаток от деления. Пусть, к примеру, нам дана квартира 85. Делим на 36. Получаем частное 2 и в остатке 13. 2 - это номер подъезда. Теперь разделим 13 на 4 (число квартир на этаже), запомним частное и остаток. В результате получим 3 и остаток 1. Значит, наша квартира на 3-м этаже, и если номера квартир идут слева направо, то квартира будет крайняя слева.
Итак, квартира с номером 85 находится во втором подъезде, на 3-м этаже нашего дома.
Так как целевой яп не указан написал на С#. Пример работы на рисунке 1.
Условия выделены комментариями внутри кода!
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Etazhi
{
class Program
{
static void Main(string[] args)
{
const int ET = 9, KV = 4; //Константы
int N;
Console.Write("Введите номер квартиры: ");
if (!int.TryParse(Console.ReadLine(), out N) || N < 1)
{
Console.WriteLine("Некорретный ввод");
return;
}
//Условия [Начало]
int iTop = N / KV + ((N % KV > 0) ? 1 : 0);
int Npd = (iTop-1) / ET + 1;
int Net = (iTop-1) % ET + 1;
//Условия [Конец]
Console.WriteLine("В {0}-этажном доме, где на каждом этаже по {1} квартиры, \nквартира №{2} будет располагаться в {3} подъезде на {4} этаже", ET, KV, N, Npd, Net);
}
}
}
Итак, квартира с номером 85 находится во втором подъезде, на 3-м этаже нашего дома.