Наибольшее число
Напишите программу, которая определяет, есть ли во введённой строке десятичные цифры, и выводит наибольшее число, которое можно составить из этих цифр. Ведущих нулей в числе быть не должно (за исключением числа 0, запись которого содержит ровно одну цифру). Если цифр нет, программа должна вывести число −1.
Использовать встроенные сортировки запрещено.
Входные данные
Входная строка содержит произвольные символы.
Выходные данные
Программа должна вывести наибольшее число, которое можно составить из присутствующих в строке десятичных цифр, или число −1, если цифр нет.
Примеры
Ввод
Вывод
Day 10, mice 8: "Year" 7 is a mistake 91.
987110
Python
записываются известные связи между исходными данными и результатами с математических отношений - формализация
по уточненной программе проводятся необходимые вычисления, результаты которых позволяют ответить на поставленные в задаче вопросы - выполнение расчетов
выбирается наиболее подходящий решения задачи - формализация
осуществляется проверка работо программы и исправление обнаруженных при этом ошибок - отладка, тестирование
алгоритм записывается на одном из языков программирования - программирование
устанавливается, к какому классу принадлежит рассматриваемая задача - формализация
осуществляется построение чёткой инструкции, задающей необходимую последовательность действия для решения задачи - алгоритмизация
выделяются существенные свойства рассматриваемого объекта - постановка задачи
указываются связи между исходными данными и результатом - постановка задачи
определяются исходные данные - постановка задачи
Сначала определяется, что нужно сделать, какие исходные данные - постановка задачи.
Затем определяется, какие есть похожие задачи, на основании этого выбирается и строится модель (чаще всего математическая) - формализация.
Потом разрабатывается алгоритм (алгоритмизация), который записывается на языке программирования (программирование).
Полученная программа тестируется (отладка) и, если она на тестовых примерах работает корректно, выполняются расчеты.
Если числа из условия записаны в переменные rank, score, passingScore, russianLanguage, то получение можно получить, если:
rank ≤ 10 или score ≥ passingScore и russinaLanguage = 1
В C++ ИЛИ обозначается как ||, а И - как &&.
Код (C++):
#include <iostream>
int main() {
int rank, score, passingScore, russianLanguage;
std::cin >> rank >> score >> passingScore >> russianLanguage;
if ((rank <= 10) || ((score >= passingScore) && (russianLanguage == 1))) {
std::cout << "YES";
} else {
std::cout << "NO";
}
}