Тема «Циклические алгоритмы»
Цикл со счетчиком
1. Чему будет равно значение целой переменной «a» после выполнения этого фрагмента программы?
a:=10;
for i:=1 to 2 do begin
a:=a-2;
end;
2. Чему будет равно значение целой переменной «a» после выполнения этого фрагмента программы?
a:=3;
for i:=1 to 2 do begin
a:=a+a;
end;
3. Какое число будет выведено на экран после выполнения этого фрагмента программы?
write(1);
for i:=3 to 5 do
write(i);
Цикл с предусловием
1.Сколько раз будет выполнен этот цикл?
i:=5;
while i 3);
2. Какое число нужно написать вместо многоточия, чтобы цикл выполнился ровно 4 раза?
i:=...;
repeat
writeln('Привет!');
i:=i+1;
until (i=9);
3. Какое число будет выведено на экран в результате выполнения этого цикла?
i:=6;
write('9');
repeat
write(i);
i:=i+1;
until(i>5);
1. Находим общее количество пикселей
n = 1024×768 = 786432
2. Находим количество бит, необходимое для отображения цвета одного пикселя
k=㏒₂64 = 6 (или просто вспоминаем, что 64=2⁶)
3. Определяем объем информации в битах
I = n×k = 786432×6 = 4718592 бит
4. Переводим в более крупные единицы
- в байты: 1 байт=8 бит; 4718592 бит/8 = 589824 байт
- в Кбайты: 1 Кбайт=1024 байта; 589824 байт/1024 = 576 Кбайт
- в Мбайты: 1 Мбайт=1024 Кбайта; 576 Кбайт/1024 = 0.5625 Мбайт.
Б. Решение "в степенях двойки"
1. Находим общее количество пикселей
n = 1024×768 = 2¹⁰×2⁹×1.5 = 2¹⁹×1.5
2. Находим количество бит, необходимое для отображения цвета одного пикселя
k=㏒₂64 = 6 (или просто вспоминаем, что 64=2⁶)
3. Определяем объем информации в битах
I = n×k = 2¹⁹×1.5×6 = 2¹⁹×9 бит
4. Переводим в более крупные единицы
- в байты: 1 байт=2³ бит; 2¹⁹×9 бит/2³ = 2¹⁶×9 байт
- в Кбайты: 1 Кбайт=2¹⁰ байт; 2¹⁶×9 байт/2¹⁰ = 2⁶×9 Кбайт = 64×9 = 576 Кбайт
- в Мбайты: 1 Мбайт=2¹⁰ Кбайт; 2⁶×9 Кбайт/2¹⁰ = 2⁻⁴×9 Мбайт = 9/16 Мбайт = 0.5625 Мбайт.
Пусть наше число записывается в виде abc. Тогда в системе счисления с основанием x числа abc и abcabc выражаются следующим образом:
abc = ax^2 + bx +c (1)
abcabc = ax^5 + bx^4 + cx^3 + ax^2 + bx + c = x^3(ax^2 + bx + c) + (ax^2 + bx + c) = (x^3 + 1)(ax^2 + bx + c) (2)
Из условия следует, что (2) должно равняться (1), умноженному на 4097:
(x^3 + 1)(ax^2 + bx + c) = 4097*(ax^2 + bx +c) => х^3 = 4096 => х = 16
ответ: основание системы счисления равно 16 (т.е. это шестнадцатиричная система счисления).