ВУЗ:
Составители:
файла;
- копирование файлов с частичным преобразованием строк (слов ,
литер);
-
сортировка строк (слов , литер в строках ) по заданному ключу или
признаку.
С. Обработка линейных динамических структур данных (списков ):
- формирование списков ;
-
поиск (замена, преобразование, удаление ) элемента цепочки по
заданному признаку;
-
поиск (замена, преобразование, удаление ) компоненты элемента
цепочки по заданному признаку ;
- копирование списков с частичным преобразованием элементов ;
- сортировка списков по заданному ключу или признаку.
D. Обработка массивов :
- арифметические преобразования компонент массива (скалярное
произведение строк и столбцов , произведение матриц );
-
поиск (замена, преобразование) строк (столбцов , элементов ) по
заданному признаку;
-
копирование массивов с преобразованием строк (столбцов ,
элементов );
-
сортировка строк (столбцов ), элементов в строках (столбцах ) по
заданному ключу или признаку.
2. ВАРИАНТЫ ЗАДАНИЙ
1. Дан текстовый файл, содержащий последовательность слов
(алфавит - латинский ), разделенных одним или несколькими
пробелами, которая заканчивается точкой.
Вывести слова наибольшей длины . (Длина слова - количество литер
в слове).
2. Дан текстовый файл, содержащий последовательность слов
(алфавит - латинский ), разделенных одним или несколькими
пробелами, которая заканчивается точкой.
Вывести последнее из слов наибольшей длины . (Длина слова -
количество литер в слове).
3. Дан текстовый файл T1. Переписать его в текстовый файл Т 2,
удалив N-ю строку исходного файла. N задается вводом с клавиатуры .
for
j:=1
to
i
-
1
do
if A[i]^.Key>=A[j]^.Key then
Count[i]:=Count[i]+1
else
Count[j]:=Count[j]+1;
{Расстановка элементов исходного массива по своим местам на
основании вспомогательного массива}
i:=1;
while i<=N do
begin
elem1:=A[i]; j:=Count[i]+1;
while i<>j do
begin
elem2:=A[j]; A[j]:=elem1; elem1:=elem2;
k:=Count[j]+1; Count[j]:=j-1; j:=k;
end;
A[i]:=elem1; count[i]:=i-1; i:=i+1
end
end;
Сортировки вставками
Элементы просматриваются по одному, и каждый новый элемент
вставляется в подходящее место среди ранее упорядоченных
элементов .
Сортировка простыми вставками
Пусть на i-ом шаге алгоритма последовательность из i-1 первых
элементов массива упорядочена. Добавление i-го элемента в эту
последовательность производится упорядоченно: элемент, который
надо вставить , сравнивается с предыдущими, до тех пор пока не
найдется место i-го элемента.
procedure Simple_Insert (var A : tArray);
var i,j : Integer;
Elem : PtrElem;
begin
{вставляем i-ый элемент}
for i:=2 to N do
begin
{j – номер элемента, с которым сравниваем i-ый}
8 41
файла; for j:=1 to i-1 do
- копирование файлов с частичным преобразованием строк (слов, if A[i]^.Key>=A[j]^.Key then
литер); Count[i]:=Count[i]+1
- сортировка строк (слов, литер в строках) по заданному ключу или else
признаку. Count[j]:=Count[j]+1;
С. Обработка линейных динамических структур данных (списков): {Расстановка элементов исходного массива по своим местам на
- формирование списков; основании вспомогательного массива}
- поиск (замена, преобразование, удаление) элемента цепочки по i:=1;
заданному признаку; while i<=N do
- поиск (замена, преобразование, удаление) компоненты элемента begin
цепочки по заданному признаку; elem1:=A[i]; j:=Count[i]+1;
- копирование списков с частичным преобразованием элементов; while i<>j do
- сортировка списков по заданному ключу или признаку. begin
D. Обработка массивов: elem2:=A[j]; A[j]:=elem1; elem1:=elem2;
- арифметические преобразования компонент массива (скалярное k:=Count[j]+1; Count[j]:=j-1; j:=k;
произведение строк и столбцов, произведение матриц); end;
- поиск (замена, преобразование) строк (столбцов, элементов) по A[i]:=elem1; count[i]:=i-1; i:=i+1
заданному признаку; end
- копирование массивов с преобразованием строк (столбцов, end;
элементов); Сортировки вставками
- сортировка строк (столбцов), элементов в строках (столбцах) по
заданному ключу или признаку. Элементы просматриваются по одному, и каждый новый элемент
вставляется в подходящее место среди ранее упорядоченных
элементов.
2. ВАРИАНТЫ ЗАДАНИЙ
Сортировка простыми в ставками
1. Дан текстовый файл, содержащий последовательность слов
(алфавит - латинский), разделенных одним или несколькими Пусть на i-ом шаге алгоритма последовательность из i-1 первых
пробелами, которая заканчивается точкой. элементов массива упорядочена. Добавление i-го элемента в эту
Вывести слова наибольшей длины. (Длина слова - количество литер последовательность производится упорядоченно: элемент, который
в слове). надо вставить, сравнивается с предыдущими, до тех пор пока не
найдется место i-го элемента.
2. Дан текстовый файл, содержащий последовательность слов
(алфавит - латинский), разделенных одним или несколькими procedure Simple_Insert (var A : tArray);
пробелами, которая заканчивается точкой. var i,j : Integer;
Вывести последнее из слов наибольшей длины. (Длина слова - Elem : PtrElem;
количество литер в слове). begin
{вставляем i-ый элемент}
3. Дан текстовый файл T1. Переписать его в текстовый файл Т2, for i:=2 to N do
удалив N-ю строку исходного файла. N задается вводом с клавиатуры. begin
{j – номер элемента, с которым сравниваем i-ый}
8 41
Страницы
- « первая
- ‹ предыдущая
- …
- 6
- 7
- 8
- 9
- 10
- …
- следующая ›
- последняя »
