05.04.2014, 17:42 | #1 (permalink) |
Новичок
Регистрация: 05.04.2014
Сообщений: 7
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Помогите, пожалуйста, написать программу на языке Паскаль
В одномерном массиве, состоящем из п вещественных элементов, вычислить: 1. Количество элементов массива, равных нулю. 2. Сумму элементов массива, расположенных после минимального элемента. Упорядочить элементы массива по возрастанию модулей. |
05.04.2014, 17:42 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Пока в вашей теме нет ответов можете заняться прочтением схожих тем Помогите, пожалуйста, написать программы на языке Паскаль Здравствуйте, помогите пожалуйста написать программы на языке паскаль.Заранее спасибо Здравствуйте, помогите пожалуйста написать программы на языке паскаль.Заранее спасибо |
05.04.2014, 18:43 | #2 (permalink) |
Member
Регистрация: 26.02.2014
Сообщений: 19
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Program A1;
const n=50; Var i,min,sum,nul:integer; a:array[1..n] of integer; Begin randomize; for i:=1 to n do begin a[i]:=random(30)-10; write(a[i]:4); end; nul:=0; if a[i]<0 then nul:=nul+1; Writeln('Koli4ectBo HyJlEi=',nul:2); for i:=1 to n do begin min:=-10; end; for i:=1 to n do begin if a[i]<min then min:=a[i]; sum:=min+a[i+1]; end; Writeln('CyMMa ElementoB /7OCJlE min=',sum:4); end. Как видишь чето у меня не получается,посмотрим что мастера скажут. |
05.04.2014, 21:56 | #3 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
А мастера настоятельно потребуют, чтобы впредь сырые неотлаженные программы в качестве "помощи" не выкладывались. Потому что мастерам далеко не безразлична репутация форума.
Раджаб bro, то, что Вы представили это, извините, полный ужас и какое-то хаотическое нагромождение ошибок и неряшливостей. Вместо количества нулевых считается количество отрицательных членов, цикл поиска минимума вообще отсутствует, зато зачем-то n раз осуществляется операция min:=-10;, попытка сосчитать сумму членов после минимального - вообще какой-то бред, упорядочение массива отсутствует, и т.д. и т.п. Справедливости ради отмечу, что и в самом задании присутствует ляп, уж не знаю, по чьей вине. Дело в том, что если массив вещественный (real), то вероятность появления в нем строго нулевых членов настолько мала, что определять их количество абсолютно бессмысленное дело. Поэтому будем считать массив целочисленным (integer). С учетом этого: Код:
const n=50; Var i,j,min,sum,nul,Imin,D:integer; a:array[1..n] of integer; Begin randomize; nul:=0; writeln('Initial array:'); for i:=1 to n do begin a[i]:=random(30)-10; write(a[i]:4); if a[i]=0 then nul:=nul+1; end; writeln; writeln; Writeln('Number of zero elements is ',nul); writeln; min:=a[1]; Imin:=1; for i:=2 to n do if a[i]<min then begin min:=a[i]; Imin:=i; end; sum:=0; for i:=Imin+1 to n do sum:=sum+a[i]; Writeln('Sum of elements after minimal is ',sum); writeln; Writeln ('Ordered array:'); for i:=1 to n-1 do for j:=1 to n-i do if abs(a[j])>abs(a[j+1]) then begin D:=a[j]; a[j]:=a[j+1]; a[j+1]:=D; end; for i:=1 to n do write(a[i]:4); readln end. |
05.04.2014, 22:07 | #4 (permalink) |
Member
Регистрация: 31.03.2010
Адрес: Тульская область
Сообщений: 1,309
Сказал(а) спасибо: 11
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 13090
|
Не успел, но выкладываю.
Интерено мнение о качестве. const n= 20; var A: array[1..n] of Real; i,null,e: byte; t,min,sum: Real; begin Randomize; for i:=1 to n do A[i]:= Random(100)/10; for i:=1 to n do Write(A[i]:5:1); Writeln; min:= A[1]; null:=0; e:=0; for i:=1 to n do begin if A[i]=0 then Inc(null); if A[i]< min then begin min:= A[i]; e:=i; end; end; Writeln('Null=',null); sum:=0; for i:= (e+1) to n do sum:= sum+A[i]; Writeln('Summa=',sum:0:1); for i:=1 to n-1 do for e:=1 to n-i do if A[e]>A[e+1] then begin t:=A[e]; A[e]:=A[e+1]; A[e+1]:=t; end; for i:=1 to n do Write(A[i]:5:1); Readln; end. |
05.04.2014, 22:14 | #5 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
06.04.2014, 05:06 | #6 (permalink) | |
Новичок
Регистрация: 05.04.2014
Сообщений: 7
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Цитата:
|
|
06.04.2014, 05:09 | #7 (permalink) | |
Новичок
Регистрация: 05.04.2014
Сообщений: 7
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Цитата:
|
|
06.04.2014, 05:10 | #8 (permalink) | |
Новичок
Регистрация: 05.04.2014
Сообщений: 7
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Цитата:
|
|
06.04.2014, 11:52 | #9 (permalink) | |
Member
Регистрация: 26.02.2014
Сообщений: 19
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Цитата:
Что поделаешь надо учиться.Плохо прогу видать обдумал. |
|
06.04.2014, 11:55 | #10 (permalink) |
Member
Регистрация: 26.02.2014
Сообщений: 19
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
if a[i]<0 then nul:=nul+1
нет ну это хоть как я допустил там же видно что если =0,а не меньше...ужас |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|