 
Нет индексного свойства по умолчанию для типа byte program bankai; Uses crt; {Подключение
стандартного модуля TP} Var Mas: Array[1..10] of integer; {Описание массива вещественных чисел} S:real; {описание переменной для хранения суммы} i,N:byte; begin Clrscr; {Очистка экрана} Write(' Введите число элементов в массиве К ='); Readln(N); Writeln(' Введите ',N,' вещественных чисел через пробел'); For i:=1 to N do read(N[i]); { Ввод чисел} writeln; S:=0.0; { Присвоение начального значения суммы} For i:=1 to K do If M[i]>0 then S:=S+M[i]; { Суммирование положительных чисел} Writeln(' S = ',S); { Вывод полученной суммы} End. 0
        0
         0
        0
    Ответы на вопрос
 
        Ответ:
1. Если уж массив ВЕЩЕСТВЕННЫХ чисел, то не integer, a real
(Var Mas: Array[1..10] of real)
2. Переменные считываются по Enter а не по пробелу
(Writeln(' Введите ',N,' вещественных чисел через Enter');
Посмотрел дальше, это вообще жесть. Весь код надо полностью переписывать. Задачу лучше напиши что: сделать надо
 0
                    0
                     0
                    0
                 
            Вы указали, что нет индексного свойства по умолчанию для типа byte. Однако, в вашем коде вы используете byte в качестве индекса массива. Это вполне допустимо, и я предполагаю, что вы хотели создать массив Mas с индексами от 1 до 10.
Тем не менее, в вашем коде есть несколько ошибок, которые нужно исправить:
- В строке - For i:=1 to N do read(N[i]);вы пытаетесь прочитать значения в массив- N, вместо массива- Mas. Исправьте эту строку на- For i:=1 to N do read(Mas[i]);.
- В строке - For i:=1 to K do If M[i]>0 then S:=S+M[i];вы используете переменную- K, вместо- N, которую вы объявили для хранения количества элементов массива. Замените- Kна- N, чтобы исправить эту ошибку.
После внесения этих исправлений, ваш исправленный код будет выглядеть следующим образом:
pascalprogram bankai; uses crt; var Mas: array[1..10] of integer; S: real; i, N: byte; begin Clrscr; Write('Введите число элементов в массиве N = '); Readln(N); Writeln('Введите ', N, ' вещественных чисел через пробел'); for i := 1 to N do read(Mas[i]); // Ввод чисел writeln; S := 0.0; for i := 1 to N do if Mas[i] > 0 then S := S + Mas[i]; // Суммирование положительных чисел Writeln('S = ', S); // Вывод полученной суммы end.
После этих исправлений код должен работать правильно, считывая вещественные числа в массив и вычисляя сумму положительных чисел.
 0
                    0
                     0
                    0
                Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
- 
			Математика 
- 
			Литература 
- 
			Алгебра 
- 
			Русский язык 
- 
			Геометрия 
- 
			Английский язык 
- 
			Химия 
- 
			Физика 
- 
			Биология 
- 
			Другие предметы 
- 
			История 
- 
			Обществознание 
- 
			Окружающий мир 
- 
			География 
- 
			Українська мова 
- 
			Информатика 
- 
			Українська література 
- 
			Қазақ тiлi 
- 
			Экономика 
- 
			Музыка 
- 
			Право 
- 
			Беларуская мова 
- 
			Французский язык 
- 
			Немецкий язык 
- 
			МХК 
- 
			ОБЖ 
- 
			Психология 
- 
			Физкультура и спорт 
- 
			Астрономия 
- 
			Кыргыз тили 
- 
			Оʻzbek tili 
 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			 
			