В игрушечных компьютерах С8, С9, С10 и С16 для представления целых чисел (положительных и отрицательных) используется 8, 9, 10 и 16 бит памяти соответственно. На каком из этих компьютеров будет успешно выполнена приведенная ниж...
В игрушечных компьютерах С8, С9, С10 и С16 для представления целых чисел (положительных и отрицательных) используется 8, 9, 10 и 16 бит памяти соответственно. На каком из этих компьютеров будет успешно выполнена приведенная ниже программа?
program hh;
var s,i: integer;
beginfor i:=1 to 255 do s:=s+i
end.
Ответ(ы) на вопрос:
Сумма эта будет равна 32640. Рассмотрим, куда она влезет.
При 16 битах максимальное число будет равно:
[latex]2^{16} [/latex]
поделить на 2 (за счет наличия отрицательных чисел)
и отнять 1 за счёт нуля
[latex] 2^{16} / 2 - 1 = 32767[/latex]
Это максимальное число. 32640 входит, но практически впритык. Очевидно, что если мы уменьшим хотя бы на 1 бит, то есть будет [latex]2^{15} / 2 - 1 = 16383[/latex], то уже не влазит. Поэтому только компьютер C16
Не нашли ответ?
Похожие вопросы