Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика 8 вариант.docx
Скачиваний:
1
Добавлен:
11.11.2019
Размер:
248.21 Кб
Скачать

Var a:array[1..100] of integer;

I,n:integer;

Begin

write('Введите размерность массива A[N] =');

readln(n);

writeln('Введите массив A');

for i:=1 to N do

begin

write('A[',i,'] = ');

readln(A[i]);

end;

writeln('Массив до преобразований:');

for i:=1 to N do

write(A[i]:5);

writeln;

writeln('Массив после преобразований:');

for i:=1 to N do

begin

if i mod 3=0

then A[i]:=A[i] mod 2;

write(A[i]:5);

end;

writeln;

readln;

end.

ЗАДАНИЕ№11

5.1. Обработка матриц.

Ввести двумерный массив . Определить в нём количество элементов, квадрат которых больше 25.

Const m=3;

n=4;

Var a:array[1..M,1..N] of real;

I,j,k:integer;

Begin

writeln('Введите массив A');

for i:=1 to m do

for j:=1 to n do

begin

write('A[',i,',',j,'] = ');

readln(A[i,j]);

end;

k:=0;

writeln('Массив A:');

for i:=1 to m do

begin

for j:=1 to n do

begin

write(A[i,j]:5:1);

if (sqr(A[i,j])>25)

then k:=k+1;

end;

writeln;

end;

writeln('Kоличество элементов, квадрат которых больше 25 = ',k);

readln;

end.

ЗАДАНИЕ№12

5.2. Прямоугольные матрицы.

Ввести двумерный массив . Каждый второй элемент, в том случае, если он отрицателен, возвести в квадрат. Массив вывести до и после преобразования.

Var a:array[1..10,1..10] of integer;

I,j,m,n:integer;

Begin

writeln('Введите размерность массива A[NxM]');

write('N = ');

readln(N);

write('M = ');

readln(M);

writeln('Введите массив A');

for i:=1 to m do

for j:=1 to n do

begin

write('A[',i,',',j,'] = ');

readln(A[i,j]);

end;

writeln('Массив до преобразований:');

for i:=1 to m do

begin

for j:=1 to n do

write(A[i,j]:5);

writeln;

end;

writeln('Массив после преобразований:');

for i:=1 to m do

begin

for j:=1 to n do

begin

if (((i-1)*n+j) mod 2=0) and (A[i,j]<0)

then A[i,j]:=sqr(A[i,j]);

write(A[i,j]:5);

end;

writeln;

end;

readln;

end.

ЗАДАНИЕ№13

6.1. Вычисления с использованием подпрограмм.

Дважды вычислить значение выражения, первый раз используя процедуру, а второй – функцию.

Var k,m,n,l,z:real;

r1,r2:real;

function f(x,k,a:real):real;

begin

f:=x*k+3+sqr(a);

end;

function S(k,m,n,l,z:real):real;

begin

S:=(f(1,k,n)+sqr(f(2,k,m))+sqrt(f(3,k,l))*f(3,k,l))*sin(f(10,k,z));

end;

procedure solve(k,m,n,l,z:real; var s:real);

begin

S:=(f(1,k,n)+sqr(f(2,k,m))+sqrt(f(3,k,l))*f(3,k,l))*sin(f(10,k,z));

end;

Begin

writeln('Введите параметры');

write('k = ');

readln(k);

write('m = ');

readln(m);

write('n = ');

readln(n);

write('z = ');

readln(z);

r1:=s(k,m,n,l,z);

solve(k,m,n,l,z,r2);

writeln('Результат функции = ',r1:5:3);

writeln('Результат процедуры = ',r2:5:3);

readln;

end.

ЗАДАНИЕ№14

1. 1. Расчеты и обработка данных

Ввести файл из 12 элементов. Определить в нём произведение тех элементов, чей модуль лежит в диапазоне .

type fp=file of real;

Var I:integer;

a,p:real;

F:fp;

Begin

assign(f,'file.dat');

rewrite(f);

writeln('Введите 12 элементов файла:');

for i:=1 to 12 do

begin

readln(a);

write(f,a);

end;

writeln;

reset(f);

p:=1;

writeln('Исходный файл:');

while not eof(f) do

begin

read(f,a);

write(a:5:1);

if (abs(a)>=1) and (abs(a)<=5)

then p:=p*a;

end;

writeln;

close(f);

writeln('произведение тех элементов, чей модуль лежит в диапазоне [1;5] = ',p:5:3);

readln;

end.

ЗАДАНИЕ№15

1. 2. Обработка элементов файла

Ввести файл . Каждый элемент в файле, чьё значение лежит в диапазоне умножить на 5. Файл вывести до и после преобразования.

type fp=file of integer;