var
a : array of integer;
n, i, last : integer;
begin
read (n);
setlength (a, n);
for i : = 0 to n - 1 do
read (a[i]);
last : = 0;
for i : = 0 to n - 1 do
if a[i] < > 0 then
begin
a[last] : = a[i];
inc (last);
end;
setlength (a, last);
for i : = 0 to last - 1 do
write (a[i], ' ');
end.
суть такова. имеем динамический массив. считали массив, так как динамический, то от нуля все. установили последнюю свободную ячейку 0. идем по массиву и ищем ненулевое значение. как только нашли, пишем его в свободную ячейку и увеличиваем занчение свободной ячейки на 1. при этом наши данные не затираются. после окончания всех операций в last лежит длина массива.статитечкий массив.
var
a : array [1..100] of integer;
n, i, last : integer;
begin
read (n);
for i : = 1 to n do
read (a[i]);
last : = 1;
for i : = 1 to n do
if a[i] < > 0 then
begin
a[last] : = a[i];
inc (last);
end;
dec (last);
for i : = 1 to last do
write (a[i], ' ');
end.
var s: string;
i,j,k: integer;
unique: boolean;
begin
for i : = 1000 to 9999 do
begin
s : = str(i);
unique: =true;
for j: = 1 to length(s)-1 do
for k : = j+1 to length(s) do
begin
if s[j] = s[k] then unique: =false;
end;
if unique then
writeln(i);
end;
end.
может длинее, но универсальное.
Поделитесь своими знаниями, ответьте на вопрос:
1) begin - end
2) восстановление - сбой
3) константа - переменная
4) локальная -
5) программист - пользователь