大原本  問37

午前試験免除制度対応!基本情報技術者試験のeラーニング【独習ゼミ】
まきさん  
(No.1)
(2)の答えがこうなるのか分かりません。
分かる方教えてください

m=4, n=5

total(二次元配列:a,整数型:m,整数型:n)
整数型:i,j
for(j,1~n+1,1)
a[m+1,j]←0
for(j,1~m,1)
(1)a[i,n+1]←0
for(j,1~n,1)
a[i,n+1]←a[i,n+1]+a[i,j]  //行合計//
a[m+1,j]←a[m+1,j]+a[i,j]  //列合計//
endfor
a[m+1,n+1]←a[m+1,n+1]+(2)a[i,n+1]
endfor
2024.04.17 15:25
jjon-comさん 
FE ゴールドマイスター
(No.2)
間違いだろうと感じた箇所は私の判断でコードを変更しました。
注目すべき点に ★ ☆ ● の記号を付加しました。

for(j,1~n+1,1)
  a[m+1,j]←0  //★
endfor
for(i,1~m,1)
  (1)a[i,n+1]←0  //☆
  for(j,1~n,1)
    a[i,n+1]←a[i,n+1]+a[i,j]  //行合計 //☆←☆+数
    a[m+1,j]←a[m+1,j]+a[i,j]  //列合計 //★←★+数
  endfor
  a[m+1,n+1]←a[m+1,n+1]+(2)a[i,n+1] //●←●+☆
endfor

     1  2  3  m  m+1  →指標i
   +―+―+―+―+―+
 1|0|2|4|6|★|
   +―+―+―+―+―+
 2|1|3|5|7|計|
   +―+―+―+―+―+
 3|2|4|6|8|計|
   +―+―+―+―+―+
 4|3|5|7|9|計|
   +―+―+―+―+―+
 n|4|6|8|0|計|
   +―+―+―+―+―+
n+1|☆|計|計|計|●|
   +―+―+―+―+―+
 ↓
指標j
2024.04.17 16:13
まきさん  
(No.3)
>jjon-comさん
解説ありがとうございました。
1行目の合計で

for(j,1~n+1,1)
  a[m+1,j]←0  //★
endfor

for(i,1~m,1)
  (1)a[i,n+1]←0  //☆
  for(j,1~n,1)
    a[i,n+1]←a[i,n+1]+a[i,j]  //行合計 //☆←☆+数
        10        1+2+3+4
    a[m+1,j]←a[m+1,j]+a[i,j]  //列合計 //★←★+数
       12          0+2+4+6
   endfor
  a[m+1,n+1]←a[m+1,n+1]+(2)a[i,n+1] //●←●+☆
      22          10          12

ということだと思いますが・・・
//●←●+☆の意味があまり分かりません
2024.04.17 19:28
まきさん  
(No.4)
a[m+1,n+1]←a[m+1,n+1]+a[i,n+1] //●←●+☆
    4+1,5+1     4+1,5+1    1~4  ,5+1
      5,6        5,6        1~4の合計,6
2024.04.17 19:49
jjon-comさん 
FE ゴールドマイスター
(No.5)
発言No.2における2次元配列中の
+―+
|●|
+―+
は a[m+1, n+1] であり、

ここに求められる合計値は、次の4つを加算した値です。
   +―+―+―+―+―+
n+1|☆|弐|参|四|●|
   +―+―+―+―+―+
↓ a[1, n+1] を a[m+1, n+1] に加算  //☆を●に加算
↓ a[2, n+1] を a[m+1, n+1] に加算  //弐を●に加算
↓ a[3, n+1] を a[m+1, n+1] に加算  //参を●に加算
↓ a[m, n+1] を a[m+1, n+1] に加算  //四を●に加算

これが発言No.4です。
2024.04.17 23:29
まきさん  
(No.6)
>jjon-comさん
やっと分かりました。ありがとうございます。
2024.04.18 19:28

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。

その他のスレッド


Pagetop