基本情報トップに戻る
B難易度: 標準2026年度

基本情報技術者 予想問題B 第74問

問題

次の擬似言語プログラムの実行結果として、変数digitsの値はいくつか。 整数型: n ← 1234 整数型: digits ← 0 while (n > 0) digits ← digits + 1 n ← n / 10 endwhile

選択肢

  1. 1ア 1
  2. 2イ 3
  3. 3ウ 4
  4. 4エ 10

正解

3. ウ 4

詳しい解説を見る

解説

正解はウ。このプログラムは、整数nを10で割り続けて0になるまでの回数を数えることで、nの桁数を求めている。整数除算(小数点以下切捨て)でトレースすると、1回目:digits=1、n=1234÷10=123。2回目:digits=2、n=123÷10=12。3回目:digits=3、n=12÷10=1。4回目:digits=4、n=1÷10=0。ここで条件n>0が偽となりループを抜けるので、digits=4である。これは1234が4桁であることと一致する。アの1は1回でループが終わると誤読した値、イの3は最後の1÷10=0となる周回を数え漏らした値、エの10は除数の10と混同した誤りである。基本情報の科目Bでは、「10で割る=1桁削る」「mod 10=最下位桁の取出し」という整数除算による桁分解の考え方が頻出ポイントである。

一問一答

科目A 180問+科目B 60問

Bの関連問題

この調子で演習を続けよう

スキマ資格では基本情報の全2398問を分野別・難易度別に体系的に学習できます。基本情報技術者は科目A(広く浅く)と科目B(プログラミング・アルゴリズム)の両輪での対策が必要です。