Если обработка массива осуществляется последовательно, по 1 элементу, циклы ввода и обработки зачастую можно объединить

Пр. Найти арифметическое среднее элементов вещественного массива t размерностью 6 и значение его минимального элемента.

Var b:array [1..6] of real;

S, min:real;

I:integer;

begin

s:=0; min:=1e30;

writeln ('Ввод B[6]');

for i:=1 to 6 do begin

read (b[i]);

s:=s+b[i];

if b[i]<min then min:= b[i];

end;

writeln ('min=',min,' s=', s/6);

end.

Оператор безусловного перехода

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

Goto Метка;

Здесь Метка – специальным образом указанное место в программе. Действие Goto очень просто: независимо от каких-либо условий он осуществляет передачу управления на оператор, следующий за меткой (отсюда название оператора). Каждая метка имеет вид

m:

где m – имя, построенное по обычным правилам или целочисленная константа от 0 до 9999 включительно. Метку недостаточно поставить перед нужным оператором – ее нужно еще и объявить в разделе описаний оператором

label m;

Можно объявить и несколько меток сразу, разделив их имена запятыми. Принято располагать оператор описания меток до оператора var. Таким образом, метки и оператор goto позволяют решить задачу быстрого непосредственного перехода к нужному месту в программе:

Label 10,20;

Var i,j:integer;

Begin

Write ('Введите значение I (i>2)');

Readln (i);

If i<3 then goto 10;

j:=2;

20:

if i mod j = 0 then write (j,' ');

j:=j+1;

if j<i then goto 20;

10:

End.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: