Вопрос задан 01.09.2018 в 01:49. Предмет Информатика. Спрашивает Губин Никита.

Проверьте паскаль, где ошибка??? Не понимаю, как сумму сделать var a:array [1..6] of integer;

i:integer; sum:integer; begin sum:=0; for i:=1 to 6 do begin readln(a[ i ]); sum:=sum+a[ i ]; end; if (a[i]>9) and (a[i]<100) and (a[i]<0) and (a[i] mod 5=0) then writeln(sum); end.
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Аубакирова Жанель.
Решение вложено. 
------------------------------------------- 

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Проверка паскаль кода и исправление ошибок

У вас есть фрагмент кода на языке Паскаль, в котором вы пытаетесь вычислить сумму элементов массива `a` и вывести ее на экран. Однако, в коде есть несколько ошибок, которые мешают его выполнению. Давайте разберемся с каждой ошибкой по очереди и исправим их.

Ошибка 1: Отсутствие объявления переменных

Перед тем как использовать переменные в коде, их необходимо объявить. В вашем коде отсутствуют объявления переменных `a`, `i` и `sum`. Добавим объявления перед началом блока `begin`:

```pascal var a: array[1..6] of integer; i: integer; sum: integer; ```

Ошибка 2: Неправильное использование операторов сравнения

Ваш код содержит условие `if (a[i]>9) and (a[i]<100) and (a[i]<0) and (a[i] mod 5=0) then writeln(sum);`, которое проверяет несколько условий одновременно. Однако, условие `(a[i]<0)` не имеет смысла, так как вы проверяете, что элемент массива одновременно больше 9, меньше 100, меньше 0 и делится на 5 без остатка. Я предполагаю, что вы хотите проверить, что элемент массива является положительным числом, меньшим 100 и делится на 5 без остатка. Давайте исправим это условие:

```pascal if (a[i] > 9) and (a[i] < 100) and (a[i] > 0) and (a[i] mod 5 = 0) then writeln(sum); ```

Исправленный код

Вот как должен выглядеть исправленный код:

```pascal var a: array[1..6] of integer; i: integer; sum: integer; begin sum := 0; for i := 1 to 6 do begin readln(a[i]); sum := sum + a[i]; end; if (a[i] > 9) and (a[i] < 100) and (a[i] > 0) and (a[i] mod 5 = 0) then writeln(sum); end. ```

Теперь ваш код должен работать правильно. Он считывает 6 чисел с клавиатуры в массив `a`, вычисляет их сумму и выводит эту сумму на экран, если последний элемент массива удовлетворяет условию.

Примечание: При исправлении ошибок я предположил, что вы хотите проверять последний элемент массива `a` на соответствие условию. Если это предположение неверно, пожалуйста, уточните требования, чтобы я мог внести соответствующие изменения в код.

0 0

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

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

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