13.06.2012, 21:45 | #1 (permalink) |
Member
Регистрация: 13.05.2011
Сообщений: 49
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Одномерный массив
Результаты решения вашей задачи выводите с пояснительными текстами, каждое с новой строки. Если в массиве произошли изменения по заданию, то необходимо еще раз вывести массив на экран. Если в массиве сумма четных элементов положительна, найти максимальный элемент, иначе – все элементы удвоить. Код:
{ђ®¬**оЄ 251} program romanuk9_2; uses crt; type Mas = array[1..100] of integer; var A:mas; b,i,c,s:integer; begin clrscr; writeln('введите кол-во элементов массива*'); readln(b); writeln;writeln; randomize; for i:=1 to b do begin A[i]:=random(200)-100; write(A[i]:5); end; writeln; s:=0; for i:=1 to b do begin if A[i] mod 2 <>0 then s:=s else S:=s+A[i]; end; writeln(s,' -сумма нечетных элементов'); c:=1; for i:=1 to b do begin if s<0 then A[i]:=A[i]*2 end; if s>0 then for i:=2 to b do if A[i]<A[c] then A[i]:=A[c]; writeln(A[i],' max'); writeln;writeln; readln; end. 1)неправильно считает сумму 2)всегда выводит мах элемент( не зависимо от получившейся суммы) |
13.06.2012, 21:45 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Полезные советы по решению проблемы можно найти в аналогичных обсуждениях Одномерный массив Одномерный массив, Pascal Одномерный массив в Паскале Помогите решить одномерный массив Одномерный и двумерный массив |
13.06.2012, 22:29 | #2 (permalink) |
Member
Регистрация: 13.05.2011
Сообщений: 49
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
и так, я чуток посидел, и у меня получилось правильно выводить мах элемент:он его правильно находит и выводит когда надо( при сумме>0),
но вот сумму он все равно не правильно находит, и я никак не могу понять почему????? и даже если он делает сумму положительной, то массив умноженный на 2 он не выводит( |
13.06.2012, 23:17 | #3 (permalink) |
Member
Регистрация: 13.05.2011
Сообщений: 49
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
теперь осталась одна проблема:правильное нахождение суммы четных элементов.....
вот моя "исправленная программа": Код:
{ђ®¬**оЄ 251} program romanuk9_2; uses crt; type Mas = array[1..100] of integer; var A:mas; b,i,c,s,max:integer; begin clrscr; s:=0; writeln('введите кол-во символов массива*'); readln(b); writeln;writeln; randomize; for i:=1 to b do begin A[i]:=random(200)-100; write(A[i]:5); end; writeln; for i:=1 to b do if A[i] mod 2=0 then s:=s+A[i]; writeln(s,' -сумма четных элементов'); c:=1; for i:=2 to b do if A[c]<A[i] then c:=i; max:=A[c]; if s<0 then for i:=1 to b do begin A[i]:=A[i]*2; write(A[i],' '); end; if s>0 then writeln(max); readln; end. |
13.06.2012, 23:33 | #4 (permalink) |
Member
Регистрация: 13.05.2011
Сообщений: 49
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
все, ошибку нашел.....черт, так обидно когда по тупости сидишь, и бред получаешь,а ошибка в букве со скобками......ааааа!!!
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
Опции темы | |
Опции просмотра | |
|
|