2016-04-26 5 views
-1

20行20列の正方行列(配列)を表示し、この行列の最大値と最小値を与えるプログラムを作成する必要があります。パスカルで正方形の配列を作成

私はこのコードを開始しました:

program ex2dimarray; 
var 
    a: array [0..20, 0..20] of integer; 
    i, j: integer; 

begin 
    for i := 0 to 3 do 
     for j := 0 to 3 do 
      a[i,j] := i * j; 

    for i := 0 to 3 do 
    begin 
     for j := 0 to 3 do 
      write(a[i,j]:2, ' '); 
     writeln; 
    end; 
end. 
+3

は*私は助けを必要以外の、あなたが特定の質問を持っていますか:あなたはこのような何かを試すことができ

? – lurker

+0

現在のコードで何が問題になっていますか?たとえば、コンパイルしようとするとエラーメッセージが表示されますか? –

答えて

-1

あなたは20×20の配列を宣言しますが、あなたのコードの中であなただけの3x3のブロックを使用しています。また、最大値と最小値を見つけるためのロジックが欠落しています。 *

program ex2dimarray; 
const 
    Dim = 20; 

var 
    a: array [0..Dim, 0..Dim] of integer; 
    i, j, min, max: integer; 

begin 
    // initialize the array 
    for i := 0 to Dim do 
    begin 
     for j := 0 to Dim do 
      a[i,j] := i * j; 
    end; 

    // search for max and min. You can initialize both to a[0,0] 
    min:= maxint; 
    max:= -maxint; 

    for i := 0 to Dim do 
    begin 
     for j := 0 to Dim do 
     begin 
      if (a[i,j] > max) then 
       max := a[i,j]; 

      if (a[i,j] < min) then 
       min := a[i,j]; 
     end; 
    end; 

    // print out the values 
    for i := 0 to Dim do 
    begin 
     for j := 0 to Dim do 
      write(a[i,j]:3, ' '); 
     writeln; 
    end; 
    writeln; 
    write('Max: ', max, '  Min: ', min); 
    writeln; 
    readln; 
end. 
+0

私は行9と10でエラーを取得します 致命的:構文エラー、;期待されていますが、見つかりました= –

+0

@ HamzaBounezraどのコンパイラとどのバージョンを使用していますか? –

+0

私はDev-Pascal 1.9.2を使用しています。Free Pascalでも同じエラーが発生しました –

0
program ex2dimarray; 

var 
a: array [0..20, 0..20] of integer; 
m, i, j: integer; 

begin 

//filling the array, in any way you like 

for i := 0 to 19 do 
    for j := 0 to 19 do 
     a[i,j] := i * j; 


//scanning for max value 

m :=0; 
for i := 0 to 19 do 
    for j := 0 to 19 do 
     if m<=a[i,j] then m:=a[i,j] ; 

//print the array 

for i := 0 to 19 do 
begin 
    for j := 0 to 19 do 
     write(a[i,j]:2, ' '); 
    writeln; 
end; 

//print the max value 

writeln('Maximum is ',m); 

end. 
+0

m <= a [i、j] then m:= a [i.j]ならばエラーとなります。 –

+0

エラーメッセージは何ですか? – DrWael

+0

その良い今、非常にマッハーをありがとう –

関連する問題