#include <stdio.h>
#include <locale.h>
#include "Header.h"
#include "Header.c"
int main()
{
int ap_num, floor, building, rooms, balc;
printf("Enter number of apartment:");
scanf("%d", &ap_num);
building = building_co(ap_num);
if (building == err)
{
printf("There is no such an apartment.");
return err;
}
printf("Entrance: %d", building);
floor = floor_num(ap_num);
printf("\nFloor of the apartment: %d", floor);
rooms = rooms_count(ap_num);
printf("\nRooms in apartment: %d", rooms);
balc = balc_count(ap_num);
printf("\nBalconies in apartment %d \n", balc);
}
#include "Header.h"
#define ap_1 1
#define ap_135 135
//Функцiя для перевiрки корректонстi вводу номера квартири
private int ap_check(int ap_num)
{
return ap_1 <= ap_num && ap_num <= ap_135;
}
//Функція для знахождения під'їезду за номером квартири
public int building_co(int ap_num)
{
if (ap_check(ap_num))
{
return ap_num <= 45 ? 1 : ap_num > 90 ? 3 : 2;
}
else
return err;
}
//Функція для знахождения поверху за номером квартири
public int floor_num(int ap_num)
{
if (ap_check(ap_num))
{
int build = building_co(ap_num);
int floor = 1;
for (int i = 1; i <= 9; i++)
{
if (ap_num - (45 * (build - 1)) <= i * 5)
{
return floor = i;
}
}
}
else
return err;
}
//Функція для знахождення кількості кімнат в квартирі за її номером
public int rooms_count(int ap_num)
{
if (ap_check(ap_num))
{
int rooms_list[5] = { 7, 8, 7, 7, 8 };
return rooms_list[(ap_num - 1) % 5];
}
else return err;
}
//Функція для знахождения кількості балконів в квартирі за її номером
public int balc_count(int ap_num)
{
if (ap_check(ap_num))
{
int balc_list[5] = { 1, 1, 1, 1, 1};
return balc_list[(ap_num - 1) % 5];
}
}
#ifndef Header
#define Header
#define public
#define private static
#define err -1
public int building_co(int ap_num);
public int floor_num(int ap_num);
public int rooms_count(int ap_num);
public int balc_count(int ap_num);
#endif