Задача 1. Объем видео можно рассчитать из формулы: X=R*i*n*t, где R- количество пикселей на кадр, i-глубина цвета (бит), n-частота кадров (ед/сек.), t- время(сек.) Глубину цвета i получим из формулы: N=2^i, где N-количество цветов.У нас черно-белое изображение, значит 2 цвета. 2=2^i i=1 бит R=800*600=480000 Х=480000*1*24*(30*60)= 20736000000 бит = 2592000000 байт= 2531250 Кбайт= 2471,92 Мбайт = 2,4 Гбайт ответ: 2,4 Гбайт
Задача 2. Рассчитаем объем видео: X=R*i*n*t, где R- количество пикселей на кадр, i-глубина цвета (бит), n-частота кадров (ед/сек.), t- время(сек.) Х=(600*400)*8*25*(1,5*60)= 4320000000 бит= 540000000 байт= 527343,75 Кбайт= 514,98 Мбайт
Объем звука: Х=i*n*t*k, где i - глубина кодирования звука (бит), n - частота дискретизации (Гц), t- время (сек.), k- количество каналов. Глубину кодирования звука определим из формулы:N=2^i, где N- количество уровней громкости 128=2^i i=7 Х=7*32000*(1,5*60)*2= 40320000 бит = 5040000 байт= 4921,88 Кбайт= 4,81 Мбайт Сложим полученные значения объема видео и звука: 514,98+4,81= 519,79 Мбайт ответ: 520 Мбайт
Вариант с циклом while ... do... program z1; uses crt; var n:longint; i,max,x:integer; begin clrscr; read(n); max:=-1; i:=1; {это будет переменная-счетчик} while i<=5 do begin x:= n mod 10; if x>max then max:=x; n:= n div 10; {в этой строке исправлена опечатка в оригинале} i:=i+1; {наращиваем счетчик вручную} end; writeln(max); end.
Вариант с циклом repeat ... until program z1; uses crt; var n:longint;i,max,x:integer; begin clrscr; read(n); max:=-1; i:=1; repeat x:= n mod 10; if x>max then max:=x; n:= n div 10; i:=i+1; until i>5; writeln(max); end.
Вариант с циклом repeat ... until без счетчика! program z1; uses crt; var n:longint; max,x:integer; begin clrscr; read(n); max:=-1; repeat x:= n mod 10; if x>max then max:=x; n:= n div 10; until n=0; writeln(max); end. В последнем примере условием окончания цикла будет случай, когда число станет равным 0. Действительно, после каждого повторения цикла число становится на один разряд меньше (выделенная цветом строка программы), значит, когда-нибудь такое число станет равным 0 (цикл подходит для числа с любым количеством цифр). Пример: 34567 -> 3456 -> 345 -> 34 -> 3 -> 0
Объем видео можно рассчитать из формулы:
X=R*i*n*t, где R- количество пикселей на кадр, i-глубина цвета (бит), n-частота кадров (ед/сек.), t- время(сек.)
Глубину цвета i получим из формулы: N=2^i, где N-количество цветов.У нас черно-белое изображение, значит 2 цвета.
2=2^i i=1 бит
R=800*600=480000
Х=480000*1*24*(30*60)= 20736000000 бит = 2592000000 байт= 2531250 Кбайт= 2471,92 Мбайт = 2,4 Гбайт
ответ: 2,4 Гбайт
Задача 2.
Рассчитаем объем видео:
X=R*i*n*t, где R- количество пикселей на кадр, i-глубина цвета (бит), n-частота кадров (ед/сек.), t- время(сек.)
Х=(600*400)*8*25*(1,5*60)= 4320000000 бит= 540000000 байт= 527343,75 Кбайт= 514,98 Мбайт
Объем звука:
Х=i*n*t*k, где i - глубина кодирования звука (бит), n - частота дискретизации (Гц), t- время (сек.), k- количество каналов.
Глубину кодирования звука определим из формулы:N=2^i, где N- количество уровней громкости
128=2^i i=7
Х=7*32000*(1,5*60)*2= 40320000 бит = 5040000 байт= 4921,88 Кбайт= 4,81 Мбайт
Сложим полученные значения объема видео и звука:
514,98+4,81= 519,79 Мбайт
ответ: 520 Мбайт
program z1;
uses crt;
var n:longint;
i,max,x:integer;
begin
clrscr;
read(n);
max:=-1;
i:=1; {это будет переменная-счетчик}
while i<=5 do
begin
x:= n mod 10;
if x>max then max:=x;
n:= n div 10; {в этой строке исправлена опечатка в оригинале}
i:=i+1; {наращиваем счетчик вручную}
end;
writeln(max);
end.
Вариант с циклом repeat ... until
program z1;
uses crt;
var n:longint;i,max,x:integer;
begin
clrscr;
read(n);
max:=-1;
i:=1;
repeat
x:= n mod 10;
if x>max then max:=x;
n:= n div 10;
i:=i+1;
until i>5;
writeln(max);
end.
Вариант с циклом repeat ... until без счетчика!
program z1;
uses crt;
var n:longint;
max,x:integer;
begin
clrscr;
read(n);
max:=-1;
repeat
x:= n mod 10;
if x>max then max:=x;
n:= n div 10;
until n=0;
writeln(max);
end.
В последнем примере условием окончания цикла будет случай, когда число станет равным 0. Действительно, после каждого повторения цикла число становится на один разряд меньше (выделенная цветом строка программы), значит, когда-нибудь такое число станет равным 0 (цикл подходит для числа с любым количеством цифр). Пример: 34567 -> 3456 -> 345 -> 34 -> 3 -> 0