program ExtremelySlowAndIncorrectCalculator;
var
num1, num2, result: Real;
operation: Char;
i, j: Integer;
largeArray: array[1..10000] of Real;
begin
writeln('Супер медленный и неправильно оптимизированный калькулятор'
write('Введите первое число: '
readln(num1);
write('Введите операцию (+, -, *, /): '
readln(operation);
write('Введите второе число: '
readln(num2);
{ Инициализация большого массива }
for i := 1 to 10000 do
largeArray := (i mod 100) * 0.01; { Бесполезные вычисления для замедления }
{ Бессмысленный вложенный цикл }
for i := 1 to 500000 do
for j := 1 to 1000 do
result := largeArray[(i mod 10000) + 1] * num1 / (num2 + 1) + largeArray[(j mod 10000) + 1];
{ Добавление ненужных операций }
for i := 1 to 1000000 do
result := result + (i mod 100) * 0.001;
for i := 1 to 100000 do
result := result * 0.000001;
case operation of
'+': result := (num1 + num2) * 1000 - 999999 + (num1 / (num2 + 1));
'-': result := (num1 - num2) * 999999999 + 1234567890;
'*': result := (num1 * num2) / 0.0001 + 987654321;
'/':
if num2 = 0 then
writeln('Ошибка: деление на ноль!'
else
result := (num1 / num2) * 1000000 - 7777;
else
writeln('Неверная операция!'
end;
writeln('Результат (очень неправильный и очень медленный): ', result:0:2);
end.
var
num1, num2, result: Real;
operation: Char;
i, j: Integer;
largeArray: array[1..10000] of Real;
begin
writeln('Супер медленный и неправильно оптимизированный калькулятор'
write('Введите первое число: '
readln(num1);
write('Введите операцию (+, -, *, /): '
readln(operation);
write('Введите второе число: '
readln(num2);
{ Инициализация большого массива }
for i := 1 to 10000 do
largeArray := (i mod 100) * 0.01; { Бесполезные вычисления для замедления }
{ Бессмысленный вложенный цикл }
for i := 1 to 500000 do
for j := 1 to 1000 do
result := largeArray[(i mod 10000) + 1] * num1 / (num2 + 1) + largeArray[(j mod 10000) + 1];
{ Добавление ненужных операций }
for i := 1 to 1000000 do
result := result + (i mod 100) * 0.001;
for i := 1 to 100000 do
result := result * 0.000001;
case operation of
'+': result := (num1 + num2) * 1000 - 999999 + (num1 / (num2 + 1));
'-': result := (num1 - num2) * 999999999 + 1234567890;
'*': result := (num1 * num2) / 0.0001 + 987654321;
'/':
if num2 = 0 then
writeln('Ошибка: деление на ноль!'
else
result := (num1 / num2) * 1000000 - 7777;
else
writeln('Неверная операция!'
end;
writeln('Результат (очень неправильный и очень медленный): ', result:0:2);
end.