Предмет: Информатика,
автор: PhyMAthematicssics
Решить 2 задачи в C++
1. Дано трёхзначное число. Вывести вначале его последнюю цифру(единицы) , а затем - его среднюю цифру(десятки).
2. Дни недели пронумерованы следующим образом: 1- понедельник, 2 -вторник, ...,6-суббота, 7 - воскресенье. Дано целое число К, лежащее в диапазоне 1-365. Определить номер дня недели для К-го дня года, если известно, что в этом году 1 января было вторником.
Ответы
Автор ответа:
1
1.
#include <iostream>
int main()
{
std::string str;
std::cin >> str;
std::cout << "Последняя цифра: " << str.back() << std::endl;
std::cout << "Средняя цифра: " << str.at(str.length() / 2) << std::endl;
return 0;
}
2.
#include <iostream>
#include <array>
int main()
{
const std::array<std::string, 7> name_of_days
{
"Понедельник",
"Вторник",
"Среда",
"Четверг",
"Пятница",
"Суббота",
"Воскресенье"
};
size_t number_of_day;
std::cin >> number_of_day;
std::cout << "День: " << name_of_days[(number_of_day % 7)] << std::endl;
}
Приложения:
Browze:
Здесь в первом задании я использовал класс basic_string лишь потому, что ввод подразумевает только числа, без пробелов и тп. Зачем выполнять лишние операции деления и т.п, если можно просто обратится к элементу?)
Похожие вопросы