Мегаобучалка Главная | О нас | Обратная связь


При открытии файла желательно использовать функцию



2016-09-16 280 Обсуждений (0)
При открытии файла желательно использовать функцию 0.00 из 5.00 0 оценок




Таблица 4.1

№ варианта Функция № варианта Функция

 

Пример разработки приложений в среде Delphi:

 

Задание:

Составить программу для вычисления

.

 

1. Создание консольного приложения в среде Delphi

Создать консольное приложение можно различными способами. Наиболее простой из них следующий.

После запуска среды Delphi в главном меню выберите команды File|New. В результате откроется окно так называемого репозитория (архива) Delphi, предназначенного для накопления типовых форм и проектов.

Далее щелчком мыши выберите пиктограмму с подписью «Console Application» и нажмите кнопку ОК. После этого раскроется окно файла проекта (он имеет расширение .dpr) или, другое название, главного модуля проекта.

Наберите в окне файла проекта текст программы для вычисления значения z:

program Project2;

{$APPTYPE CONSOLE}

uses SysUtils;

var х,у,z:real;

begin

writeln('Enter х,у');

readln(x,у);

z := (sqr(х)+sin(2*х-1)+0.5)/sqrt(x*x+y*y+1e4);

writeln('z=',z:7:4);

readln

end.

Перед тем как запустить программу на выполнение, необходимо сохранить ее при помощи команды File|Save All . Каждый проект рекомендуется хранить в отдельной папке. По умолчанию файл проекта имеет имя Project2.dpr, а программа - Project2. Если сохранить файл проекта под другим именем, например MyProgram.dpr. Delphi автоматически изменит имя программы на MyProgram. Строки программного кода, которые формируются средой Delphi, редактировать нельзя, иначе появятся сообщения об ошибках.

После этого запустите проект на выполнение с помощью команд Run|Run, или нажатием функциональной клавиши <F9>, или выбором кнопки Run на инструментальной панели быстрых кнопок.

После успешной компиляции и запуска программы на выполнение на экране появится стандартное окно программы с символьной строкой 'Enter х,у'. Необходимо ввести значения x и y и нажать Enter. В результате появится значение переменной z. Для того чтобы завершить работу программы и вернуться в среду Delphi, необходимо повторно нажать клавишу Enter (т.к. процедура readln без параметров приостанавливает выполнение программы).

Если после запуска программы компилятор выдал сообщение об ошибке, то ее следует исправить. Затем вновь запустить программу на выполнение. Этот процесс повторяется до тех пор, пока все синтаксические ошибки не будут исправлены после чего программа запустится на выполнение.

Второй способ создания консольного приложения.

После запуска Delphi или выполнения команды File|New Application необходимо закрыть окно формы (окно с заголовком Forml) и окно модуля приложения (окно с заголовком Unitl.pas).

При закрытии окна модуля Delphi выводит запрос:

Save changes to Unitl.pas? (Сохранить изменения в Unitl.pas?),

на который надо ответить «Нет», т.е. нажать кнопку No. В результате на экране останется только главное окно Delphi (заголовок: Delphi - Projectl) и окно инспектора объектов (заголовок: Object Inspector), которое тоже можно закрыть. После этого следует выполнить команду Project|View Source. В результате откроется окно Projectl.dpr файла проекта.

Далее файл проекта следует сохранить. Если имя файла будет изменено, то это отразится также в заголовке программы. Затем необходимо убрать все строки, кроме строк, содержащих ключевые слова program, uses, begin и end. После этого можно набрать текст программы, приведенной выше.

В содержимом папки, в которой сохраняется проект, находятся следующие файлы:

- MyProgram.cfg - файл конфигурации проекта. Он содержит установки проекта, например используемые директивы компилятора.

- MyProgram.dof - файл опций проекта. В нем хранится информация, необходимая для установки опций проекта.

- MyProgram.dpr - файл проекта (главный модуль проекта).

- MyProgram.exe - файл приложения или исполняемый файл. Он будет создан компилятором, если в процессе компиляции не будет обнаружено синтаксических ошибок. Исполняемый файл является автономным исполняемым файлом, т.е. для его работы не требуются какие-либо другие файлы. Его можно запускать на выполнение как любую другую исполняемую программу из терминала.

Файлы опций проекта и конфигурации проекта создаются Delphi автоматически, одновременно с созданием файла проекта.

Кроме перечисленных файлов, часто в папке размещается файл с расширением .~dpr, например MyProgram. ~dpr . Эго резервная копия файла проекта, которая создается при редактировании существующего файла проекта и содержит предыдущий вариант текста программы. Резервная копия используется, когда необходимо отказаться от внесенных в программу исправлений. При этом достаточно будет убрать символ «~» из имени файла.

 

2. Создание оконного приложения в среде Delphi

1. Необходимо создать новую папку, в которой будут размещены все файлы, входящие в проект (для каждого нового проекта создается отдельная папка). Создать новую папку можно также и в момент сохранения файлов, входящих в проект, используя кнопку Создание новой папки,имеющуюся в диалоговом окне сохранения файлов.

2. Создайте новый проект с помощью команд главного меню File|New Application или, если только что загружена среда Delphi, можно сразу приступать к созданию нового проекта.

3. Из страницы Standard Палитры Компонентов поместите на форму Forml следующие компоненты (рис.1.2):

 

Рис.1.2

 

4. Установите свойства формы, используя Инспектор Объектов:

Caption (Заголовок) = 'Расчет функции'

Height = 200

Width = 415

Left = 200

Тор = 170

Свойства Height и Width можно задать, изменяя размеры формы с помощью мыши. При этом автоматически будут изменяться указанные свойства, находящиеся в Инспекторе Объектов. Свойства Left и Тор можно задать, переместив форму с помощью мыши за ее заголовок приблизительно на середину экрана.

5. Установите свойства компонентов Labell, Label2 и Label3:

 

Labell: TLabel Name = Inf_Label Caption='Расчет значений функции Y(X)=(sqr(х)+sin(2*х-1)+ 0.5)/sqrt(x*x+y*y+1e4)’ Height = 25 Width = 360 Left = 25 Top = 5 AutoSize = False WordWrap = True Alignment = taCenter Font = Times New Roman Font Style = Bold Size = 12 Label2: TLabel Name = X_Label Caption = ‘X=‘ Height = 25 Width = 95 Left = 25 Top = 55 Font = Times New Roman Font Style = Normal Size = 12 Label3: TLabel Name = Y_Label Caption = ‘Y=‘ Height =25 Width = 95 Left = 25 Top = 95 Font = Times New Roman Font Style = Normal Size = 12

Размеры меток и их местоположение также регулируется вручную.

Для выравнивания компонентов используется панель инструментов Align (Выровнять), которая вызывается на экран дисплея с помощью команды View|Alignment Palette главного меню Delphi.

Выравнивать можно не только один компонент, но несколько компонентов одновременно. Для того чтобы выделить группу компонентов, необходимо при выделении удерживать нажатой клавишу Shift. Выравнивание компонентов автоматически изменяет значения свойств Left и Тор в Инспекторе Объектов.

6. Установите свойства Editl и Edit2:

 

Editl: TEdit Name = X_Edit Text = ‘ ‘ Height = 25 Width = 80 Left = 125 Top = 55 Edit2: TEdit Name = Y_Edit Text = ‘ ‘ Height = 25 Width = 80 Left = 125 Top = 95

 

7. Установите свойства компонента Memol:

 

Memol: TMemo

Name = Z_Memo

Height = 65

Width = 175

Left = 225

Top = 55

Lines = ‘ ‘

 

Для установления свойства Lines щелкните по кнопке с тремя точками. В появившемся окне String list editor удалите строку 'Memol'. Нажмите ОК.

8. Установите свойства кнопок Buttonl, Button2 и Button3:

Buttonl: TButton Name = Calculate_Button Caption='Расчет' Height = 25 Width = 105 Left = 25 Top = 135 Button2: TButton Name =Clear_Button Caption=’Очистка’ Height = 25 Width = 105 Left = 105 Top = 135 Button3: TButton Name = Exit_Button Caption='Выход' Height = 25 Width = 105 Left = 280 Top = 135

