В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
ruslan428
ruslan428
19.01.2023 03:19 •  Информатика

Есть слово из 8 букв «КАМЕНЩИК», его буквы нумеруются, начиная с 1. Некоторая программа меняет местами буквы слова следующим образом: буква на 1 месте занимает 2 место, буква на 2 месте занимает 7 место, буква на 3 месте занимает 6 место, буква на 4 месте занимает 5 место, буква на 5 месте занимает 3 место, буква на 6 месте занимает 4 место, буква на 7 месте занимает 1 место, наконец, 8 буква остаётся на месте , т. е. после выполнения программы слово станет таким «ИКНЩЕМАК». Предположим, что мы выполнили программу для слова «КАМЕНЩИК» ровно n раз, но хотя бы один (n>0). Для какого минимального n мы получим слово в первоначальном виде? В ответ запишите число.

Показать ответ
Ответ:
MaxPositiv
MaxPositiv
12.02.2021 22:19

Кол-во перестановок = 12

Объяснение:

Изначальное - 12345678

Нужно узнать кол-во перестановок, после которых число превратится в изначальное.

71564328  (Кол-во перестановок - 1)

27436518  (Кол-во перестановок - 2)

12653478  (Кол-во перестановок - 3)

71345628  (Кол-во перестановок - 4)

27564318  (Кол-во перестановок - 5)

12436578  (Кол-во перестановок - 6)

71653428  (Кол-во перестановок - 7)

27345618  (Кол-во перестановок - 8)

12564378  (Кол-во перестановок - 9)

71436528  (Кол-во перестановок - 10)

27653418  (Кол-во перестановок - 11)

12345678  (Кол-во перестановок - 12)

Программа Pascal:

var

 a,b:array[1..8] of integer;

 n,s,t:integer;

begin

   n:=1;

 for var i1:=1 to 8 do begin

   a[i1]:=i1;

   end;

 writeln('Изначальное - ',a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8]);

 while t=0 do begin

   s:=s+1;

   

   b[2]:=a[1];

   b[7]:=a[2];

   b[6]:=a[3];

   b[5]:=a[4];

   b[3]:=a[5];

   b[4]:=a[6];

   b[1]:=a[7];

   b[8]:=a[8];

   

   for var i2:=1 to 8 do a[i2]:=b[i2];

   write(a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8]);

   writeln('  (Кол-во перестановок - ',s,')');

   if (a[1]=1) and (a[2]=2) and (a[3]=3) and (a[4]=4) and (a[5]=5) and (a[6]=6) and (a[7]=7) and (a[8]=8) then t:=1;

   end;

end.

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота