応用情報技術者試験 令和4年秋期 問1
aを正の整数とし,b=a^2とする。aを2進数で表現するとnビットであるとき,bを2進数で表現すると最大で何ビットになるか。
ア:n+1 イ:2n ウ:n^2 エ:2^n
出典 IPA公開[過去問題]:https://www.ipa.go.jp/shiken/mondai-kaiotu/gmcbt80000008smf-att/2022r04a_ap_am_qs.pdf
※「a^2」で「aを2乗する」意味として表記しています。
本問ではaの値が決まっていないので適当に値を決めます(値が決まっていない問題では適当に値を決めてから解くと解きやすくなります)。
一旦、aを8とましょう。8を2進数で表記すると「1000」(4ビット)となります。
bはaを2乗した値となりますので8^2=64となり、これを2進数で表記すると「100 0000」(7ビット)となります。
別パターンも検証してみましょう。
aを12とした場合、bは12×12=144となります。a(12)は「1100」(4ビット)となり、b(144)は「1001 0000」(8ビット)となります。
このことからaを2乗したbのビット数は「2n」あれば表すことができます。
正解は、「イ:2n」です。