#include <stdio.h>
#include <locale.h>
#include "Header.h"
#include "Header.c"
int main()
{
//Підключаємо українську мову
setlocale(LC_ALL, "Ukrainian");
int place, up_low, cs, coupe, wc;
printf("Введiть номер вашого мiсця:");
scanf("%d", &place);
up_low = upper_lower(place);
if (up_low == err)
{
printf("Такого мiсця немає");
return err;
}
if (up_low)
printf("У вас верхня полка\n");
else
printf("У вас нижня полка\n");
cs = coupe_s(place);
if (cs)
printf("У Вас купе\n");
else
printf("У Вас бокове мiсце\n");
coupe = coupe_number(place);
coupe_number_rome(coupe);
wc = wc_dist(place, coupe);
printf("\nДо найближчого туалету %d метр(-iв) вiд вашого мiсця", wc);
return 0;
}
#include "Header.h"
#include <stdio.h>
#define seat_min 1
#define seat_max 54
const int coupe_size = 2; //Згідно з умовою ширина кожного купе
//Функція для обмеження місць від 1 до 54б аби не було помилки
private int place_check(int place)
{
return seat_min <= place && place <= seat_max;
}
//Функція для знаходження номера купе
public int coupe_number(int place)
{
return place_check(place) ? coupe_s(place) ? (place + 3) / 4 : ((54 -
place) / 2) + 1 : err;
}
//Функція для полки (НИЖНЯ\ВЕРХНЯ)
public int upper_lower(int place)
{
return place_check(place) ? place % 2 == 0 : err;
}
//Функція для знаходження типу місця (БОКОВЕ\КУПЕ)
public int coupe_s(int place)
{
return place_check(place) ? place <= 36 : err;
}
//Функція для виводу номера купе римськими цифрами
public void coupe_number_rome(int coupe)
{
printf("Купе пiд номером:");
switch (coupe)
{
case 1: printf("I"); break;
case 2: printf("II"); break;
case 3: printf("III"); break;
case 4: printf("IV"); break;
case 5: printf("V"); break;
case 6: printf("VI"); break;
case 7: printf("VII"); break;
case 8: printf("VIII"); break;
case 9: printf("IX"); break;
}
}
//Функція для знаходження відстані до найближчого туалету
public int wc_dist(int place, int coupe)
{
return place_check(place) ? coupe <= 4 ? coupe_size * coupe: (10 - coupe) * coupe_size - 1 : err;
}
#ifndef Header_h
#define Header_h
#define public
#define private static
#define err -1
public int coupe_s(int place);
public int coupe_number(int place);
public void coupe_number_rome(int coupe);
public int wc_dist(int place, int coupe);
#endif