pascalabcnet/TestSuite/CompilationSamples/Matr1.pas
Бондарев Иван e6e67c193c initial commit
2015-05-14 21:35:07 +02:00

40 lines
813 B
ObjectPascal

// Ïîèñê çíà÷åíèÿ â ñëó÷àéíîé ìàòðèöå. Èñïîëüçîâàíèå îïåðàòîðà goto
const
sz = 10;
m = 4;
n = 5;
type Matrix = array [1..sz,1..sz] of integer;
label 1;
var matr: Matrix;
begin
// Çàïîëíåíèå ìàòðèöû m x n ñëó÷àéíûìè ÷èñëàìè
for var i := 1 to m do
for var j := 1 to n do
matr[i,j] := Random(100);
// Âûâîä ìàòðèöû
for var i := 1 to m do
begin
for var j := 1 to n do
write(matr[i,j]:3);
writeln;
end;
// Åñòü ëè â ìàòðèöå ýëåìåíò 5?
var found5 := False;
for var i := 1 to m do
for var j := 1 to n do
if matr[i,j]=5 then
begin
found5 := True;
goto 1; // Àé êàê íåõîðîøî! Íî ýòî ëó÷øèé ñïîñîá âûõîäà èç äâóõ âëîæåííûõ öèêëîâ ñðàçó
end;
1:
if found5 then
writeln('Ýëåìåíò 5 íàéäåí')
else writeln('Ýëåìåíò 5 íå íàéäåí')
end.