Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.12.2013, 02:04   #1
fardik
 
Регистрация: 19.11.2013
Сообщений: 9
По умолчанию Подпрограмма

Задание №9
http://pixs.ru/showimage/WP20131210_...6_10119401.jpg
Понимаю что нужно задать 4 массива , а дальше с чего начать и тд без понятие, помогите, если не сложно.
Заранее спасибо!

Последний раз редактировалось fardik; 17.12.2013 в 02:05. Причина: не отображалось фото
fardik вне форума Ответить с цитированием
Старый 17.12.2013, 03:15   #2
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,499
По умолчанию

Очешуеть! Картинка 4 Мбайта. Нельзя разве было сократить. Или это тоже не умеешь?

Цитата:
Сообщение от fardik Посмотреть сообщение
.. а дальше с чего начать и тд без понятие, помогите, если не сложно..
Средние арифметические каждого массива вычислить. А так как массивы разного объема, то использовать динамические массивы.
В качестве подпрограммы - здесь напрашивается функция.
Код:
type TipAr=array of Double; 
function SredArif(ar:TipAr):Double;
var i,nar:Integer;
   s:Double;
begin
 nar:=Length(ar);
 s:=0;
 for i:=0 to nar-1 do s:=s+ar[i];
 SredArif:=s/nar;
end;
Или так:
Код:
type TipAr=array of Double; 
function SredArif(ar:TipAr;nar:Integer):Double;
var i:Integer;
   s:Double;
begin
 s:=0;
 for i:=0 to nar-1 do s:=s+ar[i];
 SredArif:=s/nar;
end;
Вот ее и используй.
type_Oleg вне форума Ответить с цитированием
Старый 17.12.2013, 09:44   #3
Kemperh4
Пользователь
 
Регистрация: 25.05.2010
Сообщений: 16
Счастье

Код:
Program m1;
type 
mas=array[1..100] of integer;
var a,b,c,d:mas;
r1,r2,r3,r4:real;
i,n,m,k,l:integer;

Function Kom(x:mas;xn:integer):real;
var xi:integer;
xsum:real;
begin
xsum:=0;
For xi:=1 to xn do
xsum:=xsum+x[xi];
if xn <> 0 then
Kom:=xsum/xn else
Kom:=0;
end;

Function min (r1,r2,r3,r4:real):integer;
var m1:real;nom:integer;
begin
m1:=r1;
nom:=1;
if r2<m1 then begin
m1:=r2;
nom:=2;
end;
if r3<m1 then begin
m1:=r3;
nom:=3;
end;
if r4<m1 then begin
m1:=r4;
nom:=4;
end;
min:=nom;
end;

begin
writeln('Введите количество случайных экспериментальных величин n m k l:');
read(n,m,k,l);

For i:=1 to n do
a[i]:=random(100);

For i:=1 to m do
b[i]:=random(100);

For i:=1 to k do
c[i]:=random(100);

For i:=1 to l do
d[i]:=random(100);

For i:=1 to n do 
write('a[',i,']=',a[i],' ');
writeln;

For i:=1 to m do 
write('b[',i,']=',b[i],' ');
writeln;

For i:=1 to k do 
write('c[',i,']=',c[i],' ');
writeln;

For i:=1 to l do 
write('d[',i,']=',d[i],' ');
writeln;

r1:=Kom(a,n);r2:=Kom(b,m);r3:=Kom(c,k);r4:=Kom(d,l);
writeln('r={',r1:4:3,',',r2:4:3,',',r3:4:3,',',r4:4:3,'}');

write('Наименьшая компонента: r',min(r1,r2,r3,r4));

end.
Kemperh4 вне форума Ответить с цитированием
Старый 17.12.2013, 17:31   #4
fardik
 
Регистрация: 19.11.2013
Сообщений: 9
По умолчанию

Спасибо большое!!!
fardik вне форума Ответить с цитированием
Старый 17.12.2013, 18:01   #5
Kemperh4
Пользователь
 
Регистрация: 25.05.2010
Сообщений: 16
По умолчанию

Пользуйся наздоровье
Kemperh4 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подпрограмма на С++ serega260394 Помощь студентам 2 23.12.2010 09:37
Подпрограмма serega260394 Помощь студентам 1 18.12.2010 07:26
Подпрограмма peter065 Помощь студентам 10 11.10.2010 22:51
Подпрограмма NAZE Паскаль, Turbo Pascal, PascalABC.NET 12 31.05.2010 17:04
Подпрограмма Maks6169 Помощь студентам 4 13.02.2010 12:30