<span>//PascalABC.NET
//Версия 3.3, сборка 1611 (06.01.2018)
</span>
begin
var (a,b):=ReadInteger2('Введите a,b,c,d->');
var (c,d):=ReadInteger2;
Write('Корни: ');
for var x:=0 to 1000 do
if a*x**3+b*x**2+c*x+d=0 then Write(x,' ');
end.
Пример:
Введите a,b,c,d-> 1 -3 -13 15
Корни: 1 5
Var a, b, c, d, s, k: integer;
begin
write('Введите k: '); readln(k);
a := k div 1000; {тысячи}
b := (k mod 1000) div 100; {сотни}
c := (k mod 100) div 10; {десятки}
d := k mod 10; {единицы}
s := d * 1000 + c * 100 + b * 10 + a;
writeln('k = ', k, #10, 's = ', s);
end.
Сначала определим объем одного символа в пароле. Мощность алфавита - 10 цифр + 32 символа верхнего регистра + 32 символа нижнего регистра = 72.
72 символа можно закодировать 7-ю битами, т.к. 6-ю битами можно закодировать 2^6=64 символа (не хватает), а 7-ю - 2^7=128 символов (хватает).
Длина пароля - 11 символов, 11*7=77 бит.
Каждый пароль кодируется минимальным целым количеством байт:
77:8 = 9,625, но требуется целое количество байт, то есть 10 байт.
Всего 50 паролей, 50*10=500 байт.
Мда паскаль конечно жесть щас напишу
Program Zadacha
Var a, b, c, d : integer;
Begin
Write
read( a, b, c, d);
P:= (a+b+c+d) / z;
ch:= SQRT (p(p-a) (p-b) (p-c) (p-d)):
write
end.
Примерно так, так как я не очень знаю программирование... <span />
1. 8 КБ = 8 * 1024 Байт = 8192 Байт
2. 248 бит = 248 / 8 Байт = 31 Байт.
3. 9216 МБ = 9216 * 1024 КБ = 9437184 Байт
4. 8 Гб = 8 * 2^10 МБ = 8 * 2^20 КБ = 8 * 2^30 Байт = 2^33 Байт
5. 32768 Бит = 4096 байт = 4 Кб = 4 / 1024 Мб = 0,00390625 Мб ~ 0,004 МБ