РЕБЯТА ПОМОГИТЕ ПОЖАЛУЙСТА ОЧЕНЬ НУЖНО!!!!!!! Программу ** паскале Задание I заочного...

0 голосов
4 просмотров

РЕБЯТА ПОМОГИТЕ ПОЖАЛУЙСТА ОЧЕНЬ НУЖНО!!!!!!! Программу на паскале Задание I заочного тура олимпиады по информатике 4 I заочного тура олимпиады по информатикеАгент 007 для выполнения очередного задания получает из Центра секретную информацию, после обработки которой образуется ПАРОЛЬ. Секретная информация содержит: 1) строку из 10 букв с порядковыми номерами 0..9; 2) количество передаваемых чисел; 3) сами числа. Если сложить все цифры в каждом числе, выйдут новые числа. Далее следует сложить все цифры в каждом из вновь полученных чисел. Процесс надо продолжать до тех пор, пока в результате не останутся числа меньше 10 Полученные числа от 0 до 9 – это номера букв в строке. Замена чисел буквами и дает ПАРОЛЬ. Напишите программу, которая поможет агенту 007 получить ПАРОЛЬ.


Информатика (57 баллов) | 4 просмотров
Дан 1 ответ
0 голосов

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.

(337 баллов)
0

Спасибо)))))))))))))