Главная Рефераты по рекламе Рефераты по физике Рефераты по философии Рефераты по финансам Рефераты по химии Рефераты по хозяйственному праву Рефераты по цифровым устройствам Рефераты по экологическому праву Рефераты по экономико-математическому моделированию Рефераты по экономической географии Рефераты по экономической теории Рефераты по этике Рефераты по юриспруденции Рефераты по языковедению Рефераты по юридическим наукам Рефераты по истории Рефераты по компьютерным наукам Рефераты по медицинским наукам Рефераты по финансовым наукам Рефераты по управленческим наукам Психология и педагогика Промышленность производство Биология и химия Языкознание филология Издательское дело и полиграфия Рефераты по краеведению и этнографии Рефераты по религии и мифологии Рефераты по медицине Рефераты по сексологии Рефераты по информатике программированию Краткое содержание произведений |
Лабораторная работа: Обработка одномерных массивов и матрицЛабораторная работа: Обработка одномерных массивов и матрицЛАБОРАТОРНАЯ РАБОТА 5 Цель работы: изучение и применение методов программирования действий по обработке одномерных массивов и матриц. Задача 1 Массив из 30 целых чисел заполнить, присваивая элементам, делящимся на 4, значения 0, остальным элементам значение -1. Cоставить три варианта программы с использованием различных операторов организации циклов. Вариант 1. Использование оператора For Текст программы program lab5_1_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 lab5_1_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 lab5_1_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 lab5_3; {$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. Вывод результата
Вывод: я изучил и применил методы программирования действий по обработке одномерных массивов и матриц. |
|
|