Izračunavanje zajedničke mjere brojeva

poruka: 8
|
čitano: 5.084
|
moderatori: XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
13 godina
neaktivan
offline
Zadatak - potrebna pomoc

Ovako potrebana mi je pomoc oko zadatka, zadatka treba izraditi pomoću klasa te izraćunati zajedničku mjeru brojeva...

 
0 0 hvala 0
17 godina
moderator
online
Izračunavanje zajedničke mjere brojeva

Nisi napisao koji je programski jezik u pitanju.

 

Jel znaš što je "zajednička mjera brojeva"?

 
0 0 hvala 0
13 godina
neaktivan
offline
Izračunavanje zajedničke mjere brojeva

Što je zadatak?

 
0 0 hvala 0
13 godina
neaktivan
offline
Izračunavanje zajedničke mjere brojeva

ispricavam se sto nisam napisao sto je u zadatku navedeno...
ovako radi se o c++, a zadatak je, pomoću klasa riješi problem izračunavanja najveće zajedničke mjere brojeva, znaci na početku korisnika upitati koliko brojeva zeli unjeti u "program" zatim unjeti tolko brojeva i za sve navedene brojeve izracunati najvecu zajedničku mjeru, te je na kraju ispisati i pitati korisnika da li želi jos jednom izvrsiti program.
nikad nisam radio s klasama pa uopce neznam kako bi to rijesio. 

 
0 0 hvala 0
13 godina
neaktivan
offline
Izračunavanje zajedničke mjere brojeva

Je li igdje opisano za što se klasa točno koristi? Ovako odokativno mi to izgleda kao da uneseš niz brojeva, staviš ih u neki std::vector i izračunaš pomoću algoritma.

 

Jesi siguran da nešto ne fali tom tekstu?

 
0 0 hvala 0
13 godina
neaktivan
offline
Izračunavanje zajedničke mjere brojeva
ma koliko ja znam ne fali nista, jer to je kao "seminarski" zadatak pa imam na volju što god mogu raditi...
tako da molim malo objasnjenje (primjer) kako to rijesiti...
 
0 0 hvala 0
13 godina
neaktivan
offline
Re: Izračunavanje zajedničke mjere brojeva

Podijeli zadatak u niz koraka:

1. unesi broj N

2. unesi N brojeva u std::vector (kojih? cijelih? decimalnih?)

3. izračunaj najveću zajedničku mjeru od prva dva, pa zatim od toga i trećeg, pa toga i četvrtog, etc.

4. ispiši konačni rezultat

5. pitaj korisnika želi li ponovo

6. ako ne, izađi

 

Možeš ponavljanje napraviti ovako:

while (true)

{

 // kod

 

 cout << "Zelis li dalje? (d/n): ";

 char odg;

 cin >> odg;

 if (odg == 'n') break;

}

17 godina
offline
Izračunavanje zajedničke mjere brojeva

On misli na najveći zajednički djeljitelj?

 

Evo pogledaj ovaj algoritam koji sam napisao u C#, a koji računa GCD preko Euklid-a, prilagodi ga za C++

Kao što vidiš, u klasi sam napisao dva metoda, odnosno funkcijska člana, od kojih jedan metod poziva drugi.

Povratna vrijednost metoda je vrijednost najvećeg zajedničkog djeljitelja za uneseni niz.

Napravi takav konstruktor klase da kao element prima vektor<int>, napiši ovakvu klasu , stavi jedan getter koji će pokupiti vrijednost GCD-a za instancirani objekt,

i to je to.

 

 

 public long GCD(long[] nizBrojeva) // argument je niz (ti uzmi vektor)
 {
     if (nizBrojeva.Length > 1)
     {
         long rezultat = nizBrojeva[0];
         for (int index = 1; index < nizBrojeva.Length; index++)
         {
              rezultat = GCD(rezultat, nizBrojeva[index]);
         }
         return rezultat;
     }
     else
     {
         return nizBrojeva[0];
     }
 }
 private long GCD(long a, long b)
 {
    return b == 0 ? a : GDC(b, a % b);
 }

Poruka je uređivana zadnji put sri 14.12.2011 14:32 (Floki).
 
1 0 hvala 0
1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice