Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Задачи с решениями.doc
Скачиваний:
2
Добавлен:
19.07.2019
Размер:
125.95 Кб
Скачать

I,k:integer;

begin

for i:=1 to n do

read(a[i]);

k:=0;

for i:=1 to n-1 do

if a[i+1]>a[i] then

k:=k+1;

if k=n-1 then

writeln('yes')

else

writeln('no');

readln;

readln;

end.

Дан одномерный массив. Определить составляют ли элементы

массива строго возрастающую последовательность (второй способ).

program p9;

const n=5;

var

a:array[1..n] of integer;

I,k:integer;

begin

for i:=1 to n do

read(a[i]);

k:=0;

for i:=1 to n-1 do

if a[i+1]<=a[i] then

k:=1;

if k=0 then

writeln('yes')

else

writeln('no');

readln;

readln;

end.

Дан массив А из 2*N элементов.

Получить новую последовательность A1, A2N, A2, A2N-1, …, AN, AN+1

program p11;

const n=3;

var

a,b:array[1..2*n] of real;

I:integer;

begin

for i:=1 to 2*n do

read(a[i]);

for i:=1 to n do

begin

b[2*i-1]:=a[i];

b[2*i]:=a[2*n-i+1];

end;

For i:=1 to 2*n do

writeln(b[i]);

readln;

readln;

end.

Дан массив А из 2*N элементов.

Получить новую последовательность A2N, AN, A2N-1, …, AN+1, A1.

program p12;

const n=3;

var

a,b:array[1..2*n] of real;

I:integer;

begin

for i:=1 to 2*n do

read(a[i]);

for i:=1 to n do

begin

b[2*i-1]:=a[2*n-i+1];

b[2*i]:=a[n-i+1];

end;

For i:=1 to 2*n do

writeln(b[i]);

readln;

readln;

end.

Дан одномерный массив.

Подсчитать количество элементов, равных заданному значению.

program p13;

const n=5;

var

a,b:array[1..n] of integer;

i,k,z:integer;

begin

writeln('mas');

for i:=1 to n do

read(a[i]);

writeln('z');

read(z);

k:=0;

for i:=1 to n do

if a[i]=z then

k:=k+1;

writeln(K);

readln;

readln;

end.

Дан одномерный массив.

Составить и вывести новый массив

с номерами элементов исходного массива, равных заданному значению.

program p14;

const n=5;

var

a,b:array[1..n] of integer;

i,k,z:integer;

begin

writeln('mas');

for i:=1 to n do

read(a[i]);

writeln('z');

read(z);

k:=0;

for i:=1 to n do

if a[i]=z then

BEGIN

k:=k+1;

B[K]:=I;

END;

IF K=0 THEN

WRITELN('NO')

ELSE

FOR I:=1 TO K DO

writeln(B[I]);

readln;

readln;

end.

Дан одномерный массив.

Составить и вывести новый массив со значениями

элементов исходного массива, не равных заданному значению.

program p15;

const n=5;

var

a,b:array[1..n] of integer;

i,k,z:integer;

begin

writeln('mas');

for i:=1 to n do

read(a[i]);

writeln('z');

read(z);

k:=0;

for i:=1 to n do

if a[i]<>z then

BEGIN

k:=k+1;

B[K]:=A[I];

END;

IF K=0 THEN

WRITELN('NO')

ELSE

FOR I:=1 TO K DO

writeln(B[I]);

readln;

readln;

end.

Дан одномерный массив.

Подсчитать процент нулевых элементов.

program p17;

const n=4;

var

a:array[1..n] of integer;

k,i:integer;

pr:real;

begin

WRITELN('BBOD MASIVA');

FOR I:=1 TO N DO

READ(A[I]);

K:=0;

FOR I:=1 TO N DO

IF A[I]=0 THEN

K:=K+1;

IF K=0 THEN

WRITELN('TAKIX HET')

ELSE

BEGIN

PR:=K/N*100;

WRITE('PR= ',PR);

END;

READLN;READLN;

END.

Дан одномерный массив.

Определить какая сумма по абсолютной величине больше,

отрицательных или положительных элементов массива.

program p18;

const n=5;

var

a:array[1..n] of integer;

kOTR,KPOL,i:integer;

pr:real;

begin

WRITELN('BBOD MASIVA');

FOR I:=1 TO N DO

READ(A[I]);

KPOL:=0;KOTR:=0;

FOR I:=1 TO N DO

IF A[I]>0 THEN

KPOL:=KPOL+1

ELSE

IF A[I]<0 THEN

KOTR:=KOTR+1;

IF KPOL>ABS(KOTR) THEN

WRITELN('KPOL>KORT')

ELSE

IF ABS(KOTR)>KPOL THEN

WRITELN('KOTR>KPOL')

ELSE

WRITELN('BSE ELEM HULEVIE ILI KPOL=KOTR');

READLN;READLN;

END.

Дан одномерный массив.

Определить есть ли в нем одинаковые элементы.

program p25a;

const n=5;

var

a:array[1..n] of integer;

i,j,f:integer;

begin

writeln('vvod massiva');

for i:=1 to n do

read(a[i]);

f:=0;

for i:=1 to n do

for j:=1 to n do

if (a[i]= a[j]) and (i<>j) then

f:=1;

if f=0 then

writeln('no')

else

writeln('yes');

readln; readln;

end.

Дан одномерный массив.

Все элементы, меньшие заданного значения, и их номера записать в новые массивы

program p27;

const n=5;

var

a,b,c:array[1..n] of integer;

i,k,z:integer;

begin

writeln('mas');

for i:=1 to n do

read(a[i]);

writeln('z');

read(z);

k:=0;

for i:=1 to n do

if a[i]<z then

BEGIN

k:=k+1;

B[K]:=A[I];

c[k]:=I;

END;

IF K=0 THEN

WRITELN('NO')

ELSE

BEGIN

WRITELN('ELEMENTI');

FOR I:=1 TO K DO

writeln(B[I]);

WRITELN('HOMEPA');

FOR I:=1 TO K DO

writeln(C[I]);

end;

readln;

readln;

end.

Дан одномерный массив "A".

Вводится дополнительный массив "B" разрешенных значений.

Определить сколько элементов исходного массива "A" имеют неразрешенные значения

program p28;

const n=5; m=3;

var

A: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

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.