(pascal) из двух стеков, создать новый стек элементы брать по-очередно из исходных стеков из первого-четные, из второго нечетные: [1,18,20,13,2] , [4, 8, 10,11,9], получили [2,9,20,11,18] (через процедуры)
283
475
Ответы на вопрос:
Pascalabc.net 3.3.5, сборка 1659 от 09.04.2018 внимание! если программа не работает, обновите версию! procedure fillstack(st: stack< integer> ; sq: sequence of integer); begin foreach var t in sq do st.push(t); end; procedure printstack(st: stack< integer> ; s: string); begin write(s); st.println end; procedure tostack(sta,stb: stack< integer> ; even: boolean); begin if even then while sta.count> 0 do begin var v: =sta.pop; if v.iseven then begin stb.push(v); exit end end else while sta.count> 0 do begin var v: =sta.pop; if v.isodd then begin stb.push(v); exit end end end; begin var st1: =new stack< integer> ; fillstack(st1,seq(2,13,20,18,1)); printstack(st1,'стек1: '); var st2: =new stack< integer> ; fillstack(st2,seq(9,11,10,8,4)); printstack(st2,'стек2: '); var st3: =new stack< integer> ; while st1.count+st2.count> 0 do begin tostack(st1,st3,true); tostack(st2,st3,false); end; printstack(st3,'стек3: ') end. результат стек1: 1 18 20 13 2 стек2: 4 8 10 11 9 стек3: 2 9 20 11 18
Популярно: Информатика
-
LyusiaG01.09.2022 18:13
-
Lisa1881117.03.2020 12:35
-
Вика31038725.01.2020 06:26
-
бегуния05.01.2023 02:45
-
gvozd128.02.2022 21:20
-
coolbembel08.01.2020 09:41
-
artemmishin777777718.10.2020 03:46
-
ksuvladyckina1610.11.2022 15:32
-
34we52302.02.2021 07:29
-
golicinskaya13.08.2021 11:53