0 / 0 / 0
Регистрация: 18.12.2016
Сообщений: 13
1

Вывести на экран все последовательности длины n, состоящие из десятичных цифр, согласно условию

12.06.2019, 20:06. Показов 1623. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте. Помогите, пожалуйста, решить эту задачу:
Требуется вывести на экран все последовательности длины n, которые состоят из
десятичных цифр, и в которых нет двух и более единиц подряд, и нет трёх и более семерок подряд.
Напишите функцию или процедуру, на вход которой подаётся число n, и она решает данную задачу.
Пробую так, но выводятся не все числа, удовлетворяющие условию:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
var a:integer;
procedure find(n:integer);
var min,max,i,s,c,o,se:integer;
begin
min:=1;
max:=1;
for i:=1 to (n-1) do
min:=min*10;
for i:=1 to n do
max:=max*10;
max:=max-1;
for i:=min to max do
begin
for c:=1 to (length(inttostr(i))-1) do
begin
if (inttostr(i)[c]='1') and (inttostr(i)[c+1]='1') then
o:=1;
end;
for c:=1 to (length(inttostr(i))-2) do
begin
if (inttostr(i)[c]='7') and (inttostr(i)[c+1]='7') and (inttostr(i)[c+2]='7') then
se:=1;
end;
if (o<>1) and (se<>1) then
writeln(i);
end;
end;
begin
readln(a);
find(a);
end.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.06.2019, 20:06
Ответы с готовыми решениями:

Возвести числа озаданной последовательности в квадрат и вывести на экран согласно условию
Здравствуйте, помогите пожалуйста возвести числа от 10 до 20 в квадрат и вывести другим способом. ...

Вывести на экран все двузначные элементы матрицы, состоящие из разных цифр
вывести на экран все двузначные элементы массива состоящих из разных цифр (например 23)

Вывести на экран числа согласно условию
Вывести на экран числа следующим образом: 1 21 321 4321 54321 Помогите!:)

Вывести на экран количество десятичных цифр в числе
Ввести с клавиатуры натуральное число N (N&lt;109). Вывести на экран количество десятичных цифр в...

1
5077 / 2649 / 2349
Регистрация: 10.12.2014
Сообщений: 10,026
13.06.2019, 04:53 2
Лучший ответ Сообщение было отмечено smeshariki как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
procedure Gen(n : Integer; s : String);
begin
  if n = 0 then s.Print
  else
    for var i := '0' to '9' do
      begin
        var t := s+i;
        if Not t.contains('11') and Not t.contains('777') then Gen(n-1, t);
      end;
end;
 
begin
  Gen(ReadInteger,'');
end.
1
13.06.2019, 04:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.06.2019, 04:53
Помогаю со студенческими работами здесь

Вывести все правильные скобочные выражения длины N, состоящие из круглых и квадратных скобок
Здравствуйте! Решил данную задачу, но один тест не проходит по времени...Можно ли как-то...

Вывести все слова, состоящие только из цифр
Задание: ввести строку, конец ввода обозначен символом $ Вывести все цифровые слова, т.е. если...

Вывести на экран все возможные слова состоящие из К букв

Вывести на экран все слова сообщения, состоящие из n букв
вывести на экран все слова сообщения состоящие из n букв


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru