Kristina3002
10.09.2021 03:58

Егэ.27. информатика. надо написать программу на 4 . условие. последовательность на спутнике «восход» установлен прибор, предназначенный для измерения солнечной активности. каждую минуту прибор передаёт по каналу связи неотрицательное целое число – количество энергии солнечного излучения, полученной за последнюю минуту, измеренное в условных единицах. временем, в течение которого происходит передача, можно пренебречь. необходимо найти в заданной серии показаний прибора максимальное чётное произведение двух показаний, между моментами передачи которых не менее 9 минут. если получить такое произведение не удаётся, ответ считается равным –1. количество энергии, получаемое прибором за минуту, не превышает 1000 условных единиц. общее количество показаний прибора в серии не превышает 10 000. мое решение var n, i, j, d, max: integer; a: array[1..9] of integer; begin readln(n); max : = -1; for i : = 1 to 9 do readln(a[i]); for i : = 10 to n do begin readln(d); if a[1] mod 2 = 0 then begin if a[1] * d > max then max : = a[1] * d end else if d mod 2 = 0 then if a[1] * d > max then max : = a[1] * d; for j : = 1 to 8 do a[j] : = a[j + 1]; a[9] : = d; end; writeln(max) end. потянет ли это решение на 4 ? если нет, что можно улучшить.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Жикабай
21.12.2021 00:00
В операторе y:=x*x+4/x+3 используется операция деления, которая всегда возвращает вещественный тип. Следовательно, и всё выражение в правой части всегда будет иметь вещественный тип. А в левой части стоит переменная целого типа. Присваивание вещественного значения целочисленной переменной запрещено правилами языка Паскаль.
Чтобы избавиться от ошибки, нужно знать алгоритм, который реализует программа. В зависимости от алгоритма может быть использована операция целочисленного деления, может быть использована функция Trunc(), возвращающая целочисленное значение аргумента, либо переменная y должна объявляться вещественной.
0,0(0 оценок)
Ответ:
MisterPOR
21.12.2021 00:00
В операторе y:=x*x+4/x+3 используется операция деления, которая всегда возвращает вещественный тип. Следовательно, и всё выражение в правой части всегда будет иметь вещественный тип. А в левой части стоит переменная целого типа. Присваивание вещественного значения целочисленной переменной запрещено правилами языка Паскаль.
Чтобы избавиться от ошибки, нужно знать алгоритм, который реализует программа. В зависимости от алгоритма может быть использована операция целочисленного деления, может быть использована функция Trunc(), возвращающая целочисленное значение аргумента, либо переменная y должна объявляться вещественной.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота