Вопрос задан 14.11.2026 в 21:28. Предмет Информатика. Спрашивает Новопашина Ксюша.

Паскаль выдаёт ошибку: Undefined FileName(0): Нельзя преобразовать тип KeyValuePair к boolean.
Программа:
const n=50;
var A:array [1..n] of integer;
S:real;
i:integer;
begin
for i:=1 to n do
begin
read (a[i]);
If (A[i] >= 10) then
S:=S+A[i];
end;
writeln ('S=',S);
end.

Перейти к ответам

Ответы на вопрос

Отвечает Кудайберген Бексултан.

В программе нужно задать начальное значение суммы: \(S:=0\). Иначе переменная \(S\) может содержать неопределённое значение.

Исправленный вариант:

const n = 50;
var A: array[1..n] of integer;
    S: real;
    i: integer;
begin
  S := 0;
  for i := 1 to n do
  begin
    read(A[i]);
    if A[i] >= 10 then
      S := S + A[i];
  end;
  writeln('S = ', S);
end.

Сообщение про KeyValuePair не связано с этой записью на Паскале: обычно оно появляется из-за ошибки среды запуска или неверно выбранного языка. Программа должна получать на вход \(50\) целых чисел.

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос