program x_z uses crt type ukazat record Inf integer step integer Next

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
program x_z;
//uses
// crt;
type
ukazat = ^S;
S = record
Inf: integer;
step: integer;
Next: ukazat;
End;
var
u, x,dx,first: ukazat;
i, l, a: integer;
f: boolean;
procedure nov(i: integer);
begin
New(x);
Readln(x^.Inf);
x^.step := i;
x^.Next := u;
u := x;
first:=u;
end;
procedure av;
begin
x:= u;
while ( x<> nil) and ( x^. step<> a) do
begin
dx:= x;
x:= x^.next;
end;
dx:= x^.next;
dispose(x);
end;
procedure vivod;
begin
var i:integer;
x:=first;
// readln();
// x:=u;
// f := true;
// while f do
// begin
// if x = nil then f := false else begin
Writeln(x^.inf, ' ', x^.step);
x := x^.next;
// end;
// for i:=1 to 100000000000000 do begin end;
end;
//end;
begin
//clrscr;
{ New(x);
x^.Next := nil;
x^.Inf := 0;
x^.step := 0;}
first:=nil;
write('введите максимальноую степень и а ');
readln(l, a);
for i := 0 to l do nov(i);
writeln();
av;
x:=first;
for i := 0 to l do vivod;
end.