Лучше всего сжимается текстовый файл с миллиардом ноликов в нём, или картинки на однородном фоне из пары палочек. Хуже всего видеофайлы.
Записываем сложение "в столбик".
2 2
+ 5 5
--------
1 1 0
Рассмотрим сложение в младшем разряде. В десятичной системе счисления 2+5=7, а у нас записан ноль. Следовательно, данный разряд был сброшен, а в следующий добавлена единица. Такое возможно только если сумма (т.е. 7) равна основанию системы счисления, в которой производится сложение. Т.е. мы делаем предположение, что система семиричная.
В самом деле, когда мы складываем два однозначных десятичных числа, например 2 и 8, то получаем 10, 0 в разряде сложения и перенос 1 в следующий разряд. В двоичной система 1+1=10, т. е. тут двойка (1+1) - основание системы - привела к появлению нуля и переносу.
Проверим предположение, что система семиричная. В следующем разряде снова 2+5=7, но еще есть разряд переноса, итого 8. Но 8 в семиричной системе записывается как 11. Итого получается как раз 110, т.е. система счисления действительно семиричная.
Две задачи в файле
3)
var n,i;integer;
s:real;
begin
write('n=',n); read(n);
for i:=1 to n do begin
s:=s+1/i;
end;
write('s=',s);
end.
У нас таких учебников нет Откуда мы знаем что это за задача
<span>//PascalABC.NET
//Версия 3.3, сборка 1634 (14.02.2018)
begin
var (s,v):=ReadReal2('s,v->');
Println('Сумма после ок. срока=',Range(ReadInteger('a->'),ReadInteger('b->')).Aggregate(real(0),(i,j)->s+i+(i*v/100)));
end.
Пример:
s,v-> 100 25
a-> 10
b-> 20
Сумма после ок. срока=4256.613
</span>