Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.145.12.242] |
|
Сообщ.
#1
,
|
|
|
Помогите доделать задачку... Из данных нужно сделать одну...
1. В массиве а1, а2, ... а50 определить кол-во нулей. 2. В массиве d1, d2, ... d35 Найти сумму чисел, расположенных на нечетных местах. 3. В массиве c1, c2, ... c40 Найти произведение отрицательных чисел. 4. В массиве b2, b2, ... b45 Найти сумму отрицательных чисел. 5. В массиве b1, b2, ... b20 Найти кол-во "единиц" ....... зарание благодарен. Program Perscagi; Uses Crt; Const Maxel=50; Type mas1i=array[..Maxel] of integer; Uses a :mas1i; n :integer; kZero, OddPlace, ked : byte; SumofNed, MultOfNed : longint; Procedure InitMas (num:integer; var mas:mas1i); Var i:=integer; begin for i:=1 tu num do begin mas[i]:=random(18)-5; if mas[i]=-5 then mas[i]:=0 end; end; Procedure PrintMas (num:integer; var mas:mas1i); var i:integer; begin for i:=1 tu num do write(mas[i],''); writeln; end; Procedure Nuli (num: integer; mas:mas1i; var k0:byte); Var i:integer; Begin k0:0; for i:=1 to num do if mas[i]=0 then k0:=k0+1; end; {Procedure sumnech; Var Begin for do end; Procedure proizotr; Var Begin for do end; Procedure sumotr; Var Begin for do end; Procedure coledin; Var Begin for do end;}} Begin ClrScr; Randomize; Write('Размерность массива?'); Readln(n); InitMas(n,a); PrintMas(n,a); Nuli(n,a,kZero); Writeln('Количество нулей: ',kZero); { Сумма чискл, расположенных на нечетных местах:', ,'); Произведение орицательных чисел:', ,'); Сумма отрицательных чисел:', ,'); Количество "единиц":', ,');} ReadKey; end. |
Сообщ.
#2
,
|
|
|
Никита, в смысле - одну? Вес свести в один цикл, подпрограмму, программу?
|
Сообщ.
#3
,
|
|
|
Никита, она ж решена у тебя - только синтаксические ошибки исправить нужно...
Program Perscagi; Uses Crt; Const Maxel=50; Type mas1i=array[1..Maxel] of integer; Var { <--- !!! } a :mas1i; n :integer; kZero, OddPlace, ked : byte; SumofNed, MultOfNed : longint; Procedure InitMas (num:integer; var mas:mas1i); Var i:integer; { <--- !!! } begin for i:=1 to num do { <--- !!! } begin mas[i]:=random(18)-5; if mas[i]=-5 then mas[i]:=0 end; end; Procedure PrintMas (num:integer; var mas:mas1i); var i:integer; begin for i:=1 to num do write(mas[i],' '); { <--- !!! } writeln; end; Procedure Nuli (num: integer; mas:mas1i; var k0:byte); Var i:integer; Begin k0:=0; { <--- } for i:=1 to num do { <--- !!! } if mas[i]=0 then k0:=k0+1; end; { Procedure sumnech; Var Begin for do end; Procedure proizotr; Var Begin for do end; Procedure sumotr; Var Begin for do end; Procedure coledin; Var Begin for do end; } { <--- Одна скобка была лишняя } Begin ClrScr; Randomize; Write('Размерность массива?'); Readln(n); InitMas(n,a); PrintMas(n,a); Nuli(n,a,kZero); Writeln('Количество нулей: ',kZero); { Сумма чискл, расположенных на нечетных местах:', ,'); Произведение орицательных чисел:', ,'); Сумма отрицательных чисел:', ,'); Количество "единиц":', ,'); } ReadKey; end. |
Сообщ.
#4
,
|
|
|
Procedure sumotr (num: integer; mas:mas1i; var sum:integer); Var i:integer; Begin sum:=0; for i:=1 to num do if mas[i]<0 then sum:=sum+mas[i]; end; Procedure proizotr (num: integer; mas:mas1i; var pr:integer); Var i:integer; Begin pr:=1; for i:=1 to num do if mas[i]<0 then pr:=pr*mas[i]; end; Добавлено Procedure coledin (num: integer; mas:mas1i; var k0:byte); Var i:integer; Begin k0:=0; for i:=1 to num do if mas[i]=1 then k0:=k0+1; end; Добавлено Procedure sumnech(num: integer; mas:mas1i; var sum:integer); Var i:integer; Begin sum:=0; for i:=1 to num do if mas[i] mod 2 <>0 then sum:=sum+mas[i]; end; |
Сообщ.
#5
,
|
|
|
Цитата Мяут @ Никита, в смысле - одну? Вес свести в один цикл, подпрограмму, программу? Да чтобы на экран вывадились. Не как по отдельности программы, а все сразу ... у меня е до конца сделана.. помогите собрать ... уже бежать через 15 минут.. в компьютерку |
Сообщ.
#6
,
|
|
|
Оззя,
Цитата Никита @ ... Сумма чискл, расположенных на нечетных местах: А ты что находишь? Цитата Оззя @ if mas[i] mod 2 <>0 |
Сообщ.
#7
,
|
|
|
Спасибо Оззя! А больше не каких процедур не надо уже?!
|
Сообщ.
#8
,
|
|
|
volvo877
if i mod 2 <>0 |
Сообщ.
#9
,
|
|
|
volvo877 Чет я не понил! ?
|
Сообщ.
#10
,
|
|
|
Никита
Нет, все 5 задач отработаны. Вызовы их только вставь. Добавлено Никита volvo877 указал мне мою ошибку, кот-ю я исправил. |
Сообщ.
#11
,
|
|
|
Оззя! volvo877! Спасибо огромное! Выручили...
|
Сообщ.
#12
,
|
|
|
|