9. Двойным щелчком активизируйте кнопку Расчет. В результате окно редактора кода станет активным и будет содержать заготовку обработчика события OnClick. Добавьте в заготовку код для вычисления функции Z.

procedure TForm1.Calculate_ButtonClick(Sender: TObject);

var x,y,z:real;

begin

x:=StrToFloat(X_Edit.Text);

y:=StrToFloat(Y_Edit.Text);

z:=(sqr(x)+sin(2*x-1)+0.5)/sqrt(x*x+y*y+1e4);

Z_Memo.Lines.Add('Результат:');

Z_Memo.Lines.Add('z='+FloatToStrF(z,ffGeneral,7,2));

end;

10. Нажмите клавишу <F12> и вернитесь в форму. Двойным щелчком активизируйте кнопку Очистка и в обработчик события OnClick вставьте строки:

X_Edit .Clear;

Y_Edit.Clear;

Z_Memo.Clear;

11. Нажмите клавишу <F12> и вернитесь в форму. Двойным щелчком активизируйте кнопку Выход и в обработчик события OnClick вставьте строку

Close;

12. Сохраните программу перед запуском. Для сохранения проекта необходимо выполнить команду главного меню File|Save All. Имена файла проекта и модуля должны быть различными.

В главном меню Delphi имеются также другие команды для сохранения:

Save - сохранить текущий модуль;

Save As - сохранить текущий модуль под новым именем;

Save Project As - сохранить текущий проект под новым именем.

После сохранения проекта запустите его на выполнение, используя функциональную клавишу <F9>.

Для расчета значения функции z введите x и y и нажмите кнопку Расчет. Для очистки нажмите кнопку Очистка. Для выхода из приложения нажмите кнопку Выход.

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

Unitl.pas - файл модуля, используемый для хранения программного кода;

Unit1.dfm - файл, содержащий описание формы;

Unit1.dcu - откомпилированный файл модуля;

р21.res - файл, содержащий используемую проектом пиктограмму и прочие ресурсы.

 

Полный текст сформированного модуля Unitl.pas имеет вид:

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

StdCtrls;

type

TForm1 = class(TForm)

Inf_Label: TLabel;

Label2: TLabel;

X_Edit: TEdit;

Z_Memo: TMemo;

Calculate_Button: TButton;

Clear_Button: TButton;

Exit_Button: TButton;

Label3: TLabel;

Y_Edit: TEdit;

procedure Calculate_ButtonClick(Sender: TObject);

procedure Clear_ButtonClick(Sender: TObject);

procedure Exit_ButtonClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Calculate_ButtonClick(Sender: TObject);

var x,y,z:double;

begin

x:=StrToFloat(X_Edit.Text);

y:=StrToFloat(Y_Edit.Text);

z:=(sqr(x)+sin(2*x-1)+0.5)/sqrt(x*x+y*y+1e4);

Z_Memo.Lines.Add('Результат:');

Z_Memo.Lines.Add('z='+FloatToStrF(z,ffGeneral,7,2));

end;

procedure TForm1.Clear_ButtonClick(Sender: TObject);

begin

X_Edit .Clear;

Y_Edit.Clear;

Z_Memo.Clear;

end;

procedure TForm1.Exit_ButtonClick(Sender: TObject);

begin

Close;

end;

end.

 

Контрольные вопросы:

 

1. Кратко опишите внешний вид среды Delphi.

2. Какие виды помощи представляет Delphi, как ее получить?

3. Как создать консольное приложение в среде Delphi?

4. Как создать оконное приложение в среде Delphi?

5. Приведите порядок размещения любого компонента на форме.

6. Как изменить геометрические размеры размещенного компонента?

7. Как получить реакцию на событие для определенного компонента формы?

8. Каким образом оформляется программа, в каком порядке записываются разделы описаний и определений?

9. Назовите типы данных. Как задать тип данных в программе?

10. Как осуществить форматированный вывод действительных чисел?

11. Как компилировать, связать и выполнить программу средствами RAD?

12. Подробно опишите программный код, который разработан для выполнения лабораторной работы.

 

Лабораторная работа №13

 

