Так и писали в двоичном коде системы команд конкретной машины, т.е. с помощью машинных кодов. У каждой операции в компьютере (сложение, умножение, какие-то более сложные операции) есть код. Люди (прогаммисты) сами по табличке выбирали этот код, всякие адреса в памяти, всё это набивали руками на перфокартах, засовывали в считыватель, запускали программу и она выполняла вычисления. Чтобы облегчить себе жизнь, умные головы придумали языки символического кодирования и написали программы перевода (трансляции) сначала только вычислительных программ в машинные коды (мнемокоды, ассемблеры, макроассемблеры). А затем с их помощью придумали и написали более сложные трансляторы с языков высокого уровня (Фортран, Бейсик, С и т.д.)
//FPC 2.6.4
Program sieve_of_Eratosthenes;
var
n, i, x:integer;
a: array[1..32000] of boolean;
begin
readln(n);
for i:=2 to (n+1) div 2 do
begin
x:=i*2;
while x<=n do
begin
a[x]:=true;
x:=x+i;
end;
x:=0;
end;
for i:=1 to n do if not a[i] then write(i,' ');
readln;
end.
За 5 минут Катя набрала 100 симв.
Дальше они набирают одновременно, и Маша догоняет Катю на 20 символов
каждую минуту.
Разрыв в 100 символов она догонит за 5 минут.
Ответ: через 10 минут после того, как начала печатать Катя, они напечатают
<span>одинаковое количество - 200 символов.</span>
Begin
var arr := arrGen(ReadInteger('Введите n: '), e -> ReadInteger()).Println().ToArray();
var sum := arr.Skip(arr.Length - 5).Sum();
Println(sum);
arr[0] := arr[0] < 0 ? arr[0] : sum;
arr.Println();
end.