Информатика 1. Какую функцию выполняют флажки? 2. При какого объекта вводятся флажки в приложение? 3. При какого свойства проверяется установка флажков? 4. Где описываются глобальные переменные? 5. Где можно присвоить исходные значения переменным?
procedure hase(var k,n,max:integer); //сама последовательность begin if not(odd(n)) then n:=n div 2 else n:=n*3+1; //условие про чётность writeln(n); //вывод нового члена последовательности inc(k); //увеличение значения счётчика шагов if max<n then max:=n; //поиск вершины end;
procedure start(var k,n,max:integer); //название процедуры намекает begin readln(n); k:=0; writeln('Seq:'); max:=integer.MinValue; while n<>1 do hase(k,n,max); writeln('Шаги:',k); writeln('Вершина:',max); end; begin start(k,n,max); end. Пример ввода: 6 Пример вывода: Seq: 3 10 5 16 8 4 2 1 Шаги:8 Вершина:16
16 = 2^4
Получается, что рисунок p2.bmp - четырехразрядный, т.е. 1 пиксель занимает 4 бит памяти. 24/4=6. ответ: в 6 раз.
2.)
64*512=32768 - кол-во пикселей в изображении.
32 Кбайт = 32768 байт.
32768/32768=1 байт = 8 бит - память, занимаемая 1 пикселем.
2^8=256. ответ: 256 цветов.
3.)
25*30 см = 10*12 дюймов = 120 дюймов^2
10*12*300*300*3=32400000 байт = 31640 Кбайт = 30 Мбайт.
ответ: 30 Мбайт.
4.)
65536 = 2^16
1 пиксель занимает 16 бит = 2 байта.
1280*1024*2 = 2621440 байт = 2560 Кбайт = 2,5 Мбайт.
ответ: 2,5 Мбайт.
Var
k,n,max:integer;
procedure hase(var k,n,max:integer); //сама последовательность
begin
if not(odd(n)) then n:=n div 2 else n:=n*3+1; //условие про чётность
writeln(n); //вывод нового члена последовательности
inc(k); //увеличение значения счётчика шагов
if max<n then max:=n; //поиск вершины
end;
procedure start(var k,n,max:integer); //название процедуры намекает
begin
readln(n);
k:=0;
writeln('Seq:');
max:=integer.MinValue;
while n<>1 do
hase(k,n,max);
writeln('Шаги:',k);
writeln('Вершина:',max);
end;
begin
start(k,n,max);
end.
Пример ввода:
6
Пример вывода:
Seq:
3
10
5
16
8
4
2
1
Шаги:8
Вершина:16