ПРОГРАММИРОВАНИЕ ТИПОВЫХ АЛГОРИТМОВ ВЫЧИСЛЕНИЙ

 

Цель:

- изучить операторы языка Object Pascal;

- получить практические навыки программирования на языке Object Pascal и создания оконного приложения в среде Delphi.

 

Общие сведения:

 

1. Составной оператор – это группа операторов, заключенная в операторные скобки begin…end. Операторы, входящие в составной, выполняются в порядке их написания. Точка с запятой предназначена для разделения операторов, т.е. не входит в состав оператора.

 

2. Условный оператор IF предназначен для реализации разветвляющегося вычислительного процесса. В общем виде оператор записывается следующим образом:

If <логическое выражение> then <оператор1> else <оператор2>;

Сокращенная форма записи оператора имеет вид:

If <логическое выражение> then <оператор1>;

 

3. Оператор выбора CASE позволяет выбрать и выполнить один оператор из нескольких. В общем случае оператор case имеет следующий вид:

case <выражение> of

<список_меток_1>: <оператор1>;

<список_меток_2>: <оператор2>;

…………………………………….

<список_меток_N>: <операторN>;

else

<оператор>

end;

 

4. Оператор перехода GOTO - это простой оператор, передающий управление в программе на другой оператор, перед которым стоит метка, указанная в операторе goto. В общем виде оператор записывается следующим образом:

goto <метка>;

С помощью goto нельзя передавать управление внутрь сложных операторов (if, case, операторы циклов), а также из вызывающей программы в подпрограмму. Данный оператор следует использовать в исключительных ситуациях.

 

5. Операторы циклов

5.1. Оператор цикла FOR организует выполнение последовательности операторов заранее известное число раз. Существуют два варианта оператора:

1) с увеличением счетчика:

for <счетчик>:= <начальное значение> to <конечное значение> do <оператор>;

2) с уменьшением счетчика:

for <счетчик>:= <начальное значение> downto <конечное значение> do <оператор>;

где <счетчик> - параметр цикла;

<начальное значение> и <конечное значение> - выражения, которые должны быть совместимыми для присваивания с параметром цикла;

<оператор> - это оператор, который выполняется в цикле и образует так называемое тело цикла.

Среди операторов, которые повторяются во время выполнения цикла, могут встречаться другие операторы цикла. Такие циклы называются вложенными.

 

5.2. Оператор цикла с предусловием WHILE имеет следующий формат:

while <логическое выражение> do <оператор>;

Логическое выражение вычисляется при выполнении каждой итерации, поэтому его следует делать по возможности более простым. Если в цикле нужно выполнить не один оператор, а несколько, то их следует заключить в операторные скобки begin...end.

 

5.3. Оператор цикла с постусловием REPEAT имеет следующий формат:

repeat <оператор1>; <оператор2>; ...; <операторN> until

<логическое выражение>;

Условие выхода из цикла проверяется в конце цикла, поэтому операторы, образующие тело цикла, выполняются по крайней мере один раз.

 

Задание:

1. Из таблицы 2.1 взять условие задачи (вариант согласовать с преподавателем).

Таблица 2.1

Функция Функция
xÎ[0;7] и dx=1 xÎ[0;5] и dx=0,5
xÎ[-2;4] и dx=0.5 xÎ[1;4] и dx=0,4
xÎ[-3;5] и dx=1 xÎ[-1;3] и dx=0,4
xÎ[-1;2] и dx=0,2 xÎ[-3;1] и dx=0,3
xÎ[-2;4] и dx=0,5 xÎ[-4;0] и dx=0,5
xÎ[0;7] и dx=1 xÎ[1;4] и dx=0,5
xÎ[-4;4] и dx=1 xÎ[-1;3] и dx=0,3
xÎ[-1;3] и dx=0,5 xÎ[1;7] и dx=0,6
xÎ[0;5] и dx=1 xÎ[0;3] и dx=0,3
xÎ[0;7] и dx=1 xÎ[0;7] и dx=0,8
xÎ[-3;7] и dx=1 xÎ[1;4] и dx=0,4
xÎ[0;5] и dx=0,5 xÎ[1;2,5] и dx=0,2
xÎ[-1;3] и dx=0,4 xÎ[0;3p/2] и dx=p/4
xÎ[-2;5] и dx=1 xÎ[0;7] и dx=1
xÎ[-5;5] и dx=1 xÎ[4;7] и dx=0,4

 

2. Составьте блок-схему и создайте оконное приложение в среде Delphi для расчета значений функции Y(X) (см. лабораторную работу №1 и приведенный ниже пример).

 

Пример:

Задание:

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

 

Блок-схема алгоритма (рис.2.1):


Рис.2.1

 

Программа на языке Object Pascal:

program pr_1;

{$APPTYPE CONSOLE}

uses SysUtils;

var xn,xk,dx,y,x:real;

v:integer;

begin

write('Введите Xn Xk dX :');

readln(xn,xk,dx);

x:=xn;

while x<=xk do

begin

v:=0;

writeln;

write(' X = ',x:5:3);

if not((x<0) and (x>0)) and not((x<1) and (x>1)) then

begin

if (x<0) then

begin

if (cos(pi/2-x)<>0) then

begin

y:=x/sin(pi/2-x)/cos(pi/2-x);

v:=1;

end;

end

else

begin

if (x<1) then

begin

y:=cos(x)/sin(sqrt(x));

v:=2;

end

else

begin

y:=1/(x*x-1);

v:=3;

end;

end;

end;

if v<>0 then write(' Y = ',y:5:4,' V = ',v)

else write(' Y не определено');

x:=x+dx;

end;

readln;

end.

 

Контрольные вопросы:

 

1. Дайте определения цикла, параметра цикла, итерации, программы разветвляющейся, циклической и сложной циклической структуры.

2. Назовите назначение и правила организации ветвлений в программе.

3. Назовите назначение и правила организации цикла.

4. По какой формуле можно подсчитать количество итераций цикла?

5. При каких условиях заканчивается цикл?

6. Чем отличаются циклы с предусловием и постусловием?

7. Назовите основные правила организации вложенных циклов.

8. Подробно опишите программный код, который разработан для выполнения лабораторной работы.

 

Лабораторная работа №14

 

ПРОГРАММИРОВАНИЕ С ИСПОЛЬЗОВАНИЕМ ПОДПРОГРАММ

 

Цель:

- изучить правила описания и определения процедур и функций языка Object Pascal;

- получить практические навыки программирования с использованием процедур и функций на языке Object Pascal и создания оконного приложения в среде Delphi.

 

Общие сведения:

 

Программу можно представить в виде отдельных подпрограмм, которые могут взаимодействовать между собой. Каждая подпрограмма описывается один раз, при необходимости к ней можно многократно обращаться. В Object Pascal существуют два вида подпрограмм: функция и процедура. Используемые функции и процедуры должны быть описаны в разделе описания функций и процедур.

Описания подпрограмм включают в себя заголовок подпрограммы, разделы описаний (меток, констант, типов, переменных, а также дополнительных функций и процедур, являющихся локальными по отношению к данной подпрограмме), тело процедуры. В заголовке подпрограммы за ключевым словом (function или procedure) указываются имя подпрограммы, а в скобках - список формальных параметров со своими описаниями. В отличие от процедуры в заголовке функции должен быть определен тип результата, передаваемого функцией.

Описание действий в подпрограмме осуществляется с использованием формальных параметров. Обращение к подпрограмме осуществляется с фактическими параметрами, которые должны соответствовать формальным по числу, типу и месту расположения.

Функции используются для вычисления одного значения. Общий вид записи функции:

function F (q1:T1; q2:T2;…):T;

<Разделы определений и описаний локальных параметров и подпрограмм>

begin

p1;

p2;

¼

end;

где F - имя функции; qi - имена формальных параметров; Т - тип имени функции; Ti - типы параметров; pi - операторы тела функции.

Обращение к функции записывается в правой части оператора присваивания, при этом указывается имя и в скобках — фактические параметры в виде F (b1, b2, ...), где bi - фактические параметры.

Процедуры используются при получении нескольких результатов. Общий вид записи процедуры:

