М.Э. Абрамян - Programming Taskbook (1157415), страница 17
Текст из файла (страница 17)
Дано зашифрованное предложение на русском языке (способ шифрования описан в задании String63) и его расшифрованный первый символ C.Найти кодовое смещение K и расшифровать предложение.String66. Дана строка-предложение. Зашифровать ее, поместив вначале всесимволы, расположенные на четных позициях строки, а затем, в обратномпорядке, все символы, расположенные на нечетных позициях (например,строка «Программа» превратится в «ргамамроП»).String67. Дано предложение, зашифрованное по правилу, описанному в задании String66. Расшифровать это предложение.String68. Дана строка, содержащая цифры и строчные латинские буквы.
Еслибуквы в строке упорядочены по алфавиту, то вывести 0; в противномслучае вывести номер первого символа строки, нарушающего алфавитныйпорядок.String69. Дана строка, содержащая латинские буквы и круглые скобки. Если скобки расставлены правильно (то есть каждой открывающей соот-Двоичные файлы79ветствует одна закрывающая), то вывести число 0. В противном случаевывести или номер позиции, в которой расположена первая ошибочная закрывающая скобка, или, если закрывающих скобок не хватает, число −1.String70◦ .
Дана строка, содержащая латинские буквы и скобки трех видов: «()», «[]», «{}». Если скобки расставлены правильно (то есть каждойоткрывающей соответствует закрывающая скобка того же вида), то вывести число 0. В противном случае вывести или номер позиции, в которойрасположена первая ошибочная скобка, или, если закрывающих скобокне хватает, число −1.Двоичные файлыУсловие вида «дан файл (целых чисел, вещественных чисел и т. д.)» означает, что в наборе исходных данных указано имя данного файла (текстоваястрока), а сам исходный файл существует и находится в текущем каталоге.Если существование исходных файлов требуется проверять в ходе выполнения задания, то это особо оговаривается в формулировке задания. Элементыисходных файлов следует считывать с помощью стандартных процедур используемого языка программирования.Если в задании требуется создать новый файл, то имя создаваемого файлатакже входит в набор исходных данных и обычно является последним элементом этого набора.
Записывать элементы в создаваемые (или модифицируемые)файлы следует с помощью стандартных процедур используемого языка программирования.Под размером типизированного файла всегда подразумевается количествосодержащихся в нем элементов указанного типа (а не количество байтов,как это принято в операционной системе). В заданиях предполагается, чтофайловые элементы нумеруются от 1, поэтому в языке Pascal для перехода кK-му элементу файла F необходимо использовать процедуру Seek(F, K − 1).Если о минимальном размере исходного файла в задании ничего не сказано, то предполагается, что он равен 2 (то есть файл содержит по крайнеймере два элемента).
Максимальный размер исходных файлов не устанавливается, поэтому при решении заданий не следует использовать вспомогательныемассивы, содержащие все элементы исходных файлов, однако допускается использование вспомогательных файлов.80М. Э. Абрамян. Электронный задачник Programming Taskbook 4.6Основные операции с двоичными файламиСоздание файла, ввод и вывод его элементовFile1. Дана строка S. Если S является допустимым именем файла, то создатьпустой файл с этим именем и вывести TRUE. Если файл с именем S создатьнельзя, то вывести FALSE.File2◦ . Дано имя файла и целое число N (> 1). Создать файл целых чисел сданным именем и записать в него N первых положительных четных чисел(2, 4, . . .).File3.
Дано имя файла и вещественные числа A и D. Создать файл вещественных чисел с данным именем и записать в него 10 первых членоварифметической прогрессии с начальным членом A и разностью D:A, A + D, A + 2·D, A + 3·D, . . . .File4. Даны имена четырех файлов. Найти количество файлов с указаннымиименами, которые имеются в текущем каталоге.File5. Дано имя файла целых чисел.
Найти количество элементов, содержащихся в данном файле. Если файла с таким именем не существует, товывести −1.File6. Дано целое число K и файл, содержащий неотрицательные целые числа.Вывести K-й элемент файла (элементы нумеруются от 1). Если такойэлемент отсутствует, то вывести −1.File7. Дан файл целых чисел, содержащий не менее четырех элементов. Вывести первый, второй, предпоследний и последний элементы данного файла.File8. Даны имена двух файлов вещественных чисел.
Известно, что первыйиз них существует и является непустым, а второй в текущем каталогеотсутствует. Создать отсутствующий файл и записать в него начальный иконечный элементы существующего файла (в указанном порядке).File9. Даны имена двух файлов вещественных чисел. Известно, что один изних (не обязательно первый) существует и является непустым, а другой втекущем каталоге отсутствует. Создать отсутствующий файл и записать внего конечный и начальный элементы существующего файла (в указанномпорядке).File10◦ .
Дан файл целых чисел. Создать новый файл, содержащий те же элементы, что и исходный файл, но в обратном порядке.File11. Дан файл вещественных чисел. Создать два новых файла, первыйиз которых содержит элементы исходного файла с нечетными номерамиДвоичные файлы81(1, 3, . . .), а второй — с четными (2, 4, .
. .).File12. Дан файл целых чисел. Создать два новых файла, первый из которыхсодержит четные числа из исходного файла, а второй — нечетные (в том жепорядке). Если четные или нечетные числа в исходном файле отсутствуют,то соответствующий результирующий файл оставить пустым.File13. Дан файл целых чисел. Создать два новых файла, первый из которыхсодержит положительные числа из исходного файла (в обратном порядке), а второй — отрицательные (также в обратном порядке). Если положительные или отрицательные числа в исходном файле отсутствуют, тосоответствующий результирующий файл оставить пустым.File14.
Дан файл вещественных чисел. Найти среднее арифметическое егоэлементов.File15. Дан файл вещественных чисел. Найти сумму его элементов с четныминомерами.File16. Дан файл целых чисел. Найти количество содержащихся в нем серий (то есть наборов последовательно расположенных одинаковых элементов). Например, для файла с элементами 1, 5, 5, 5, 4, 4, 5 результатравен 4.File17. Дан файл целых чисел. Создать новый файл целых чисел, содержащийдлины всех серий исходного файла (серией называется набор последовательно расположенных одинаковых элементов, а длиной серии — количество этих элементов).
Например, для исходного файла с элементами 1, 5,5, 5, 4, 4, 5 содержимое результирующего файла должно быть следующим:1, 3, 2, 1.File18. Дан файл вещественных чисел. Найти его первый локальный минимум (локальным минимумом называется элемент, который меньше своихсоседей).File19. Дан файл вещественных чисел.
Найти его последний локальный максимум (локальным максимумом называется элемент, который больше своихсоседей).File20. Дан файл вещественных чисел. Найти общее количество его локальных экстремумов, то есть локальных минимумов и локальных максимумов (определения локального минимума и локального максимума даны взаданиях File18 и File19).File21. Дан файл вещественных чисел. Создать файл целых чисел, содержащий номера всех локальных максимумов исходного файла в порядке82М. Э.
Абрамян. Электронный задачник Programming Taskbook 4.6возрастания (определение локального максимума дано в задании File19).File22. Дан файл вещественных чисел. Создать файл целых чисел, содержащий номера всех локальных экстремумов исходного файла в порядкеубывания (определение локального экстремума дано в задании File20).File23. Дан файл вещественных чисел.
Создать файл целых чисел, содержащий длины всех убывающих последовательностей элементов исходногофайла. Например, для исходного файла с элементами 1.7, 4.5, 3.4, 2.2,8.5, 1.2 содержимое результирующего файла должно быть следующим:3, 2.File24. Дан файл вещественных чисел. Создать файл целых чисел, содержащий длины всех монотонных последовательностей элементов исходногофайла. Например, для исходного файла с элементами 1.7, 4.5, 3.4, 2.2,8.5, 1.2 содержимое результирующего файла должно быть следующим: 2,3, 2, 2.Преобразование файлаFile25◦ . Дан файл вещественных чисел.
Заменить в нем все элементы на ихквадраты.File26. Дан файл вещественных чисел. Поменять в нем местами минимальныйи максимальный элементы.File27◦ . Дан файл целых чисел с элементами A1 , A2 , . . ., AN (N — количествоэлементов в файле). Заменить исходное расположение его элементов наследующее:A1 , AN , A2 , AN −1 , A3 , . . . .File28. Дан файл вещественных чисел. Заменить в файле каждый элемент, кроме начального и конечного, на его среднее арифметическое с предыдущими последующим элементом.File29. Дан файл целых чисел, содержащий более 50 элементов. Уменьшитьего размер до 50 элементов, удалив из файла необходимое количествоконечных элементов.File30.
Дан файл целых чисел, содержащий четное количество элементов.Удалить из данного файла вторую половину элементов.File31. Дан файл целых чисел, содержащий более 50 элементов. Уменьшитьего размер до 50 элементов, удалив из файла необходимое количествоначальных элементов.Двоичные файлы83File32. Дан файл целых чисел, содержащий четное количество элементов.Удалить из данного файла первую половину элементов.File33. Дан файл целых чисел.
Удалить из него все элементы с четными номерами.File34. Дан файл целых чисел. Удалить из него все отрицательные числа.File35. Дан файл целых чисел, содержащий менее 50 элементов. Увеличить егоразмер до 50 элементов, записав в начало файла необходимое количествонулей.File36. Дан файл целых чисел. Удвоить его размер, записав в конец файла всеего исходные элементы (в том же порядке).File37. Дан файл целых чисел.