Математическая модель (а также программа; зависит от того, что понимать под этапом формализации).
В учебнике выделяют такие этапы решения задачи на компьютере:
Исходные данные (результат - словесная информационная модель)Формализация (математическая модель)Алгоритмизация (алгоритм)Программирование (программа)Отладка, тестирование (уточнение модели)Выполнение расчетов (получение результатов)Нормальные люди понимают, что после формализации информация должна быть представлена на формальном языке, таких языком может быть как математический, так и язык программирования.
#include <iostream>
using namespace std;
int main()
{
bool check;
int number;
cin >> number;
if (number > 0 && number < 10)
{
cout << "нет";
return 0;
}
while (number > 0)
{
int last_number = number % 10;
number /= 10;
if (last_number < number % 10)
{
check = false;
break;
}
check = true;
}
if (check)
{
cout << "да";
}
else
{
cout << "нет";
}
}
Объяснение:
#include <iostream> // Библиотека ввода - вывода
using namespace std; // Пространство имен
int main()
{
bool check; // Переменная check логического типа (( хранит true - ИСТИНА // false - ЛОЖНО ))
int number; // Переменная, хранящая число, вводимое с клавиатуры
cin >> number; // Вводим число с клавиатуры
if (number > 0 && number < 10) // Если number находится в диапазоне [1..0]
{
cout << "нет"; // Выводим нет
return 0; // Заканчиваем программу
}
while (number > 0) // Пока значение переменной number > 0
{
int last_number = number % 10; // Берем последнюю цифру числа
number /= 10; // Удаляем ее
if (last_number < number % 10) // Если последняя цифра числа < следующей цифры
{
check = false; // check = ложно (false)
break; // Выходим из цикла
}
check = true; // Если нет, то check = истина (true)
}
if (check) // Если check = истина (true)
{
cout << "да"; // Выводим да
}
else // Иначе
{
cout << "нет"; // Выводим нет
}
}