
- •Задачи с решениями
- •1. Одномерные массивы
- •I,b:integer;
- •I,b:integer;
- •I,b,k,j:integer;
- •I:integer;
- •I,k:integer;
- •I,k:integer;
- •I,k,z:integer;
- •I,k,z:integer;
- •I,k,z:integer;
- •I,j,f:integer;
- •I,k,z:integer;
- •I,k,j,f:integer;
- •I,k,j,f:integer;
- •I,j,b:integer;
- •I,j,k,f:integer;
- •I,j,k,f:integer;
- •2. Двумерные массивы
- •I,j,b:integer;
- •I,j,b:integer;
- •I,j,b:integer;
- •I,j,p:integer;
- •I,j,max:integer;
- •I,j,min:integer;
- •I,j,max:integer;
- •I,j,k:integer;
- •I,j,max,min,imax,imin:integer;
- •I,j,k,f:integer;
- •I,j,k:integer;
- •I,j,k:integer;
- •I,j,k:integer;
- •I,j:integer;
- •I,j,jmax:integer;
- •I,j,k,z:integer;
- •I,j,f:integer;
- •I,j,min,imin:integer;
I,k,j,f:integer;
begin
writeln('massiv A');
for i:=1 to n do
read(A[i]);
writeln('massiv B');
for i:=1 to M do
read(B[i]);
k:=0;
for I:=1 to n do
BEGIN
F:=0;
for J:=1 to M do
IF A[I]=B[J] THEN
F:=1;
IF F=0 THEN
K:=K+1;
END;
WRITE(K);
readln;
readln;
end.
Дан одномерный массив "A".
Вводится дополнительный массив "B" разрешенных значений.
Составить вектор "C"из элементов массива "A", имеющих неразрешенные значения
program p29;
const n=5; m=3;
var
A,C:array[1..n] of integer;
B:array[1..m] of integer;
I,k,j,f:integer;
begin
writeln('massiv A');
for i:=1 to n do
read(A[i]);
writeln('massiv B');
for i:=1 to M do
read(B[i]);
k:=0;
for I:=1 to n do
BEGIN
F:=0;
for J:=1 to M do
IF A[I]=B[J] THEN
F:=1;
IF F=0 THEN
BEGIN
K:=K+1;
C[K]:=A[I];
END;
END;
IF K=0 THEN
WRITELN('NO')
ELSE
FOR I:=1 TO K DO
WRITELN(C[I]);
readln;
readln;
end.
Дан одномерный массив "A".
Переписать элементы вектора "A"в обратном порядке
на том же месте (перевернуть массив "A" без использования дополнительного массива)
program p30;
const n=5;
var
A:array[1..n] of integer;
I,j,b:integer;
begin
writeln('vvod massiva A');
for i:=1 to n do
read(A[i]);
for I:=1 to n div 2 do
BEGIN
B:=A[I];
A[I]:=A[N-I+1];
A[N-I+1]:=B;
END;
wRITELN('VIVOD MASSIVA A');
FOR I:=1 TO N DO
WRITELN(A[I]);
readln;
readln;
end.
Дан одномерный массив "A".
Составить массив "B"из различных (не повторяющихся) элементов исходного массива "A" .
program p31;
const n=5;
var
A,B:array[1..n] of integer;
I,j,k,f:integer;
begin
writeln('vvod massiva A');
for i:=1 to n do
read(A[i]);
K:=0;
for I:=1 to n do
BEGIN
F:=0;
for j:=1 to n do
if (A[I]=A[J]) AND (I<>J) THEN
F:=1;
IF F=0 THEN
BEGIN
K:=K+1;
B[K]:=A[I];
END;
END;
IF K=0 THEN
WRITELN('NO')
ELSE
wRITELN('vivod massiva B');
FOR I:=1 TO K DO
WRITELN(B[I]);
readln;
readln;
end.
Дан одномерный массив "A".
Составить массив "B"из номеров различных (не повторяющихся) элементов исходного массива "A" .
program p32;
const n=5;
var
A,B:array[1..n] of integer;
I,j,k,f:integer;
begin
writeln('vvod massiva A');
for i:=1 to n do
read(A[i]);
K:=0;
for I:=1 to n do
BEGIN
F:=0;
for j:=1 to n do
if (A[I]=A[J]) AND (I<>J) THEN
F:=1;
IF F=0 THEN
BEGIN
K:=K+1;
B[K]:=I;
END;
END;
IF K=0 THEN
WRITELN('NO')
ELSE
wRITELN('vivod massiva B');
FOR I:=1 TO K DO
WRITELN(B[I]);
readln;
readln;
end.
2. Двумерные массивы
Дана квадратная матрица.
Произвести транспонирование (переворот) матрицы относительно ее главной диагонали
program p1;
const N=4;
var
A:array[1..N,1..N] of real;
I,j,b:integer;
begin
WRITELN('vvod massiva');
FOR I:=1 TO N DO
BEGIN
FOR J:=1 TO N DO
read(A[I,J]);
WRITELN;
END;
FOR I:=1 TO N DO
FOR J:=1 TO N DO
IF I<J THEN
BEGIN
B:=A[I,J];
A[I,J]:=A[J,I];
A[J,I]:=B;
END;
WRITELN('vIvod massiva');
FOR I:=1 TO N DO
BEGIN
FOR J:=1 TO N DO
WRITE(A[I,J],' ');
WRITELN;
END;
readln;
readln;
end.
Дана квадратная матрица.
Произвести переворот матрицы относительно ее побочной диагонали
program p2;
const N=4;
var
A:array[1..N,1..N] of real;