#include <iostream> using namespace std; int main() { int mansCount; int barbersCount; int mansPerBarber = 8; // один человек в час, смена 8 часов int mansPerBarberPerMonth = mansPerBarber * 30; /* mansCount; - КолМужчин barbersCount; - КолБарберов mansPerBarber - КолПодстриженныхЗаСмену mansPerBarberPerMonth - КолПодстриженныхЗаМесяц NecessaryNumberBarbers - НеобходимоеКолБарберов BarbersRequired - ТребуемыеБарберы */ cout << "\n************ Барбершоп-калькулятор ************\n\n"; back: cout << "Введите число мужчин в городе: "; cin >> mansCount; if (mansCount <= 0) { cout << "\nВы не можете ввести нулевое или отрицательное значение...\n"; cout << "Попробуйте ещё раз.\n\n"; goto back; } back1: cout << "Сколько уже барберов удалось нанять? "; cin >> barbersCount; if (barbersCount <= 0) { cout << "\nВы не можете ввести нулевое или отрицательное значение...\n"; cout << "Попробуйте ещё раз.\n\n"; goto back1; } cout << "\nОдин барбер стрижёт " << mansPerBarberPerMonth << " клиентов в месяц.\n"; // Сколько нужно барберов, чтобы постричь mansCount человек? int NecessaryNumberBarbers = mansCount / mansPerBarberPerMonth; if (NecessaryNumberBarbers * mansPerBarberPerMonth % mansCount) { NecessaryNumberBarbers += 1; } cout << "Необходимое число барберов: " << NecessaryNumberBarbers << "\n\n"; const string b = "барбер"; const string end1 = "a"; const string end2 = "ов"; string endin; int n = NecessaryNumberBarbers; if (n == 1 || (n > 20 && n % 10 == 1)) endin = b; else if (n > 1 && n < 5 || n > 20 && n % 10 > 1 && n % 10 < 5) endin = b + end1; else endin = b + end2; // Сколько человек успеют посчтричь NecessaryNumberBarbers за месяц? cout << NecessaryNumberBarbers << " " << endin << " могут постричь " << NecessaryNumberBarbers * mansPerBarberPerMonth << " мужчин за месяц.\n"; string ending; int nb = NecessaryNumberBarbers - barbersCount; if (nb == 1 || (nb > 20 && nb % 10 == 1)) ending = b; else if (nb > 1 && nb < 5 || nb > 20 && nb % 10 > 1 && nb % 10 < 5) ending = b + end1; else ending = b + end2; int BarbersRequired = NecessaryNumberBarbers - barbersCount; if (NecessaryNumberBarbers > barbersCount) { cout << "Требуется ещё " << BarbersRequired << " " << ending << ".\n"; } else if (NecessaryNumberBarbers == barbersCount) { cout << "Барберов ровно столько, сколько нужно!!!\n"; } else if (barbersCount % NecessaryNumberBarbers == 0) { cout << "У вас работает в " << barbersCount / NecessaryNumberBarbers << " раза больше барберов, чем это нужно!!!\n"; } else cout << "Барберов хватает!!!\n"; }
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter