RSS    

   Курсовая работа: Динамические структуры данных. Решение задач. Стек. Очередь. Дек

begin

y:=random-random;

push;

end;

list; Writeln;

for i:=1 to n do

begin

push);

pop;

end;

writeln;

readln;

for i:=1 to n do

begin

if) mod f=0 then

push);

pop;

end;

writeln;

list;

3.  Дан стек, содержащий целые числа. Используя второй стек, записать в дно стека номер один сумму всех элементов.

randomize;

init;

init;

for i:=1 to n-1 do

begin

y:=random-random;

push;

end;

list; Writeln;

f:=0;

for i:=1 to n-1 do

begin

f:=f+stacktop;

push);

pop;

end;

push;

for i:=1 to n-1 do

begin

push);

pop;

end;

list;

writeln;

4.  Удалить из стека, который составлен из целых чисел заданных случайным образом, каждый второй элемент. На дне находится первый элемент.

randomize;

init;

init;

for i:=1 to n do begin

y:=random;

push; end;

list; writeln;

while not emptydo begin

pop;

push);

end;

while not emptydo begin

push); end;

list; writeln;

5.  Дан стек из целых чисел, заполненный случайным образом. При помощи второго стека удалить последний отрицательный элемент.

randomize;

init;

init;

for i:=1 to n do begin

y:=random-random;

push; end;

list;

y:=0;

while not empty do begin

if <0) and then begin pop; y:=1; end;

push);

end;

list;

while not empty do

push);

list;

6.  Дан стек заполненный элементами типа typeelem. Удалить из стека предпоследний элемент.

randomize;

init;

for i:=1 to n do

begin

y:=random-random;

push;

end;

list; Writeln;

y:=pop;

pop;

push;

list; Writeln;

7.  Дан стек заполненный элементами типа typeelem. Удалить из стека первый элемент и поместить его в вершину стека номер один.

randomize;

init;

init;

for i:=1 to n do

begin

y:=random-random;

push;

end;

list; Writeln;

repeat

y:=pop;

push;

until empty;

f:=pop;

repeat

y:=pop;

push;

until empty;

push;

list; Writeln;

8.  Дан стек из целых чисел, заполненный случайным образом. Поместить вершину стека в дно, используя вспомогательный стек.

randomize;

init;

init;

for i:=1 to n do

begin

y:=random-random;

push;

end;

list; Writeln;

f:=pop;

repeat

y:=pop;

push;

until empty;

push;

repeat

y:=pop;

push;

until empty;

list; Writeln;

9.  Дан стек заполненный случайным образом из целых чисел. Поменять в данном стеке содержимое вершины и дна.

randomize;

init;

init;

for i:=1 to n do

begin

y:=random-random;

push;

end;

list; Writeln;

f1:=pop;

repeat

y:=pop;

push;

until empty;

f2:=pop;

push;

repeat

y:=pop;

push;

until empty;

push;

list; Writeln;

10.  Дан стек из целых чисел, заполненный случайными образом. Сравнить сумму положительных элементов с модулем суммы отрицательных элементов.

randomize;

init;

init;

w:=1; w1:=1;

for i:=1 to n do begin

y:=random-random;

push; end;

list;

f:=true;

while not empty do begin

y:=pop;

if y>0 then w:=w*y

else w1:=w1*abs;

push;

end;

if w<w1 then writeln

else writeln;

while not empty do begin

y:=pop;

push; end;

list;

11.  Дан стек из целых чисел. Поместить в дно стека сумму модулей всех элементов.

randomize;

init;

init;

for i:=1 to n-1 do

begin

y:=random-random;

push;

end;

list; Writeln;

f:=0;

for i:=1 to n-1 do

begin

f:=f+abs);

push);

pop;

end;

push;

for i:=1 to n-1 do

begin

push);

pop;

end;

list;

writeln;

12.  Дан стек из целых чисел. Поместить в дно стека произведение всех элементов.

randomize;

init;

init;

for i:=1 to n-1 do

begin

y:=random-random;

push;

end;

list; Writeln;

f:=1;

for i:=1 to n-1 do

begin

f:=f*abs);

push);

pop;

end;

push;

for i:=1 to n-1 do

begin

push);

pop;

end;

list;

writeln;

13.  Дан стек, заполненный случайными числами. Вычесть из всех элементов стека число вводимое с клавиатуры. Используйте второй стек для хранения данных.

randomize;

init;

init;

for i:=1 to n do

begin

y:=random-random;

push;

end;

list; Writeln;

Writeln;

readln;

for i:=1 to n do

begin

y:=stacktop-f;

push;

pop;

end;

push;

for i:=1 to n do

begin

push);

pop;

end;

list;

14.  Дан стек из целых чисел. Прибавить ко всем элементам число вводимое с клавиатуры.

15.  В стек записаны элементы типа typeelem. Записать содержимое стека в обратном порядке в тот же стек. Используйте два вспомогательных стека.

randomize;

init;

init;

init;

for i:=1 to n do

begin

y:=random-random;

push;

end;

list; Writeln;

for i:=1 to n do

begin

push);

pop;

end;

for i:=1 to n do

begin

push);

pop;

end;

for i:=1 to n do

begin

push);

pop;

end;

list;

16.  В стек записаны элементы типа typeelem. Поменять в стеке первый элемент со вторым, третий с четвертым, и так далее. Если стек содержит нечетное количество элементов, то оставить его на месте.

init;

init;

init;

for i:=1 to n do

push;

list; Writeln;

while not emptydo begin

push);

push);

end;

while not or empty) do begin

push);

push);

end;

list;

17.  Стек заполнен элементами типа typeelem. Записать в этот же стек сначала элементы с четными номерами, затем – с нечетными.

init;

init;

init;

for i:=1 to n do

push;

list; Writeln;

while not emptydo begin

push);

push);

end;

while not or empty) do

push);

while not or empty) do

push);

list;

18.  Стек заполнен целыми числами случайным образом. Записать в стек сначала четные элементы, затем – нечетные. Для решения задачи используйте два дополнительных стека.

randomize;

init;

init;

init;

for i:=1 to n do

begin

y:=random;

push;

end;

list; Writeln;

while not emptydo

if stacktop mod 2=0 then push)

else push);

while not emptydo

push);

while not emptydo

push);

list;

19.  Дан стек из целых чисел, заполненный случайным образом. Используя только стеки, отсортировать элементы стека по возрастанию. На дне стека минимальный элемент, в вершине – максимальный. Используйте нужное количество стеков.

Страницы: 1, 2, 3, 4, 5


Новости


Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

                   

Новости

© 2010.