Untitled

Run Settings
LanguageC
Language Version
Run Command
/** * @file 2Lab1No3.c * @author Коваленко В.А., гр. 515-В * @date 3 травня 2022 * @brief Лабораторна робота No 1 * * Розгалуження та вибір. Завдання 3 (8 Варіант) */ #include <stdio.h> #include <locale.h> #include "building.h" int main() { //Подключение русского языка setlocale(LC_ALL, "ru"); int apartment_num, entrance, floor, rooms; printf("Введите номер квартиры:"); scanf("%d", &apartment_num); entrance = entrance_num(apartment_num); if (entrance == ERR) { printf("\nКвартиры с таким номером не существует"); return ERR; } else if (entrance) printf("\nВаша квартира находится в 1-ом подъезде\n"); else printf("\nВаша квартира находится в 2-ом подъезде\n"); floor = floor_num(apartment_num, entrance); printf("Эта квартира находится на %d-м этаже", floor); rooms = rooms_count(apartment_num); printf("\nВ этой квартире %d комнат", rooms); }
#include "building.h" #define FIRST_APARTMENT 1 #define LAST_APARTMENT 72 //Функция для проверки корректонсти ввода номера квартиры PRIVATE int apartment_check(int apartment_num) { return FIRST_APARTMENT <= apartment_num && apartment_num <= LAST_APARTMENT; } //Функция для нахождения номера подъезда PUBLIC entrance_num(int apartment_num) { return apartment_check(apartment_num) ? apartment_num <= LAST_APARTMENT / 2 : ERR; } //Функция для нахождения этажа по номеру квартиры PUBLIC int floor_num(int apartment_num, int entrance) { if (apartment_check(apartment_num)) { int floor; for (int i = 1; i <= 9; i++) { if (entrance) { if (apartment_num <= i * 4) { floor = i; break; } } else { if (apartment_num - LAST_APARTMENT / 2 <= i * 4) { floor = i; break; } } } return floor; } else return ERR; } //Функция для нахождения количества комнат в квартире по её номеру PUBLIC int rooms_count(int apartment_num) { if (apartment_check(apartment_num)) { int rooms_list[4] = { 7, 6, 4, 7 }; return rooms_list[(apartment_num - 1) % 4]; } else return ERR; }
#ifndef BUILDING_H #define BUILDING_H #define PUBLIC #define PRIVATE static #define ERR -1 PUBLIC int entrance_num(int apartment_num); PUBLIC int floor_num(int apartment_num, int building); PUBLIC int rooms_count(int apartment_num); #endif
Editor Settings
Theme
Key bindings
Full width
Lines