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