Для облегчения выкладок разделим эти 64 множителя на шесть групп по 10 двоек в каждой и одну последнюю группу из четырех двоек. Произведение 10 двоек, как легко убедиться, равно 1024, а четырех двоек— 16. Значит, искомый результат равен 1024 X 1024 X 1024 X 1024 X 1024 X 1024 X 16.Перемножив 1024 X 1024, получим 1 048 576.Теперь остается найти 1048 576X1048 576X1048 576X16, отнять от результата единицу — и нам станет известно искомое число зерен: 18 446 744 073 709 551615. Известно, что кубический метр пшеницы вмещает около 15 миллионов зерен. Значит, награда шахматного изобретателя должна была бы занять объем примерно в 12 000 000 000 000 куб. м. Кстати, это геометрическая прогрессия и ее нужно было кидать в раздел "математика".
// PascalABC.NET 3.0, сборка 1111 const alpha=['a'..'z']; digits=['0'..'9']; var na,nd,i:integer; s:string; begin na:=0; nd:=0; Write('Введите текст: '); Readln(s); for i:=1 to Length(s) do if s[i] in alpha then Inc(na) else if s[i] in digits then Inc(nd); if na>nd then Writeln('В тексте больше букв') else if na<nd then Writeln('В тексте больше цифр') else Writeln('В тексте букв и цифр поровну') end.
Тестовое решение: Введите текст: the equation 3.546x^2+4.18x-4.1=0 В тексте больше букв
const
alpha=['a'..'z'];
digits=['0'..'9'];
var
na,nd,i:integer;
s:string;
begin
na:=0; nd:=0;
Write('Введите текст: '); Readln(s);
for i:=1 to Length(s) do
if s[i] in alpha then Inc(na)
else
if s[i] in digits then Inc(nd);
if na>nd then Writeln('В тексте больше букв')
else
if na<nd then Writeln('В тексте больше цифр')
else Writeln('В тексте букв и цифр поровну')
end.
Тестовое решение:
Введите текст: the equation 3.546x^2+4.18x-4.1=0
В тексте больше букв