Программу на паскале i заочного тура олимпиады по информатике 4 i заочного тура олимпиады по информатикеагент 007 для выполнения очередного получает из центра секретную информацию, после обработки которой образуется пароль. секретная информация содержит: 1) строку из 10 букв с порядковыми номерами 0..9; 2) количество передаваемых чисел; 3) сами числа. если сложить все цифры в каждом числе, выйдут новые числа. далее следует сложить все цифры в каждом из вновь полученных чисел. процесс надо продолжать до тех пор, пока в результате не останутся числа меньше 10 полученные числа от 0 до 9 – это номера букв в строке. замена чисел буквами и дает пароль. напишите программу, которая агенту 007 получить пароль.

amirgrossman amirgrossman    3   02.10.2019 03:50    1

Ответы
temur4 temur4  09.10.2020 11:08

function SumNums(i: integer): integer;

begin

 

 while i > 9 do

   i := i.ToString.Select(ch->integer.Parse(ch)).Sum;

 

 Result := i;

end;

 

begin

 var s := ReadlnString('Строка из 10 символов =');

 ReadSeqInteger('Числа:', ReadInteger('кол-во чисел ='))

 .Select(SumNums)

 .Select(n->s[n+1])

 .Print;

end.

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика