HOME»基本情報技術者試験掲示板»平成31年春期午後問13設問3
投稿する

平成31年春期午後問13設問3 [4259]

 ぽんさん(No.1) 
https://www.fe-siken.com/kakomon/31_haru/pm13.html

正答オ:sumTab[index,1] ← sumTab[index,1]+相対(販売データ!A1,i,6)
とすべきところ、
ウ:sumTab[i,1] ← sumTab[i,1]+相対(販売データ!A1,i,6)
と回答して間違えました。

ワークシート”商品別管理”の列B「商品販売額」の、もともと入力されている額(=sumTab[index,1])に相対(販売データ!A1,i,6)を足すところまでは自力で理解できました。・・・*
また、解説や他の方の掲示板等を見て、以下のところも理解できていると思っています。
i= ワークシート”販売データ”の行数を入れる変数
index=memNoに代入された会員IDが、ワークシート”会員管理”のセルA4から数えると何番目かを代入している

ただ、indexがワークシート”会員管理”の位置を返していると*で考えたことと合わなくなってしまいました。
*であるならば、ワークシート”商品別管理”上の行数がsumTab[]の第一引数(?)の位置に来るのではないかと思い・・・
iでもindexでもないのではないかと思えてしまい、混乱してしまっているので、助けていただけたら嬉しいです。
前提で考えていた*の理解が間違っているのでしょうか。
よろしくお願いします。
2022.05.15 17:25
nsさん(No.2) 
FE シルバーマイスター
>*であるならば、ワークシート”商品別管理”上の行数がsumTab[]の第一引数(?)の位置に来るのではないかと思い・・・
ここが間違っています。

manageMembersマクロは全部で4つのループから構成されていますが、それぞれが説明の(1)~(4)に対応しています。つまり空欄dでは(2)の処理を行っています。
ワークシート"商品別管理"は商品販売額の降順に並んでいますが、ソートするのは(3)の処理です。空欄dの段階では配列sumTabは会員番号順に並んでいます((1)のループを確認してください)ので、sumTab[index, 1]に値を加算すればよいです。
2022.05.15 18:42
 ぽんさん(No.3) 
nsさん、ご回答ありがとうございます!

>空欄dの段階では配列sumTabは会員番号順に並んでいます((1)のループを確認してください)

なるほど…!
一つ一つ手順をやらないとだめですね、、、
引っ張られてしまったようです。ありがとうございました!
2022.05.16 00:22
返信投稿用フォームスパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。
© 2010- 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop