begin
var a: array[1..13] of integer;
a[readinteger]+=1;
end.
Должно быть: Считывает с клавиатуры число и соответствующий элемент массива увеличивает на единицу.
Ошибка: Запрашивает два числа с клавиатуры.
begin
var a: array[1..13] of integer;
a[readinteger]+=1;
end.
Должно быть: Считывает с клавиатуры число и соответствующий элемент массива увеличивает на единицу.
Ошибка: Запрашивает два числа с клавиатуры.
А давайте a[readinteger]+=1;
представим в более традиционном виде?
a[readinteger]:=a[readinteger]+1;
Вот оно отсюда и берется.
Не соответствующий, а ячейку — результат второго ввода + 1…
Т.е. для массива [1,2,3,4,5] при введённых 5 и 1 получится [1,2,3,4,2]
Фишка!
Да, это ошибка. Исправим
Просто ориентировался на аналогичную команду на Python
a[int(input())]+=1
и она не вызывает двойного ввода.
Да понятно, что и не должна по-хорошему. Я лишь попытался объяснить, почему так получилось.