74

Помогите найти ошибки — Паскаль

che_ig 10 августа 2022

Помогите найти ошибки — Паскаль. Условие: Дан одномерный массив, состоящий из вещественных элементов. Найти произведение элементов массива, расположенных между максимальным по модулю и минимальным по модулю элементами. Не совсем то выводитprogram proizvedenie; var q,z,w,i,n,i1,i2: integer; a: array[1… 1000] of real; amin,amax,pr: real; beginassign (input,'input.txt'); assign (output,'output.txt'); reset (input); rewrite (output); readln (n); for i: =1 to n do read (a[i]); amin: =a[1]; for i: =1 to n dobeginif a[i] amax thenamax: =a[i]; i2: =i; end; if i2>i1 then beginq: =i1; w: =i2; endelse beginq: =i2; w: =i1; end; if (w-q) >1 then beginpr: =1; for z: =q to w dopr: =pr*a[z]; endelse write (0); close (input); close (output); end.

категория: информатика

54

Вот программаС использованием файловprogram proizvedenie; uses crt; var a: array[1… 1000] of real; amax,amin,p: real; i,n,i1,i2: integer; inp,outp: text; beginassign (inp,'input.txt'); assign (outp,'output.txt'); readln (n); p: =1; reset (inp); for i: =1 to n doread (inp,a[i]); close (inp); amin: =a[1]; for i: =1 to n doif abs (amin) >=abs (a[i]) then begin amin: =a[i]; i1: =i; end; amax: =a[1]; for i: =1 to n doif abs (amax) <= abs (a[i]) then begin amax: =a[i]; i2: =i; end; if (i2>i1) and (i1+1<>i2) thenfor i: =i1+1 to i2-1 dop: =p*a[i] elseif (i1>i2) and (i1-1<>i2) thenfor i: =i1-1 downto i2+1 dop: =p*a[i] else beginwrite (0); exit; end; rewrite (outp); write (outp,p); close (outp); end. Без файловprogram proizvedenie; uses crt; var a: array[1… 1000] of real; amax,amin,p: real; i,n,i1,i2: integer; beginp: =1; readln (n); for i: =1 to n doread (a[i]); amin: =a[1]; for i: =1 to n doif abs (amin) >=abs (a[i]) then begin amin: =a[i]; i1: =i; end; amax: =a[1]; for i: =1 to n doif abs (amax) <= abs (a[i]) then begin amax: =a[i]; i2: =i; end; if (i2>i1) and (i1+1<>i2) thenfor i: =i1+1 to i2-1 dop: =p*a[i] elseif (i1>i2) and (i1-1<>i2) thenfor i: =i1-1 downto i2+1 dop: =p*a[i] else beginwrite (0); exit; end; write (p); end. Ошибки: 1) В разделе описания переменных var нет файловых переменных input и output; 2) В строке 24 нет begin… end; 3) Сравнивать нужно модули переменных amin и amax с модулем a[i]; + Много лишних переменных

пользователи выбрали этот ответ лучшим

Знаете другой ответ?
Другие вопросы по информатике
10 августа 2022
№ 1 Моя семья. Мне уже 31 год, моему брату на 13 лет больше. Младшая сестра на 3 года моложе меня: ей 22 года. Моему отцу столько лет, сколько в сумме мне, брату и сестре. Возраст мамы получается, есливычесть половину возраста сестры из возраста отца. Сколько лет каждому? Чем объяснить странные противоречия в числах? Восстановите текст, устранив противоречия. №2 толя сережа купили конфеты. Они решили поделить их поровну, но оказалось. Что конфет 27, тогда они разделили на две кучки по 13 и 14 конфет и решили сыграть в игру: кто"будут по очереди брать. Кто последний возмет, тот и выиграл. За один ход можно брать любое количество, но только из одной кучки. Выигравший заберает конфеты. Кто должен ходить первым, чтобы Сережа выиграл, и какую стратегию ему применить? №3 три ученика разных школ. На вопрос, в каких школах они учатся, каждый дал ответ. Павел: "учусь в школе 24, а Лиля в 8 школе» Лиля: " учюсь в школе 24, а павел в 30 школе» Ярик: " учусь в школе 24, а Павел в 8 школе"где правда, а где лож? Ребята сознались, что в ответах каждого из них одно утверждение верно, а другое ложно.

Есть интересный вопрос? Задайте его нашему сообществу, у нас наверняка найдется ответ!
Делитесь опытом и знаниями, зарабатывайте награды и репутацию, заводите новых интересных друзей!
Задавайте интересные вопросы, давайте качественные ответы и зарабатывайте деньги. Подробнее...