1-11 класс
  • 1-11 класс
  • 1 класс
  • 2 класс
  • 3 класс
  • 4 класс
  • 5 класс
  • 6 класс
  • 7 класс
  • 8 класс
  • 9 класс
  • 10 класс
  • 11 класс
Выберите класс
Предметы
Семакин
Работа 3.5 Упр.8 Задание 2 ГДЗ Семакин 10 класс (Информатика)
Семакин, Хеннер, Шеина
10 класс
Автор
Семакин, Хеннер, Шеина

Работа 3.5 Упр.8 Задание 2 ГДЗ Семакин 10 класс (Информатика)

Задача

Рассмотрим вариант решения задания из учебника Семакин, Хеннер, Шеина 10 класс, Бином: 8. Найти все натуральные n-значные числа, цифры в которых образуют строго возрастающую последовательность (например, 1234, 5789). *Цитирирование задания со ссылкой на учебник производится исключительно в учебных целях для лучшего понимания разбора решения задания. 10 semakin10 pract/3-5/zad2/8 98

Подробный ответ

Нужно вывести все натуральные $$n$$-значные числа, у которых каждая следующая цифра больше предыдущей. Для этого удобно:

  • перебрать все числа нужной длины;
  • проверять каждое число функцией, которая сравнивает соседние цифры справа налево;
  • если цифры образуют строго возрастающую последовательность, вывести число.

Проверка строгого возрастания выполняется так: берём последнюю цифру $$c$$, затем по очереди сравниваем её с предыдущей. Если для какой-то пары не выполняется условие $$\text{предыдущая цифра} < \text{следующая цифра}$$, число не подходит.

program Zadacha;
var n, i, k, a: integer;

function Vozr(n: integer): boolean;
var m, c: integer;
f: boolean;
begin
c := n mod 10;
m := n div 10;
f := true;
while (m > 0) and f do
begin
if m mod 10 >= c then f := false
else
begin
c := m mod 10;
m := m div 10;
end;
end;
Vozr := f;
end;

function IsMax(n: integer): boolean;
var m, a, c: integer;
f: boolean;
begin
f := false;
a := n mod 10;
if a = 9 then
begin
f := true;
m := n div 10;
while (m > 0) and f do
begin
c := m mod 10;
if c + 1 <> a then f := false
else m := m div 10;
a := c;
end;
end;
IsMax := f;
end;

begin
readln(n);
i := 1;
repeat
if Vozr(i) then write(i, ‘ ‘);
i := i + 1;
until IsMax(i — 1);
end.

Так как строго возрастающее число не может содержать более 9 цифр, перебор заканчивается на числе $$123456789$$.

Ответ

Программа выводит все натуральные $$n$$-значные числа, цифры которых образуют строго возрастающую последовательность.



Общая оценка
4.6 / 5
Другие учебники
Другие предметы