var
A, r:real;
N, s:integer;
begin
s := 1;
write('a = '); readln(a);
write('n = '); readln(n);
r := a;
while r <= n do
begin
writeln(s);
inc(s);
r := r * a;
end;
if a > n then
writeln(a , ' в любой степени >= 1 будет больше числа ', n);
end.
<em>// PascalABC.NET 3.3, сборка 1633 от 10.02.2018</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
ArrRandom(10,-50,50).Println.Sum.Println;
end.
<u>Пример</u>
31 19 1 -45 -14 -32 8 -46 46 -18
-50
A = -5
A>0 ⇒ ЛОЖЬ
A<0 ⇒ ИСТИНА
A = -3*A = -3*-5 = 15
Ответ: 15
Program spiski;
type
ListElement = ^TListElement;
TListElement = record
Data: integer;
Next, Previous: ListElement;
end;
var
first, current, last: ListElement;
i: integer;
procedure Delete(var element: ListElement);
var
x: ListElement;
begin
while element <> nil do
begin
if (element^.Data = 0) and (element^.Next <> nil) then begin
x := element^.Next; {следующий элемент который надо удалить}
{сшиваем дырку которая образуется после удаления х}
element^.Next := x^.Next;
if (x^.Next <> nil) then
x^.Next^.Previous := element;
Dispose(x);
end;
element := element^.Next;
end;
end;
procedure Print(first: ListElement);
begin
if first = nil then
begin
writeln('Список пуст.');
exit;
end;
while first <> nil do
begin
Write(first^.Data, ' ');
first := first^.Next
end;
writeln;
end;
begin
for i := 1 to 11 do
begin
if first = nil then
begin
new(first);
first^.Next := nil;
first^.Previous := nil;
last := first;
end
else
begin
new(last^.Next);
last^.Next^.Previous := last;
last := last^.Next;
last^.Next := nil;
end;
last^.Data := random(8 + 5) - 5;
end;
current := first;
Print(first);
Delete(current);
Print(first);
end.