Написать функцию которая в непустом перечне L меняет местами 1-ый и
Написать процедуру которая в непустом списке L меняет местами 1-ый и последний элементы и вставить её в данную программу.
Задать свой вопрос1 ответ
Дарина Нурумова
type
nbsp;nbsp;zap = record
nbsp;nbsp;nbsp;nbsp;fam: string[10];
nbsp;nbsp;nbsp;nbsp;im: string[7];
nbsp;nbsp;nbsp;nbsp;otc: string[13];
nbsp;nbsp;end;
nbsp;nbsp;ukaz = ^element;
nbsp;nbsp;element = record
nbsp;nbsp;nbsp;nbsp;inf: zap;
nbsp;nbsp;nbsp;nbsp;next: ukaz;
nbsp;nbsp;end;
nbsp;
var
nbsp;nbsp;newE, left, right, temp: ukaz;
nbsp;nbsp;z: zap;
nbsp;nbsp;number: integer;
nbsp;
function InputZ : zap;
var
nbsp;nbsp;z : zap;
begin
nbsp;nbsp;writeln(Введите фамилию студента);
nbsp;nbsp;readln(z.fam);
nbsp;nbsp;writeln(Введите имя студента);
nbsp;nbsp;readln(z.im);
nbsp;nbsp;writeln(Введите отчество студента);
nbsp;nbsp;readln(z.otc);
nbsp;nbsp;InputZ := z;
end;
nbsp;
procedure dob(var first, last : ukaz);
var
nbsp;nbsp;z : zap;
begin
nbsp;nbsp;z := InputZ;
nbsp;nbsp;if first = nil then
nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;New(first);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;last := first;
nbsp;nbsp;nbsp;nbsp;end
nbsp;nbsp;else
nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;New(last^.next);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;last := last^.next;
nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;last^.inf := z;
nbsp;nbsp;last^.next := nil;
end;
nbsp;
procedure org(var first, last : ukaz);
var
nbsp;nbsp;answer : String;
begin
nbsp;nbsp;writeln(Производится процедура организации очереди);
nbsp;nbsp;repeat
nbsp;nbsp;nbsp;nbsp;WriteLn;
nbsp;nbsp;nbsp;nbsp;WriteLn(Желаете добавить студента? 1 - да / 0 - нет);
nbsp;nbsp;nbsp;nbsp;ReadLn(answer);
nbsp;nbsp;nbsp;nbsp;if Length(answer) = 1 then
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;case answer[1] of
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;1 : dob(first, last);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;0 : Exit;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;until False;
end;
nbsp;
procedure udal(var first, last : ukaz);
var
nbsp;nbsp;tmp : ukaz;
begin
nbsp;nbsp;writeln(Исключение основного элемента очереди);
nbsp;nbsp;if first = nil then
nbsp;nbsp;nbsp;nbsp;WriteLn(Операция невозможна: очередь пуста!)
nbsp;nbsp;else
nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;tmp := first;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;first := first^.next;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;dispose(tmp);
nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;writeln(Нажмите кнопку Enter);
nbsp;nbsp;readln;
end;
nbsp;
procedure prosmotr(cur : ukaz);
var
nbsp;nbsp;i : integer;
nbsp;nbsp;z : zap;
begin
nbsp;nbsp;if cur = nil then
nbsp;nbsp;nbsp;nbsp;WriteLn(Очередь пуста!)
nbsp;nbsp;else
nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;writeln(Очередь содержит последующие элементы);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;i := 0;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;while cur lt;gt; nil do
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;inc(i);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;z := cur^.inf;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;writeln(i, ), z.fam, , z.im, , z.otc);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;cur := cur^.next;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;writeln(Нажмите кнопку Enter);
nbsp;nbsp;readln;
end;
nbsp;
procedure SwapFirstAndLast(var first, last : ukaz);
var
nbsp;nbsp;tmp : ukaz;
begin
nbsp;nbsp;if first = nil then WriteLn(Очередь пуста!)
nbsp;nbsp;else if first = last then WriteLn(1-ый = заключительному!)
nbsp;nbsp;else
nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;tmp := first;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;while tmp^.next lt;gt; last do tmp := tmp^.next;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;last^.next := first^.next;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;tmp^.next := first;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;first^.next := nil;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;tmp := last; last := first; first := tmp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;prosmotr(first);
nbsp;nbsp;nbsp;nbsp;end;
end;
nbsp;
--------------------------------------------------------------------
var
nbsp;nbsp;first, last : ukaz;
begin
nbsp;nbsp;first := nil;
nbsp;nbsp;last nbsp;:= nil;
nbsp;nbsp;repeat
nbsp;nbsp;nbsp;nbsp;writeln(1-организация очереди);
nbsp;nbsp;nbsp;nbsp;writeln(2-прибавление элемента в очередь);
nbsp;nbsp;nbsp;nbsp;writeln(3-удаление элемента из очереди);
nbsp;nbsp;nbsp;nbsp;writeln(4-просмотр очереди);
nbsp;nbsp;nbsp;nbsp;writeln(5 - поменять 1-ый и заключительный элементы);
nbsp;nbsp;nbsp;nbsp;writeln(0-выход);
nbsp;nbsp;nbsp;nbsp;writeln(------------------);
nbsp;nbsp;nbsp;nbsp;writeln(введите номер пт меню);
nbsp;nbsp;nbsp;nbsp;readln(number);
nbsp;nbsp;nbsp;nbsp;case number of
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;1: org(first, last);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;2: dob(first, last);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;3: udal(first, last);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;4: prosmotr(first);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;5: SwapFirstAndLast(first, last);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;0: halt;
nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;until False;
end.
nbsp;nbsp;zap = record
nbsp;nbsp;nbsp;nbsp;fam: string[10];
nbsp;nbsp;nbsp;nbsp;im: string[7];
nbsp;nbsp;nbsp;nbsp;otc: string[13];
nbsp;nbsp;end;
nbsp;nbsp;ukaz = ^element;
nbsp;nbsp;element = record
nbsp;nbsp;nbsp;nbsp;inf: zap;
nbsp;nbsp;nbsp;nbsp;next: ukaz;
nbsp;nbsp;end;
nbsp;
var
nbsp;nbsp;newE, left, right, temp: ukaz;
nbsp;nbsp;z: zap;
nbsp;nbsp;number: integer;
nbsp;
function InputZ : zap;
var
nbsp;nbsp;z : zap;
begin
nbsp;nbsp;writeln(Введите фамилию студента);
nbsp;nbsp;readln(z.fam);
nbsp;nbsp;writeln(Введите имя студента);
nbsp;nbsp;readln(z.im);
nbsp;nbsp;writeln(Введите отчество студента);
nbsp;nbsp;readln(z.otc);
nbsp;nbsp;InputZ := z;
end;
nbsp;
procedure dob(var first, last : ukaz);
var
nbsp;nbsp;z : zap;
begin
nbsp;nbsp;z := InputZ;
nbsp;nbsp;if first = nil then
nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;New(first);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;last := first;
nbsp;nbsp;nbsp;nbsp;end
nbsp;nbsp;else
nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;New(last^.next);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;last := last^.next;
nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;last^.inf := z;
nbsp;nbsp;last^.next := nil;
end;
nbsp;
procedure org(var first, last : ukaz);
var
nbsp;nbsp;answer : String;
begin
nbsp;nbsp;writeln(Производится процедура организации очереди);
nbsp;nbsp;repeat
nbsp;nbsp;nbsp;nbsp;WriteLn;
nbsp;nbsp;nbsp;nbsp;WriteLn(Желаете добавить студента? 1 - да / 0 - нет);
nbsp;nbsp;nbsp;nbsp;ReadLn(answer);
nbsp;nbsp;nbsp;nbsp;if Length(answer) = 1 then
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;case answer[1] of
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;1 : dob(first, last);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;0 : Exit;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;until False;
end;
nbsp;
procedure udal(var first, last : ukaz);
var
nbsp;nbsp;tmp : ukaz;
begin
nbsp;nbsp;writeln(Исключение основного элемента очереди);
nbsp;nbsp;if first = nil then
nbsp;nbsp;nbsp;nbsp;WriteLn(Операция невозможна: очередь пуста!)
nbsp;nbsp;else
nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;tmp := first;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;first := first^.next;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;dispose(tmp);
nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;writeln(Нажмите кнопку Enter);
nbsp;nbsp;readln;
end;
nbsp;
procedure prosmotr(cur : ukaz);
var
nbsp;nbsp;i : integer;
nbsp;nbsp;z : zap;
begin
nbsp;nbsp;if cur = nil then
nbsp;nbsp;nbsp;nbsp;WriteLn(Очередь пуста!)
nbsp;nbsp;else
nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;writeln(Очередь содержит последующие элементы);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;i := 0;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;while cur lt;gt; nil do
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;inc(i);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;z := cur^.inf;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;writeln(i, ), z.fam, , z.im, , z.otc);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;cur := cur^.next;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;writeln(Нажмите кнопку Enter);
nbsp;nbsp;readln;
end;
nbsp;
procedure SwapFirstAndLast(var first, last : ukaz);
var
nbsp;nbsp;tmp : ukaz;
begin
nbsp;nbsp;if first = nil then WriteLn(Очередь пуста!)
nbsp;nbsp;else if first = last then WriteLn(1-ый = заключительному!)
nbsp;nbsp;else
nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;tmp := first;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;while tmp^.next lt;gt; last do tmp := tmp^.next;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;last^.next := first^.next;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;tmp^.next := first;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;first^.next := nil;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;tmp := last; last := first; first := tmp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;prosmotr(first);
nbsp;nbsp;nbsp;nbsp;end;
end;
nbsp;
--------------------------------------------------------------------
var
nbsp;nbsp;first, last : ukaz;
begin
nbsp;nbsp;first := nil;
nbsp;nbsp;last nbsp;:= nil;
nbsp;nbsp;repeat
nbsp;nbsp;nbsp;nbsp;writeln(1-организация очереди);
nbsp;nbsp;nbsp;nbsp;writeln(2-прибавление элемента в очередь);
nbsp;nbsp;nbsp;nbsp;writeln(3-удаление элемента из очереди);
nbsp;nbsp;nbsp;nbsp;writeln(4-просмотр очереди);
nbsp;nbsp;nbsp;nbsp;writeln(5 - поменять 1-ый и заключительный элементы);
nbsp;nbsp;nbsp;nbsp;writeln(0-выход);
nbsp;nbsp;nbsp;nbsp;writeln(------------------);
nbsp;nbsp;nbsp;nbsp;writeln(введите номер пт меню);
nbsp;nbsp;nbsp;nbsp;readln(number);
nbsp;nbsp;nbsp;nbsp;case number of
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;1: org(first, last);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;2: dob(first, last);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;3: udal(first, last);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;4: prosmotr(first);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;5: SwapFirstAndLast(first, last);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;0: halt;
nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;until False;
end.
, оставишь ответ?
Похожие вопросы
-
Вопросы ответы
Новое
NEW
Статьи
Информатика
Статьи
Последние вопросы
Математика, задано на каникулы. ВАРИАНТ 1004
НОМЕР 1,2,3,4,5,6,7,8.
Математика.
Имеются три конденсатора емкостью С1=1мкФ, С2=2мкФ и С3=3мкФ. Какую наименьшую емкость
Физика.
Из точки м выходят 3 луча MP MN и MK причём
Геометрия.
выпиши в свою тетрадь те правила этикета которые тебе не были
Разные вопросы.
Анна хорошо учится у неё много подруг свободное от учёбы время
Обществознание.
10) Килограмм конфет дороже килограмма печенья на 52 р. За 8
Математика.
Во сколько раз число атомов кислорода в земной коре больше числа
Химия.
Составить монолог от имени дневника двоечника 7-10 предложений
Русский язык.
Рассматривая литературный язык как сложное взаимодействие книжного языка и разговорного,В.И.Чернышёв горячо
Разные вопросы.
Арабы входят в __________________ групп народов. Местом расселения арабов с незапамятных
Разные вопросы.
Облако тегов