Дано целое число от 1 до 99. Определить возраст человека в годах. Для этого числа напечатать фразу -
Мне n лет. Участь, что внекорых ситуациях слово лет надо заменить на год или года.
Дано натуральное число N (1 <= 1188). Определить возраст человека (в месяцах) . Выразить
возраст человека в годах и месяцах. Например: 21 год 10 месяцев. 52 года 1 месяц. 46 лет ровно.
Другие языки программирования и технологии
помогите решить задачи оператор switch решение нужно visual studio (C)
#include <iostream>
#include <string>
using namespace std;
int main() {
setlocale(LC_CTYPE, "Russian_Russia.1251");
unsigned short age;
do {
cout << " Введите возраст: ";
cin >> age;
} while (age > 100);
string words[] = { " лет", " год", " года" };
unsigned short unit = age % 10, dec = age / 10 % 10, current;
cout << " Вам " << age;
switch (unit) {
case 0:
current = unit;
break;
default:
switch (dec) {
case 0:
switch (unit) {
case 1:
current = unit;
break;
case 2: case 3: case 4:
current = 2;
break;
default:
current = 0;
break;
}
break;
case 1:
current = dec - 1;
break;
default:
switch (unit) {
case 1:
current = unit;
break;
case 2: case 3: case 4:
current = 2;
break;
default:
current = 0;
break;
}
}
}
cout << words[current] << endl;
cin.sync();
cin.get();
}
#include <string>
using namespace std;
int main() {
setlocale(LC_CTYPE, "Russian_Russia.1251");
unsigned short age;
do {
cout << " Введите возраст: ";
cin >> age;
} while (age > 100);
string words[] = { " лет", " год", " года" };
unsigned short unit = age % 10, dec = age / 10 % 10, current;
cout << " Вам " << age;
switch (unit) {
case 0:
current = unit;
break;
default:
switch (dec) {
case 0:
switch (unit) {
case 1:
current = unit;
break;
case 2: case 3: case 4:
current = 2;
break;
default:
current = 0;
break;
}
break;
case 1:
current = dec - 1;
break;
default:
switch (unit) {
case 1:
current = unit;
break;
case 2: case 3: case 4:
current = 2;
break;
default:
current = 0;
break;
}
}
}
cout << words[current] << endl;
cin.sync();
cin.get();
}
первая задача так:
#include
int main()
{
setlocale(LC_ALL, "Russian");
unsigned short age;
do{
std::cout << "Введите Ваш возраст в формате: от 1 до 99 лет: ";
std::cin >> age;
} while (age < 1 || 99 < age);
switch (age % 10)
{
case 1:
std::cout << "Мне " << age << " год" << std::endl;
break;
case 2: case 3: case 4:
std::cout << "Мне " << age << " года" << std::endl;
break;
case 0:case 5: case 6: case 7:case 8:case 9:
std::cout << "Мне " << age << " лет" << std::endl;
}
return 0;
}
А во второй вообще все просто: делишь введенное число месяцев на 12 и узнаешь количество полных лет, потом делишь это же число по модулю на 12 (N%12) и узнаешь количество месяцев. Записываешь оба полученных значения в отдельные переменные и выводишь на экран.
#include
int main()
{
setlocale(LC_ALL, "Russian");
unsigned short age;
do{
std::cout << "Введите Ваш возраст в формате: от 1 до 99 лет: ";
std::cin >> age;
} while (age < 1 || 99 < age);
switch (age % 10)
{
case 1:
std::cout << "Мне " << age << " год" << std::endl;
break;
case 2: case 3: case 4:
std::cout << "Мне " << age << " года" << std::endl;
break;
case 0:case 5: case 6: case 7:case 8:case 9:
std::cout << "Мне " << age << " лет" << std::endl;
}
return 0;
}
А во второй вообще все просто: делишь введенное число месяцев на 12 и узнаешь количество полных лет, потом делишь это же число по модулю на 12 (N%12) и узнаешь количество месяцев. Записываешь оба полученных значения в отдельные переменные и выводишь на экран.
Похожие вопросы
- Помогите решить задачу)) Написать программу решения математического ребуса: VOLVO+FIAT=MOTOR.
- Помогите решить задачи по информатике!!! ОЧЕНЬ НУЖНО!!!
- помогите решить задачу по информатике, срочно нужно ( программирование с++)
- Помогите решить задачу в visual studio c++
- Visual studio c++ помогите пожалуста!!!
- Visual Studio C++, ошибка : "не удается найти указанный файл"
- Помогите решить задачу (Visual c++)
- microsoft visual studio помогите решить задачу!
- Помогите решить задачу c#
- Помогите решить задачи на C#