Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/15: Рейтинг темы: голосов - 15, средняя оценка - 4.53
0 / 0 / 0
Регистрация: 12.05.2021
Сообщений: 80

Жители государства "Знание-сила" очень любят математические головоломки. Даже тот, кто желает получить въездную визу в и

21.05.2021, 21:52. Показов 3056. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Жители государства "Знание-сила" очень любят математические головоломки. Даже тот, кто желает получить въездную визу в их страну, должен решить задачу - отыскать ключевое слово. Во входном файле в первой строке алфавит государства – десять букв, расположенных по возрастанию порядковых номеров без пробелов. Во второй строке - количество чисел для поиска ключевого слова. Следующие N строк - натуральные числа, каждое из которых состоит не более чем из 255 цифр. По каждому числу определяется буква - ее номер в алфавите (как цифровой корень числа N). Для этого вычисляется сумма цифр числа N, затем сумма цифр полученного числа и так до тех пор, пока не получится число, которое меньше 10. Это число и есть номер буквы в алфавите. В выходном файле - ключевое слово.
Например:
Входной файл(txt):
АГЕИКЛМОРТ
4
8267
19929
54262
000000000000000
Выходной(txt):
ЛИГА
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.05.2021, 21:52
Ответы с готовыми решениями:

Знание - сила!
Баг пофиксили. Закрывайте тему. Читаем тут!


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

Или воспользуйтесь поиском по форуму:
6
 Аватар для canadamoscow
1179 / 430 / 194
Регистрация: 23.03.2020
Сообщений: 1,021
Записей в блоге: 1
22.05.2021, 05:27
Лучший ответ Сообщение было отмечено Ангелина1 как решение

Решение

Pascal
1
2
3
4
5
6
7
##
WriteAllText('input.txt',  'АГЕИКЛМОРТ'+NewLine+'4'+NewLine+'8267'
+NewLine+'19929'+NewLine+'54262'+NewLine+'000000000000000');
 
var f := ReadAllLines('input.txt');
f[2:].ForEach(i-> begin while i.Length > 1 do i := i.Sum(t-> t.toDigit).toString;
  write(f[0][i.ToInteger+1]) end)
0
0 / 0 / 0
Регистрация: 12.05.2021
Сообщений: 80
22.05.2021, 10:32  [ТС]
А как сделать,чтобы вывод (т. е. слово ЛИГА) отправлялся в блокнот.
0
 Аватар для canadamoscow
1179 / 430 / 194
Регистрация: 23.03.2020
Сообщений: 1,021
Записей в блоге: 1
22.05.2021, 11:10
Лучший ответ Сообщение было отмечено Ангелина1 как решение

Решение

Pascal
1
2
3
4
##
var f := ReadAllLines('input.txt');
WriteAllText('output.txt',  f[2:].Select(i-> begin while i.Length > 1 do i := i.Sum(t-> t.toDigit).toString;
  Result := f[0][i.ToInteger+1] end).JoinToString)
0
0 / 0 / 0
Регистрация: 12.05.2021
Сообщений: 80
22.05.2021, 11:24  [ТС]
А можете дать обоснование последней программы,чтобы было понимание у меня?
0
 Аватар для canadamoscow
1179 / 430 / 194
Регистрация: 23.03.2020
Сообщений: 1,021
Записей в блоге: 1
22.05.2021, 12:45
Лучший ответ Сообщение было отмечено Ангелина1 как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
##
var f := ReadAllLines('input.txt'); // f присвоить массив строк = [строка 1 из файла, строка 2 из файла, ...]
WriteAllText('output.txt',  //записать в текстовый файл, текстовую строку идущую после запятой
f[2:]. //делаем срез переменной f, первые две строки f[0] и f[1] пропускаем
Select(i-> //преобразовываем каждый эмемент массива f[2:]; переменной i присваиваем поочередно строки из массива
begin while i.Length > 1 do //пока длина строки i больше единицы, делаем..
  i := i.Sum(t-> t.toDigit).toString; //преобразование i: 8267'→ 8+2+6+7→'26'→2+6→'8', и т.д.
Result := f[0][i.ToInteger+1] end) //запоминаем в результирующем массиве буквы из f[0] с индексом  8+1, и т.д.
.JoinToString);//результирующий массив букв ['Л','И','Г','А'] объединяем и преобразовываем в текстовую строку 'ЛИГА'
0
0 / 0 / 0
Регистрация: 12.05.2021
Сообщений: 80
22.05.2021, 13:39  [ТС]
Большое спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru