Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Блок-схемы операторов цикла





Инкрементный оператор цикла For Декрементный оператор цикла For
Оператор While Оператор Repeat

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

1) с определением типа массива

Type

<имя типа> = array [<список диапазонов индексов>]

of <тип элементов>;

Var

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

2) без определения типа массива

Var

<имя массива>: array [<список диапазонов индексов>]

of <тип элементов>;

Здесь <имя типа>, <имя массива> - идентификаторы;

<список диапазонов индексов> - в общем случае список выражений порядкового типа, кроме Longint, в частном случае - список диапазонов индексов;

<тип элементов> - тип элементов массива (real, integer и т.д.).

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

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

Примеры определения массивов:

Type m = array [1..5] of byte;

Var n: m;

dates: array [1980..2000] of integer;

x,y,z: array [1..10,1..10] of real;

Доступ к каждому элементу массива осуществляется с помощью индекса. Он не должен выходить за пределы указанного диапазона. Например,

for i:=1 to 10 do

for j:=1 to 10 do

begin z[i,j]:=0;

for k:=1 to 10 do z[i,j]:=z[i,j]+x[i,k]*y[k,j]

end;

В ТР одним оператором присваивания все элементы одного массива можно передать другому массиву того же типа, например:

Var p,q: array [-5..5] of single;

begin … p: = q; … end.

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

 

Пример. Составить таблицу значений функции:

,

где x и y заданы в виде одномерных массивов:

x = 0.1, 0.3, 0.5; y = 1, 2, 3, 4.

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

Program Tab_1;

Uses Printer;

Const m=3;n=4;

Var x,y: array [1..10] of real;

f: array [1..10,1..10] of real;

i,j:integer; a,b:real;

BEGIN

writeln('Введите элементы массивов x и y:');

for i:=1 to m do {Ввод элементов массива x}

Begin

write('x[',i,']='); readln(x[i]);

end;

for j:=1 to n do {Ввод элементов массива y}

Begin

write('y[',j,']='); readln(y[j]);

end;

for i:=1 to m do

for j:=1 to n do

Begin

a:=exp(x[i]*y[j])/(x[i]*y[j]);

b:=y[j]*exp(4*ln(x[i]))/4;

f[i,j]:=a+b;

writeln(Lst,'f=',f[i,j]:10,' при x=',

x[i]:4:1,' и y=',y[j]:4:1);

end;

END.

!! Проанализируйте программу, наберите ее текст и осуществите компиляцию. Сохраните программу в файле с названием Tab_1.pas.

При задании диапазонов индексов в объявлении массивов можно использовать интервальный (диапазонный) тип данных.

Объявление интервального типа осуществляется заданием двух констант, указывающих верхнюю и нижнюю границы диапазона, и описывается двумя способами:

1) с определением типа

Type

<имя интервального типа>= <k1>.. <k2>;

Var

<имя переменной>:<имя интервального типа>;

 

2) без определения типа

Var

<имя переменной>: <k1>.. <k2>;

где k1 и k2 соответственно верхняя и нижняя границы диапазона, причем k1>k2.

Например,

Type index = 1.. 50;

years = 1900.. 2010;

Var birthday: years;

mass: array [index, index] of real;

 

 

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

В частности, при объявлении типизированной константы-вектора в круглых скобках указываются значения элементов массива через запятую. При объявлении двумерных констант-массивов множество элементов, соответствующее каждой строке матрицы, заключается в дополнительные круглые скобки.

Например:

Const

vector: array [0..3] of integer = (1,2,3,4);

matrix: array [0..2,0..3] of real =

((1,2,3,4),(1.1,1.2,1.3,1.4),(2.3,2.4,2.5,7));

 







Date: 2016-02-19; view: 460; Нарушение авторских прав



mydocx.ru - 2015-2024 year. (0.009 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию