Обработка одномерных массивов и матриц

Тип работы:
Лабораторная работа
Предмет:
Программирование


Узнать стоимость

Детальная информация о работе

Выдержка из работы

http: //www. . ru/

ЛАБОРАТОРНАЯ РАБОТА 5

Цель работы: изучение и применение методов программирования действий по обработке одномерных массивов и матриц.

Задача 1

Массив из 30 целых чисел заполнить, присваивая элементам, делящимся на 4, значения 0, остальным элементам значение -1. Cоставить три варианта программы с использованием различных операторов организации циклов.

Вариант 1. Использование оператора For

Текст программы

program lab51_1;

{$APPTYPE CONSOLE}

uses

SysUtils;

var

m: array [1. 30] of integer;

i: byte;

begin

for i: =1 to 30 do begin

if i mod 4 =0 then m[i]: =0

else m[i]: =-1;

writeln (m[i]);

end;

readln;

end.

Вывод результата

Вариант 2. Использование оператора While

Текст программы

program lab51_2;

{$APPTYPE CONSOLE}

uses

SysUtils;

var

m: array [1. 30] of integer;

i: byte;

begin

i: =0;

while i< =30 do begin

i: =i+1;

if i mod 4 =0 then m[i]: =0

else m[i]: =-1;

writeln (m[i]);

end;

readln;

end.

Вывод результата

Вариант 3. Использование оператора Repeat

Текст программы

program lab51_3;

{$APPTYPE CONSOLE}

uses

SysUtils;

var

m: array [1. 30] of integer;

i: byte;

begin

i: =0;

repeat

i: =i+1;

if i mod 4 =0 then m[i]: =0

else m[i]: =-1;

writeln (m[i]);

until i=30;

readln;

end.

Вывод результата

Задача 2

массив число программа цикл

Для заданной функции y = cos (0. 5x/2)+cos (x) вычислить массив 11 ее значений в равноотстоящих точках интервала [2,4]. Вывести на экран таблицу значений функции. Обработать массив значений функции указанным образом. Результаты вывести на экран. Найти квадрат максимального из четных элементов массива и общее число нулевых элементов.

Текст программы

program lab2;

{$APPTYPE CONSOLE}

uses

SysUtils;

var my: array [1. 11] of real;

mx: array [1. 11] of real;

max, y, x1,x2,x, h: real;

i, k: byte;

begin

x1: =2;

x2: =4;

x: =x1;

h: =(x2-x1)/10;

mx[1]: =x;

for i: =1 to 11 do

begin

y: =cos ((0. 5*x)/2)+cos (x);

my[i]: =y;

x: =x+h;

mx[i+1]: =x;

writeln ('x=', mx[i]: 5:2,' y=', my[i]: 5:2);

end;

max: =my[1];

for i: =1 to 11 do

if (max< my[i]) and (i mod 2 =0) then

max: =my[i];

max:= max*max;

writeln ('max kvadr y= ', max: 5:2);

for i: =1 to 11 do

if my[i]=0 then k: =k+1;

writeln ('vsego nulevyh elementov= ', k);

readln;

end.

Вывод результата

Задача 3

Дан двумерный массив [3. 4]. Получить новый массив путем умножения всех элементов исходного массива на его элемент, наибольший по абсолютной величине.

Текст программы (массив заполняется случ. числами).

program lab53;

{$APPTYPE CONSOLE}

uses

SysUtils;

var

m: array [1. 3,1. 4] of real;

i, j: byte;

max: real;

begin

randomize;

{zapolnenie}

for i: =1 to 3 do

for j: =1 to 4 do

begin

m[i, j]: =random;

writeln (m[i, j]: 5:3);

end;

{nahozhdenie max}

max: =m[1,1];

for i: =1 to 3 do

for j: =1 to 4 do

if max< m[i, j] then max: =m[i, j];

writeln ('max= ', max: 5:3);

{umnozhenie}

for i: =1 to 3 do

for j: =1 to 4 do

begin

m[i, j]: =m[i, j]*max;

{vyvod}

writeln ('new massiv= ', m[i, j]: 5:3);

end;

readln;

end.

Вывод результата

Вывод: я изучил и применил методы программирования действий по обработке одномерных массивов и матриц.

ПоказатьСвернуть
Заполнить форму текущей работой