Для двоичного кодирования 16 символов достаточно 4 бит 2^4=16 1,5 Кб=1.5*2^10 байт = 1.5*2^13 бит 1.5*2^13/2^4=1.5*2^(13-4)=1.5*2^9=3*2^8=3*256=768 символов
var a,k,s: integer; begin read(a); k := 0; s := 0; while a mod 2 <> 0 do begin if abs(a) mod 10 > 5 then s := s + a; a := abs(a); if (a > 9) and (a < 100) then k := k + 1; read(a); end; writeln('k=',k,', s=',s) end.
{2}
var n,i,p,a: integer; begin read(n); p := 1; for i := 1 to n do begin read(a); if (a > 0) and (a mod 3 = 0) then p := p * a; end; writeln('p=',p) end.
{3}
var n,a,i,k,s: integer; begin read(n); k := 0; s := 0; for i := 1 to n do begin read(a); if a > 0 then begin s := s + a; k := k + 1; end; end; if k = 0 then k := 1; writeln('s=',s/k) end.
Сначала выведем нужную формулу.а) Определим объем памяти, необходимый для хранения 1с звучания.Частота дискретизации 44,1 кГц означает, что за 1с делается 44100 отсчетов (измерений) уровня звукового сигнала. Глубина кодирования 24 бита = 24/8 = 3 байта означает, что для хранения одного отсчета в одном канале потребуется 3 байта. В режиме стерео используется два канала, поэтому количество байт, необходимое для одного отсчета составит 2×3=6 байт. Тогда для 1с звучания потребуется 44100×6 = 264600 байт.
Предлагается следующий алгоритм. 1. Ввести время записи в минутах n. 2. Перевести минуты в секунды, умножив n на 60. 3. Получить размер файла в байтах, умножив результат (2) на 264600. 4. Перевести результат в мегабайты, поделив результат (3) на 1024². 5. Округлить результат (4) до целых в большую сторону. 6. Вывести значение, полученное в (5)
Конечная формула:
PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018 Внимание! Если программа не работает, обновите версию!
begin var n:=ReadReal('Введите время записи в минутах'); var v:=Ceil(264600*60*n/1024/1024); // округление "вверх" Writeln('Размер файла ',v,' Мбайт') end.
2^4=16
1,5 Кб=1.5*2^10 байт = 1.5*2^13 бит
1.5*2^13/2^4=1.5*2^(13-4)=1.5*2^9=3*2^8=3*256=768 символов