Вы находитесь на странице: 1из 10

Министерство науки и высшего образования Российской

Федерации

Федеральное государственное бюджетное образовательное


учреждение высшего образования

ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ


УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР)

Кафедра радиоэлектронных технологий и экологического


мониторинга (РЭТЭМ)

ОПЕРАТОР ЦИКЛА С ПРЕДУСЛОВИЕМ

отчет по лабораторной работе №7 по дисциплине


«Информационные технологии в управлении техносферной
безопасностью»

Выполнил: ст. гр. 229-1


___________Типсина А.А.
« » 2020 г.

Проверил: преп. каф. РЭТЭМ


Афонин К.Н.
« » 2020 г.

2020
1. Тема и цель работы
Цель работы: изучение структуры одномерного массива.

Задачи работы:

- знакомство с конструкцией array of в программах в интегрированной

среде Lazarus;

- освоение приёмов программирования и отладки алгоритмов с

одномерными массивами в интегрированной среде Lazarus.

Массив – это ограниченная упорядоченная последовательность

однотипных данных, имеющая общее имя. Для доступа к нужному


компоненту

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


применения массивов мы приходим всякий раз, когда

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


Например,

результаты многократных замеров напряжения на электрорадиоэлементе при

изменении тока через него при снятии вольтамперной характеристики


удобно

рассматривать как совокупность вещественных чисел, объединенных в один

сложный объект – массив измеренных напряжений.

При описании массива необходимо указать общее число входящих в

массив компонентов и тип этих компонентов


2. Индивидуальное задание
Вариант №19. Создать и отобразить исходный массив. Выбрать элементы
больше среднего значения. Элементы массива - вещественные. Количество
элементов - 10. Каждый элемент массива вычисляется по формуле ,. Первый
элемент массива вычисляется при n = 1
3. Блок-схема алгоритма

Рисунок 3.1 – Алгоритм выполнения задания


4. Откомпилированный текст программы
unit Unit1;

{$mode objfpc}{$H+}

interface

uses

Classes, SysUtils, Forms, Controls, Graphics, Dialogs, Grids, StdCtrls;

type

{ TForm1 }

TForm1 = class(TForm)

Button1: TButton;

StringGrid1: TStringGrid;

StringGrid2: TStringGrid;

procedure Button1Click(Sender: TObject);

private

public

end;

TAbiturient=record
M:String ;

T:String ;

K:integer;

P:integer;

C:integer;

end;

TMas = array [1..10] of TAbiturient;

var

Form1: TForm1;

mas1,mas2:TMas;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.Button1Click(Sender: TObject);

var

i:integer;

n: integer;

begin

for i:=1 to 10 do

begin

mas1[i].M:=StringGrid1.Cells[i,1] ;

mas1[i].T:=StringGrid1.Cells[i,2] ;
mas1[i].K:=StrToInt(StringGrid1.Cells[i,3]) ;

mas1[i].P:=StrToInt(StringGrid1.Cells[i,4]) ;

mas1[i].C:=StrToInt(StringGrid1.Cells[i,5]) ;

end ;

n:=0;

for i:=1 to 10 do

if mas1[i].P>=5000 then

begin

n:=n+1;

mas2[n]:=mas1[i];

end;

StringGrid2.ColCount:=n+1;

for i:=1 to n do

begin

StringGrid2.Cells[i,0]:=IntToStr(i);

StringGrid2.Cells[i,1]:= mas2[i].M ;

StringGrid2.Cells[i,2]:= mas2[i].T ;

end;

end;

end.

end.
5. Ответы на контрольные вопросы
1. Массив – это ограниченная упорядоченная последовательность

однотипных данных, имеющая общее имя.

2. Чтобы записать все вычисленные значения, нужно выделить для их


хранения необходимое количество ячеек памяти (массив), а текущий
результат обозначить переменной с индексом. Когда требуется связать и
использовать целый ряд родственных величин.

3.Элемент массива - это число под определенным индексом массива.

4.Индекс массива - это номер, под которым содержится элемент массива, и


по которому мы можем обратиться к нему.

5. Размерность массива – это максимальный индекс массива, к которому мы


можем обратить и положить число.

6.Чтобы обратится к определенной ячейки массива мы должны написать его


названия и в квадратных скобках индекс интересующий нас(A[1]….)

7.Элементы массива могут быть типа real, string, byte, integer, long integer и
другие типа который относятся к переменным.

8.byte, world, longworld, cardinal, uint64

9. mas: array [1..10] of integer;

10. mas[i]:= StringGrid2.Cells[i-1,1];

StringGrid2.Cells[i-1,1]:=FloatToStr(mas[i]);

11. mas[i]:=random(100)
6. Результаты выполнения программы

Рис.6.1 – Первичные результаты выполнения программы


7 Вывод
В результате проведённой работы закреплены навыки программирования.
Программа работает без ошибок и выдает нужные значения. В этой работе
мы научились писать программы с обработкой массива, а также работать в
факториалом, и закрепили ветвления цикла.

Оценить