ВУЗ:
Составители:
4. Дан текстовый файл, содер
жащий слова, разделенные пробелами.
Вывести строку, предшествующую первой пустой строке, или
сообщение об отсутствии пустых строк.
5. Дан текстовый файл , содержащий последовательность слов
(алфавит - латинский ), разделенных одним или несколькими
пробелами. Заменить все строчные буквы на заглавные.
6. Дан текстовый файл Т 1, содержащий последовательность слов
(алфавит - латинский ) и целых чисел, разделенных одним или
несколькими пробелами. Скопировать файл Т 1 в текстовый файл Т 2,
удалив незначащие нули чисел в тексте.
7. Дан текстовый файл T1, содержащий слова, разделенные
пробелами. Проверить , совпадают ли первая и последняя строки
текста.
8. Дан текстовый файл , содержащий последовательность слов
(алфавит - латинский ), разделенных одним или несколькими
пробелами. Проверить, упорядочены ли слова в тексте по алфавиту .
9. Дан текстовый файл . Получить два текстовых файла: первый
содержит строки исходного файла с нечетными номерами, второй -
строки с четными номерами строк из исходного файла.
10. Дан текстовый файл, содержащий слова, разделенные пробелами
(алфавит - латинский ). Вывести буквы , входящие в текст не менее
двух раз .
11. Дан текстовый файл Т 1, содержащий слова, разделенные
пробелами. Скопировать его в текстовый файл Т 2, поменяв местами
первую и последнюю строки текста.
12. Дан текстовый файл, состоящий из слов , разделенных пробелами.
Удалить из текста слова, имеющие в своем составе букву, задаваемую
вводом.
13. Дан текстовый файл, состоящий из слов , разделенных пробелами.
Вывести слова, в которых n-ая буква совпадает с заданной. n и букву
определить вводом .
Со
ртировка элементов массива
Приведем примеры процедур, реализующих различные алгоритмы
внутренних сортировок.
Дано следующее описание данных:
Const N = 15; {Количество элементов в массиве}
MinKey = 0; {Минимальное значение ключа}
MaxKey = 100; { Максимальное значение ключа}
Type tIndex = 1..N; {Индексы в массиве}
tRange = MinKey..MaxKey; {Диапазон значений ключа}
tKey = tRange; {Тип ключа сортировки}
tElem = record {Тип элемента записи в массиве}
Key : tKey;
Other : Char;
end;
PtrElem = ^tElem; {Указатель на элемент}
tArray = array [tIndex] of PtrElem;
Сортировка элементов массива методом подсчета
Каждый элемент сравнивается со всеми остальными элементами.
Если какой-то элемент больше, чем k элементов , то он должен
занимать k
+1 место , следовательно, необходимо сравнить попарно все
ключи и подсчитать , сколько из них меньше каждого отдельного
ключа.
procedure Calculatoin (var A : tArray);
var i,j,k : Integer;
Count : array [tIndex] of 0..N; {Вспом
огательный массив
для подсчета}
Elem1,Elem2 : PtrElem;
begin
{Обнуление вспомогательного массива}
for i:=1 to N do Count[i]:=0;
{Формирование вспомогательного массива.}
{Сравнение каждого элемента с другими и подсчет, больше
скольких он}
for i:=N downto 2 do
9 40
Сортировка элементов массива 4. Дан текстовый файл, содержащий слова, разделенные пробелами. Вывести строку, предшествующую первой пустой строке, или Приведем примеры процедур, реализующих различные алгоритмы сообщение об отсутствии пустых строк. внутренних сортировок. 5. Дан текстовый файл, содержащий последовательность слов Дано следующее описание данных: (алфавит - латинский), разделенных одним или несколькими пробелами. Заменить все строчные буквы на заглавные. Const N = 15; {Количество элементов в массиве} MinKey = 0; {Минимальное значение ключа} 6. Дан текстовый файл Т1, содержащий последовательность слов MaxKey = 100; {Максимальное значение ключа} (алфавит - латинский) и целых чисел, разделенных одним или Type tIndex = 1..N; {Индексы в массиве} несколькими пробелами. Скопировать файл Т1 в текстовый файл Т2, tRange = MinKey..MaxKey; {Диапазон значений ключа} удалив незначащие нули чисел в тексте. tKey = tRange; {Тип ключа сортировки} tElem = record {Тип элемента записи в массиве} 7. Дан текстовый файл T1, содержащий слова, разделенные Key : tKey; пробелами. Проверить, совпадают ли первая и последняя строки Other : Char; текста. end; PtrElem = ^tElem; {Указатель на элемент} 8. Дан текстовый файл, содержащий последовательность слов tArray = array [tIndex] of PtrElem; (алфавит - латинский), разделенных одним или несколькими пробелами. Проверить, упорядочены ли слова в тексте по алфавиту. Сортировка элементов массива методом подсчета 9. Дан текстовый файл. Получить два текстовых файла: первый Каждый элемент сравнивается со всеми остальными элементами. содержит строки исходного файла с нечетными номерами, второй - Если какой-то элемент больше, чем k элементов, то он должен строки с четными номерами строк из исходного файла. занимать k+1 место, следовательно, необходимо сравнить попарно все ключи и подсчитать, сколько из них меньше каждого отдельного 10. Дан текстовый файл, содержащий слова, разделенные пробелами ключа. (алфавит - латинский). Вывести буквы, входящие в текст не менее двух раз. procedure Calculatoin (var A : tArray); var i,j,k : Integer; 11. Дан текстовый файл Т1, содержащий слова, разделенные Count : array [tIndex] of 0..N; {Вспомогательный массив пробелами. Скопировать его в текстовый файл Т2, поменяв местами для подсчета} первую и последнюю строки текста. Elem1,Elem2 : PtrElem; 12. Дан текстовый файл, состоящий из слов, разделенных пробелами. begin Удалить из текста слова, имеющие в своем составе букву, задаваемую {Обнуление вспомогательного массива} вводом. for i:=1 to N do Count[i]:=0; {Формирование вспомогательного массива.} 13. Дан текстовый файл, состоящий из слов, разделенных пробелами. {Сравнение каждого элемента с другими и подсчет, больше Вывести слова, в которых n-ая буква совпадает с заданной. n и букву скольких он} определить вводом. for i:=N downto 2 do 40 9
Страницы
- « первая
- ‹ предыдущая
- …
- 7
- 8
- 9
- 10
- 11
- …
- следующая ›
- последняя »