Procedura aritmeticka sredina

Procedura aritmeticka sredina

offline
  • Software developer
  • Pridružio: 06 Sep 2005
  • Poruke: 3800
  • Gde živiš: Beograd

Treba da resim ovaj zadatak.
Napisati proceduru koja izracunava aritmeticku sredinu n celih brojeva.

Da li neko zna kako bi izgledala ova procedura?

Unapred hvala.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 18 Apr 2003
  • Poruke: 8134
  • Gde živiš: U kesici gumenih bombona...

Ne znam pascal, ali evo ti pseudo kod.

Saberes sve brojeve kroz koje prolazis kroz petlju.
U petlji stavis da ti se inkrementuje jedna promenljiva.
Posle petlje, podelis to sto si sabrao sa tom inkremenitranom vrednoscu i to je to...

Ako si trazio teoretsko Smile, za prakticno, cekaj nekog pascal oriented programera.



offline
  • Strog  Male
  • Stručni saradnik
    Web programiranje
  • Bojan Kopanja
  • Web & Mobile developer @ ZeusSoftware
  • Pridružio: 26 Jul 2003
  • Poruke: 2597
  • Gde živiš: Stara Pazova

Za prakticno ne cekaj previse Wink. Dobio si pseudo kod, a ti sad po njemu radi! Ako negde zapnes napisi ovde do gde si stigao i posuj kod pa ce neko da ga doradi/preradi, ali samo nemoj molim te ocekivati da ce neko resavati domaci za tebe Wink.

offline
  • Pridružio: 04 Sep 2003
  • Poruke: 24135
  • Gde živiš: Wien

Kako mislis u proceduru da uneses niz nepoznate velicine?
Ako ga budes uneo kao dinamicki array, onda ti je velicina matrice ujedno i broj kojim treba da podelis. Zbir elemenata matrice odradi iteriranjem (petlja), kao sto ti je snoop objasnio.

offline
  • Strog  Male
  • Stručni saradnik
    Web programiranje
  • Bojan Kopanja
  • Web & Mobile developer @ ZeusSoftware
  • Pridružio: 26 Jul 2003
  • Poruke: 2597
  • Gde živiš: Stara Pazova

bobby mozda i ne mora da bude niz... U zadatku nigde ne pise da se unos mora uraditi pre procedure, tako da program moze da lici na ovako nesto:
program aritm_sred; begin procedure neka_proc(...); writeln(rezultat); end;

Tako da ukoliko unos radi isto iz procedure to ide u petlji od 1 do n i odmah se svi brojevi sabiraju i podele sa n i to je to. Jedino tako mi pada na pamet da se odradi bez dinamickih nizova, tj. dinamickog zauzimanja memorije posto se unaored ne zna broj n Smile.

Jedino ako se zna da je n max 200 onda nije problem ni sa nizom Smile.

offline
  • Đuro Glumac
  • dipl. ing. informatike
  • Pridružio: 08 Feb 2004
  • Poruke: 3640
  • Gde živiš: ApAtIn

Ako se u zadatku kaze n celih brojeva, znaci da se taj broj n elemenata dobija i duzina niza je poznata. Tako da je najlakse uraditi sa array-om.

offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Ako je u pitanju TP, niz moze ovako da se prosledi funkciji:
{$R-} type   TIntArray = array [0..0] of Integer;   PIntArray = ^TIntArray; var   Niz: PIntArray; function AritmetickaSredina(pNiz: PIntArray; iCount: Integer): Real; var   I: Integer; begin   for I := 0 to iCount - 1 do     // clanu pristupas sa pNiz^[I] end; begin   // uzmes broj n (broj clanova niza);   GetMem(Niz, N * SizeOf(Integer));   // popunis niz (Niz^[I])   // prosledis niz funkciji AritmetickaSredina(Niz, N)   FreeMem(Niz, N * SizeOf(Integer)); end.

Vrlo lako se napravi i objekat koji bi automatski kreirao niz brinuo se o njemu kao sto u Delphiu radi TList.

Ko je trenutno na forumu
 

Ukupno su 1416 korisnika na forumu :: 56 registrovanih, 7 sakrivenih i 1353 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 8u47, A.R.Chafee.Jr., aramis s, babaroga, bobomicek, bojank, celik, cenejac111, cinoeye, croato, DejanSt, Denaya, Dimitrise93, djboj, Djokkinen, draganca, Duh sa sekirom, Dukelander, dzoni19, GandorCC, gomago, goxin, hooraay, hyla, Ilija Cvorovic, Karla, kikisp, Klecaviks, Kubovac, kunktator, ljuba, maiden6657, Marko Marković, mercedesamg, Mi lao shu, MikeHammer, mikrimaus, milenko crazy north, milutin134, ObelixSRB, oganj123, procesor, rasok, repac, Srle993, stankolich, suton, theNedjeljko, vathra, Viceroy, VJ, Vladko, wolverined4, Wrangler, zeo, šumar bk2