procedure F (q1:T1; q2:T2;…var q3:T3);

<Разделы определений и описаний локальных параметров и подпрограмм>

begin

p1;

p2;

¼

end;

где F - имя процедуры; qi - имена формальных параметров; Ti - типы параметров; pi - операторы тела подпрограммы.

Обращение к процедуре осуществляется оператором процедуры в виде

F(b1, b2,...);

где F - имя подпрограммы; bi - имена фактических параметров.

 

Задание:

1. Из таблицы 3.1 взять условие задачи (вариант согласовать с преподавателем).

Таблица 3.1

Функция Функция
, xÎ[0;1], dx=0,1 , , xÎ[0;1], dx=0,1
, , xÎ[0;1] и dx=0,1 , ; xÎ[0;1], dx=0,1
, , xÎ[20;30], dx=1 , ; xÎ[1;2], dx=0,1
, , xÎ[0;1] и dx=0,1 , , xÎ[0;1], dx=0,1
, Z0=10, , xÎ[10;20], dx=1 , ; xÎ[0;1]; dx=0,1; Z0=1
, , xÎ[10;20], dx=1 , , xÎ[0;1], dx=0,1
, , xÎ[0;1], dx=0,1 , , xÎ[0;1], dx=0,1
, , xÎ[0;1], dx=0,1 , ; xÎ[0;1], dx=0,1
, , , xÎ[0;1], dx=0,1 , ; xÎ[0;1], dx=0,1
, , xÎ[0;1], dx=0,1 , , xÎ[0;1], dx=0,1
, , xÎ[0;1], dx=0,1 , , xÎ[0;1], dx=0,1
, , xÎ[0;10], dx=1 , , xÎ[0;1], dx=0,1
, , xÎ[1;2], dx=0,1 , xÎ[0;1], dx=0,1
, , , xÎ[0;1], dx=0,1 , ; xÎ[0;1], dx=0,1
, , xÎ[0;1], dx=0,1 , ; xÎ[0;1], dx=0,1

 

2. Составьте блок-схему и создайте оконное приложение для расчета значений Z с использованием процедур или функций (см. лабораторную работу №1 и приведенный ниже пример).

 

Пример:

Вычислить

 

Блок-схема алгоритма с использованием процедуры (рис.3.1).


Рис.3.1

 

Программа 1 с использованием процедуры:

program p1;

{$APPTYPE CONSOLE}

uses SysUtils;

var а,b,c,tl,t2,t3,u:real;

procedure max(x,y:real;var z:real);

begin

if х>у then z := х else z := у

end;

begin

writeln('Enter а,b,с');

readln(a,b,c);

max(a,a+b,tl);

шах(а,b+c,t2);

max(a+b*c,a*c,t3);

u := (tl+t2)/(1+t3);

writeln('u=',u:7:3);

readln

end.

 

Блок-схема алгоритма с использованием функции (рис.3.2).

 

 


Рис.3.2

 

Программа 2 с использованием функции:

 

program p2;

{$APPTYPE CONSOLE}

uses SysUtils;

var а,b,c,u:real;

function max(x,y:real):real;

begin

if х>у then result := х else result := у

end;

begin

writeln('Enter а,b,с');

readln(a,b,c);

u := (max(a,a+b)+mах(а,b+c))/(1+max(a+b*c,a*c));

writeln('u=',u:7:3);

readln

end.

Контрольные вопросы:

 

1. При каких условиях целесообразно использовать подпрограммы?

2. Опишите структуру процедур и функций.

3. Каково назначение процедур и функций и различие в их записи?

4. Перечислите правила описания и определения функций.

5. Перечислите правила описания и определения процедур.

6. Как передаются параметры в подпрограмму?

7. Как согласуются формальные и фактические параметры?

8. Подробно опишите программный код, который разработан для выполнения лабораторной работы.

 

Лабораторная работа №15

ПРОГРАММИРОВАНИЕ С ИСПОЛЬЗОВАНИЕМ

СТРУКТУРИРОВАННЫХ ТИПОВ ДАННЫХ

 

Цель:

- изучить правила описания и определения массивов на языке Object Pascal;

