Алгоритм на условном языке.
m:=0. "количество отрицателных"
p:=0 "количество положительных"
i:=1.
пока i<>0 повторять
i:=прочитать число, введенное с клавиатуры.
если i>0 то p:=p+1.
если i<0 то m:=m+1.
конец цикла пока.
вывести на экран('процент положительных = ', p/(p+m)).
вывести на экран('процент отрицательных = ', m/(p+m)).
Алгоритм будет верно работать, если введено хотя бы одно число, отличное от нуля. В противном случае возникнет ошибка деления на ноль. В нормальных программах подобные случаи отлавливаются и корректно обрабатываются.
var a:array [1..100] of integer;
i,n:integer;
s:string;
Begin
randomize;
for i :=1 to 100 do
begin
a[i]:= random(1000)+1000;
a[i]:=a[i] mod 100;
a[i]:=a[i] div 10;
if a[i] mod 2 = 0 then n=n+1;
end;
writeln(n);
End.
1) Недостающие фрагменты:
var a, b, p
Readln(a);
Readln(b);
2) Блок-схема:
(начало)
|
/ a, b /
|
[ y = 3*a^3 - 2*b^2 + 5*a*b ]
|
/ y /
|
(конец)
Программа:
П1 <-> П0 3 <-> x^y 3 * ИП1 x^2 2 * - ИП0 ИП1 5 * * + С/П
2 в двоичной записи единица и ноль
2^N это единица и N нулей.
(2^N - 1) это N единиц
((2^N - 1) - 2) = (2^N - 3) это N-2 единицы, ноль и единица (N>=2 иначе всё плохо)
8 - единица и 3 нуля
8^N - единица и 3*N нулей
Последний шаг делайте сами.
<span>Ответ: 1+ (1024 - 1) = 1024</span>
Ответ:
N = 2^64 символов.
Объяснение:
Дано:
K = 65536 символов.
V = 512 кбайт.
Найти: N.
Решение:
Воспользуемся формулой V = K * I, где V - объем в битах, K - количество символов в сообщении, I - информационный вес одного символа. Выразим и посчитаем I:
I = V/K.
Так как объем должен быть в битах, то сразу переводим кбайты в биты, умножив значение V на 2^13. Для упрощения вычислений, представим число 65536 в качестве степени двойки:
I = (512 * 2^13)/(2^16) = (2^9 * 2^13)/(2^16) = (2^22)/(2^16) = 2^6 = 64 бита.
Теперь можем найти мощность алфавита по формуле:
N = 2^i, где N - мощность алфавита.
N = 2^64 символов.