- получить практические навыки программирования на языке Object Pascal и создания оконного приложения в среде Delphi .

 

Общие сведения:

 

Массив – это упорядоченная совокупность элементов одного и того же типа. Элементы массива имеют уникальные индексы. Каждый элемент массива однозначно определяется именем массива и собственным индексом.

Массивы подразделяются на статические и динамические.

Статические массивы - это фиксированное количество упорядоченных однотипных компонентов (элементов) с индексами. Статический массив объявляется следующим образом:

var <имя массива> :array [<тип индекса (индексов)>] of <тип элементов>;

Индексом массива может быть любой порядковый тип, на практике обычно применяется тип Integer.

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

Задание статического двумерного массива осуществляется следующим образом:

var <имя массива> : array[1..N,1..M] of <тип элементов>;

Динамические массивы - это массив, в котором при объявлении указывается только тип его элементов. Размеры динамических массивов изменяются в ходе выполнения программы.

Объявить одномерный динамический массив можно следующим образом:

var <имя массива> :array of <тип>;

Длина массива задается при помощи процедуры SetLength:

SetLength(<имя массива>,N);

Данная команда отводит в памяти массив на N элементов с индексами от 0 до (N-1).

Индексами динамических массивов всегда являются целые числа. Начальный индекс – всегда 0.

Доступ к элементам динамического массива аналогичен доступу к элементам статического массива.

Многомерный динамический массив объявляется следующим образом:

var <имя массива> :array of array of <тип>;

Длина многомерного динамического массива задается при помощи процедуры SetLength:

SetLength(<имя массива>,N,M);

Динамический массив из памяти удаляется следующим образом:

<имя массива>:= nil;

Для организации операций ввода-вывода массивов следует использовать циклы.

Задание:

1. Из таблицы 4.1 взять условие задачи (вариант согласовать с преподавателем) Массив X[i,j] заполнить случайными числами, 5£i£7; 5£j£7.

Таблица 4.1

№ вар. Задание Диапазон Xij
Вычислить и запомнить сумму и число положительных элементов каждого столбца массива. -5; 5
Записать на место отрицательных элементов массива нули. -3; 5
Вычислить сумму и число элементов под главной диагональю. 5; 10
Найти среднеарифметическое значение элементов массива. 0; 5
Вычислить среднеарифметическое значение элементов для каждой строки 1; 7
Вычислить и запомнить сумму элементов каждого столбца массива. 2; 9
Вычислить и запомнить сумму и число положительных элементов каждой строки массива. -5; 3
Вычислить сумму и число положительных элементов над главной диагональю. -3; 2
Найти наибольший элемент для каждой строки 2; 6
Записать элементы строк массива в обратном порядке 0; 4
Поменять элементы четных строк с нижними нечетными -4; 4
Записать на место положительных элементов массива единицы. -5; 4
Найти наибольший элемент для каждого столбца. 2; 5
Найти наименьший элемент массива 1; 6
Найти среднеарифметическое значение отрицательных элементов массива. -4; 6
Вычислить сумму и число положительных элементов под главной диагональю. -3; 1
Вычислить и запомнить сумму и число отрицательных элементов каждой строки массива. -4; 5
Вычислить сумму элементов главной диагонали -6; 1
Найти наименьший элемент каждой строки 3; 6
Вычислить сумму и число отрицательных элементов над главной диагональю. -3; 4
Поменять элементы нечетных строк с верхними четными 4; 7
Найти среднегеометрическое значение элементов массива. -2; 2
Вычислить среднеарифметическое значение элементов для каждого столбца 1; 7
Найти наибольший элемент массива -6; 2
Вычислить сумму и чи

2016-09-16 280 Обсуждений (0)
При открытии файла желательно использовать функцию 0.00 из 5.00 0 оценок









Обсуждение в статье: При открытии файла желательно использовать функцию

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Организация как механизм и форма жизни коллектива: Организация не сможет достичь поставленных целей без соответствующей внутренней...
Как распознать напряжение: Говоря о мышечном напряжении, мы в первую очередь имеем в виду мускулы, прикрепленные к костям ...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (280)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.012 сек.)