Search
 
 
  Engleski
 
 
 
Open in this window (click to change)
Forum@DeGiorgi: Početna
Forum za podršku nastavi na PMF-MO
Login Registracija FAQ Smajlići Članstvo Pretražnik Forum@DeGiorgi: Početna

Zad 5.26
WWW:
Idite na 1, 2  Sljedeće
Moja sarma
 
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji 1. godine, preddiplomski studij Matematika -> Programiranje 1 i 2
Prethodna tema :: Sljedeća tema  
Autor/ica Poruka
Artemis
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 20. 03. 2007. (21:35:45)
Postovi: (40)16
Spol: muško
Sarma = la pohva - posuda
-1 = 2 - 3

PostPostano: 16:13 ned, 10. 2. 2008    Naslov: Zad 5.26 Citirajte i odgovorite

Napisi program koji ucitava prirodne brojeve dok ne ucita nulu. Program treba ispisati produkt znamenaka ( u bazi 8 ) svih ucitanih prostih brojeva. (Zad 5.26 u skripti)

Ja sam napiso ovako:

[quote="Kod"]#include <stdio.h>

int main() {

unsigned int t, x, prod=1, p, prost;

do {
p=2;
prost=1;
printf("Unesi x: "); scanf("%u", &x);
if (x==0) break;
while(prost && p<x) {
if(x&p==0) prost=0;
p++;
}
t=x;
if(prost) {
while(t>0) {
prod *=( t % 8 );
t /= 8;
}
}
}while (x);
printf ("Produkt svih znamenaka je %u\n", prod);

scanf("%%");
return 0;
}[/quote]


Ne znam di je greska pa ako neko moze pomoc. Hvala
Napisi program koji ucitava prirodne brojeve dok ne ucita nulu. Program treba ispisati produkt znamenaka ( u bazi 8 ) svih ucitanih prostih brojeva. (Zad 5.26 u skripti)

Ja sam napiso ovako:

Kod (napisa):
#include <stdio.h>

int main() {

unsigned int t, x, prod=1, p, prost;

do {
p=2;
prost=1;
printf("Unesi x: "); scanf("%u", &x);
if (x==0) break;
while(prost && p<x) {
if(x&p==0) prost=0;
p++;
}
t=x;
if(prost) {
while(t>0) {
prod *=( t % 8 );
t /= 8;
}
}
}while (x);
printf ("Produkt svih znamenaka je %u\n", prod);

scanf("%%");
return 0;
}



Ne znam di je greska pa ako neko moze pomoc. Hvala



_________________
In such situations, when layer is put upon layer, when all is a facade, wound within webs of deception, the truth is what you make of it.
Nothing pains a liar more than when an opponent turns one of his lies into truth.


Zadnja promjena: Artemis; 16:58 ned, 10. 2. 2008; ukupno mijenjano 1 put.
[Vrh]
Korisnički profil Pošaljite privatnu poruku
Luuka
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 13. 02. 2007. (20:34:54)
Postovi: (925)16
Spol: muško
Sarma = la pohva - posuda
188 = 301 - 113
Lokacija: Hakuna Matata

PostPostano: 16:48 ned, 10. 2. 2008    Naslov: Re: Zad 5.26 Citirajte i odgovorite

[quote="Artemis"]
if(x&p==0) prost=0;
[/quote]

To smrdi ;)

A i malo ti je čudan program, bar meni. do-while je nepotrebno, dovoljno je staviti while (1) {} pa unutra breakat ako je učitana nula i ne kužim kaj će ti prost...za svaki učitani broj trebaš cijepat ga na znamenke u bazi 8 i produkt povećavat...drugo ti ne treba...naravno, jedna od tih znamenki može bit nula, al i to se događa u životu.

I daj to stavi u [code:1]KOD[/code:1], preglednije je i ljepše ;)

edit: sad vidjeh u skripti da u taj produkt idu samo prosti...pao nda provjera dal je prost treba
Artemis (napisa):

if(x&p==0) prost=0;


To smrdi Wink

A i malo ti je čudan program, bar meni. do-while je nepotrebno, dovoljno je staviti while (1) {} pa unutra breakat ako je učitana nula i ne kužim kaj će ti prost...za svaki učitani broj trebaš cijepat ga na znamenke u bazi 8 i produkt povećavat...drugo ti ne treba...naravno, jedna od tih znamenki može bit nula, al i to se događa u životu.

I daj to stavi u
Kod:
KOD
, preglednije je i ljepše Wink

edit: sad vidjeh u skripti da u taj produkt idu samo prosti...pao nda provjera dal je prost treba



_________________
"Bolje bi prolazio na faxu da sam na drogama nego na netu" - by a friend of mine
"Poslije spavanja doma spavanje bilo di mi je najdraža stvar" - by the same guy Very Happy
[Vrh]
Korisnički profil Pošaljite privatnu poruku Pošaljite e-mail
Artemis
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 20. 03. 2007. (21:35:45)
Postovi: (40)16
Spol: muško
Sarma = la pohva - posuda
-1 = 2 - 3

PostPostano: 17:01 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

Krivo sam zad napiso, ispravio sam sad. Dakle, trazi se produkt ucitanih [b]prostih[/b] brojeva.

Do... while sam uzeo kad mi se cinilo zgodno za prigodu :)
Krivo sam zad napiso, ispravio sam sad. Dakle, trazi se produkt ucitanih prostih brojeva.

Do... while sam uzeo kad mi se cinilo zgodno za prigodu Smile



_________________
In such situations, when layer is put upon layer, when all is a facade, wound within webs of deception, the truth is what you make of it.
Nothing pains a liar more than when an opponent turns one of his lies into truth.
[Vrh]
Korisnički profil Pošaljite privatnu poruku
Luuka
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 13. 02. 2007. (20:34:54)
Postovi: (925)16
Spol: muško
Sarma = la pohva - posuda
188 = 301 - 113
Lokacija: Hakuna Matata

PostPostano: 17:03 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

Bolje je tu while (uvjet koji je uvijek istinit), čak i u skripti tak piše...pa onda break ako je nula i nekakav if-else ili continue ako nije prost...recimo :)
Bolje je tu while (uvjet koji je uvijek istinit), čak i u skripti tak piše...pa onda break ako je nula i nekakav if-else ili continue ako nije prost...recimo Smile



_________________
"Bolje bi prolazio na faxu da sam na drogama nego na netu" - by a friend of mine
"Poslije spavanja doma spavanje bilo di mi je najdraža stvar" - by the same guy Very Happy
[Vrh]
Korisnički profil Pošaljite privatnu poruku Pošaljite e-mail
dvičak
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 02. 11. 2006. (17:55:13)
Postovi: (60)16
Spol: muško
Sarma = la pohva - posuda
18 = 19 - 1
Lokacija: dj-zg

PostPostano: 17:05 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

umjesto
[code:1]if(x&p==0) prost=0; [/code:1]
treba
[code:1]if(x%p==0) prost=0; [/code:1]
:wink:
umjesto
Kod:
if(x&p==0) prost=0;

treba
Kod:
if(x%p==0) prost=0;

Wink



_________________
potpis
[Vrh]
Korisnički profil Pošaljite privatnu poruku
Luuka
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 13. 02. 2007. (20:34:54)
Postovi: (925)16
Spol: muško
Sarma = la pohva - posuda
188 = 301 - 113
Lokacija: Hakuna Matata

PostPostano: 17:10 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

Evo nešto sklepano na brzinu, pa vidi...

[code:1]#include <stdio.h>

int main() {

unsigned int x;
int prod=1,prost,i;

while (1)
{
printf("Ucitaj x: ");
scanf("%u",&x);
if (x==0) break;
prost=1;
for (i=2;i<x/2;i++) if (x%i==0) {prost=0;break;}

if (prost)
while(x>0) {
prod *=( x % 8 );
x /= 8;
}
}
printf ("Produkt svih znamenaka je %d\n", prod);

scanf("%%");
return 0;
}[/code:1]
Evo nešto sklepano na brzinu, pa vidi...

Kod:
#include <stdio.h>

int main() {

   unsigned int x;
   int prod=1,prost,i;
   
   while (1)
   {
            printf("Ucitaj x: ");
            scanf("%u",&x);
            if (x==0) break;
            prost=1;
            for (i=2;i<x/2;i++) if (x%i==0) {prost=0;break;}
           
            if (prost)
                     while(x>0) {
                     prod *=( x % 8 );
                     x /= 8;
                     }
  }
  printf ("Produkt svih znamenaka je %d\n", prod);

  scanf("%%");
  return 0;
}



_________________
"Bolje bi prolazio na faxu da sam na drogama nego na netu" - by a friend of mine
"Poslije spavanja doma spavanje bilo di mi je najdraža stvar" - by the same guy Very Happy
[Vrh]
Korisnički profil Pošaljite privatnu poruku Pošaljite e-mail
Artemis
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 20. 03. 2007. (21:35:45)
Postovi: (40)16
Spol: muško
Sarma = la pohva - posuda
-1 = 2 - 3

PostPostano: 17:10 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

[quote="Luuka"]umjesto Kod:
if(x&p==0) prost=0;[/quote]

Nikad ga ne bi vidio.

:thankyou:
Luuka (napisa):
umjesto Kod:
if(x&p==0) prost=0;


Nikad ga ne bi vidio.

Thank you



_________________
In such situations, when layer is put upon layer, when all is a facade, wound within webs of deception, the truth is what you make of it.
Nothing pains a liar more than when an opponent turns one of his lies into truth.
[Vrh]
Korisnički profil Pošaljite privatnu poruku
anam
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 19. 10. 2007. (16:24:34)
Postovi: (B5)16
Sarma = la pohva - posuda
-30 = 8 - 38
Lokacija: My Hercegovina!!!!!

PostPostano: 18:59 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

Imam zadatak koji mi traži ispis najmanjeg prostog djelitelja nekog broja, zapravo učitava n prirodnih brojeva i treba ispisati najmanji prosti djelitelj svakog učitanog broja, e pa mene zanima kako da izračunam taj neki prvi prosti djelitelj s kojim ću uspoređivat ostale jer nije isti za sve brojeve nikako, a kako god ja napravim meni ih ispiše sve a ne najmanji
Imam zadatak koji mi traži ispis najmanjeg prostog djelitelja nekog broja, zapravo učitava n prirodnih brojeva i treba ispisati najmanji prosti djelitelj svakog učitanog broja, e pa mene zanima kako da izračunam taj neki prvi prosti djelitelj s kojim ću uspoređivat ostale jer nije isti za sve brojeve nikako, a kako god ja napravim meni ih ispiše sve a ne najmanji


[Vrh]
Korisnički profil Pošaljite privatnu poruku
Luuka
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 13. 02. 2007. (20:34:54)
Postovi: (925)16
Spol: muško
Sarma = la pohva - posuda
188 = 301 - 113
Lokacija: Hakuna Matata

PostPostano: 19:12 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

[quote="anam"]Imam zadatak koji mi traži ispis najmanjeg prostog djelitelja nekog broja, zapravo učitava n prirodnih brojeva i treba ispisati najmanji prosti djelitelj svakog učitanog broja, e pa mene zanima kako da izračunam taj neki prvi prosti djelitelj s kojim ću uspoređivat ostale jer nije isti za sve brojeve nikako, a kako god ja napravim meni ih ispiše sve a ne najmanji[/quote]

1. Učitaš niz n prirodnih brojeva i spremiš ih.
2. opet for petlja (ideš po nizu) i sad za svaki tražiš najmanji prost djelitelj. to radiš ovak: opet for petlja (od 2 do x[i]) i provjera dal je x[i] djeljiv s i. Kad naiđeš na prvog takvog ispišeš ga i breakneš (ovo pokriva slučaj i kad je x[i] prost)

I to je to ;)

p.s. Sve se to može čim učitaš i-ti broj, dakle situacija: [code:1]ucitaj broj: x[neki]
najmanji prost djelitelj od x[neki] je: nešto
učitaj broj: x[neki+1]
najmanji prost djelitelj od x[neki+1] je: nešto drugo[/code:1]
anam (napisa):
Imam zadatak koji mi traži ispis najmanjeg prostog djelitelja nekog broja, zapravo učitava n prirodnih brojeva i treba ispisati najmanji prosti djelitelj svakog učitanog broja, e pa mene zanima kako da izračunam taj neki prvi prosti djelitelj s kojim ću uspoređivat ostale jer nije isti za sve brojeve nikako, a kako god ja napravim meni ih ispiše sve a ne najmanji


1. Učitaš niz n prirodnih brojeva i spremiš ih.
2. opet for petlja (ideš po nizu) i sad za svaki tražiš najmanji prost djelitelj. to radiš ovak: opet for petlja (od 2 do x[i]) i provjera dal je x[i] djeljiv s i. Kad naiđeš na prvog takvog ispišeš ga i breakneš (ovo pokriva slučaj i kad je x[i] prost)

I to je to Wink

p.s. Sve se to može čim učitaš i-ti broj, dakle situacija:
Kod:
ucitaj broj: x[neki]
najmanji prost djelitelj od x[neki] je: nešto
učitaj broj: x[neki+1]
najmanji prost djelitelj od x[neki+1] je: nešto drugo



_________________
"Bolje bi prolazio na faxu da sam na drogama nego na netu" - by a friend of mine
"Poslije spavanja doma spavanje bilo di mi je najdraža stvar" - by the same guy Very Happy


Zadnja promjena: Luuka; 19:17 ned, 10. 2. 2008; ukupno mijenjano 1 put.
[Vrh]
Korisnički profil Pošaljite privatnu poruku Pošaljite e-mail
anam
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 19. 10. 2007. (16:24:34)
Postovi: (B5)16
Sarma = la pohva - posuda
-30 = 8 - 38
Lokacija: My Hercegovina!!!!!

PostPostano: 19:17 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

aj please mi to napiši ako ti se da, samo taj dio koda
aj please mi to napiši ako ti se da, samo taj dio koda


[Vrh]
Korisnički profil Pošaljite privatnu poruku
Luuka
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 13. 02. 2007. (20:34:54)
Postovi: (925)16
Spol: muško
Sarma = la pohva - posuda
188 = 301 - 113
Lokacija: Hakuna Matata

PostPostano: 19:21 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

Ovo je ona druga varijanta, ako nisam negdje fulo:
[code:1]for (i=0;i<n;i++)
{
scanf("%d",&x[i]);
for (j=2;j<=x[i];j++) if (x[i]%j==0)
{
printf("najmanji prosti djelitelj od %d je %d\n",x[i],j);
break;
}
}[/code:1]

;)
Ovo je ona druga varijanta, ako nisam negdje fulo:
Kod:
for (i=0;i<n;i++)
    {
       scanf("%d",&x[i]);
       for (j=2;j<=x[i];j++) if (x[i]%j==0)
          {
            printf("najmanji prosti djelitelj od %d je %d\n",x[i],j);
            break;
            }
    }


Wink



_________________
"Bolje bi prolazio na faxu da sam na drogama nego na netu" - by a friend of mine
"Poslije spavanja doma spavanje bilo di mi je najdraža stvar" - by the same guy Very Happy
[Vrh]
Korisnički profil Pošaljite privatnu poruku Pošaljite e-mail
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (3562)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 19:36 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

Ne trebaju nizovi za to (ucitas prvog, ispise, ucitas drugog, ispises,...). ;)

U skripti ima brzi ispis svih prostih faktora u rastucem poretku; koliko je tesko modificirati da taj ispis stane kad se ispise neki (dakle prvi) prosti faktor? :D

Inace, najmanji prosti faktor je jednak najmanjem djelitelju vecem od 1 (dokazite sami zasto). :)

Dakle:

[code:1]for (i = 0; i < n; i++) {
scanf("%d", &x);
if (x < 0) x = -x; /* ako zelis pokupiti i negativne cijele brojeve, a ne samo prirodne */
if (x < 2) continue; /* nema prostih djelitelja */
p = 2;
while (x % p) p++;
printf("%d\n", p);
}[/code:1]

8)
Ne trebaju nizovi za to (ucitas prvog, ispise, ucitas drugog, ispises,...). Wink

U skripti ima brzi ispis svih prostih faktora u rastucem poretku; koliko je tesko modificirati da taj ispis stane kad se ispise neki (dakle prvi) prosti faktor? Very Happy

Inace, najmanji prosti faktor je jednak najmanjem djelitelju vecem od 1 (dokazite sami zasto). Smile

Dakle:

Kod:
for (i = 0; i < n; i++) {
  scanf("%d", &x);
  if (x < 0) x = -x; /* ako zelis pokupiti i negativne cijele brojeve, a ne samo prirodne */
  if (x < 2) continue; /* nema prostih djelitelja */
  p = 2;
  while (x % p) p++;
  printf("%d\n", p);
}


Cool



_________________
U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
anam
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 19. 10. 2007. (16:24:34)
Postovi: (B5)16
Sarma = la pohva - posuda
-30 = 8 - 38
Lokacija: My Hercegovina!!!!!

PostPostano: 19:36 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

da stvarno, radi, a kak sam ja to bila zakomplicirala jer sam uvijek išla provjeravat jel mi djelitelj prost, a kad trebam ispisat najveći onda uzmem da mi je prvi najmanji pa onda opet tražim sve proste djelitelje i koji mi je veći taj mi postaje max jel da?
da stvarno, radi, a kak sam ja to bila zakomplicirala jer sam uvijek išla provjeravat jel mi djelitelj prost, a kad trebam ispisat najveći onda uzmem da mi je prvi najmanji pa onda opet tražim sve proste djelitelje i koji mi je veći taj mi postaje max jel da?


[Vrh]
Korisnički profil Pošaljite privatnu poruku
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (3562)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 19:41 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

Najveci prosti djelitelj je zadnji kojeg nadjes u spomenutom algoritmu ispisa svih. 8) Dakle, ne ispisujes nego trpas u (uvijek istu) varijablu (zanemarujem x-eve manje od 2):

[code:1]p = 2;
while (x > 1) {
if (x % p == 0) {
max_prost = p;
while (x % p == 0) x /= p;
}
p++;
}[/code:1]

8)
Najveci prosti djelitelj je zadnji kojeg nadjes u spomenutom algoritmu ispisa svih. Cool Dakle, ne ispisujes nego trpas u (uvijek istu) varijablu (zanemarujem x-eve manje od 2):

Kod:
p = 2;
while (x > 1) {
  if (x % p == 0) {
    max_prost = p;
    while (x % p == 0) x /= p;
  }
  p++;
}


Cool



_________________
U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
anam
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 19. 10. 2007. (16:24:34)
Postovi: (B5)16
Sarma = la pohva - posuda
-30 = 8 - 38
Lokacija: My Hercegovina!!!!!

PostPostano: 20:20 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

evo za ovo mi ispiše samo najveći prosti djelitelj zadnjeg elementa niza, šta je krivo?

[code:1]#include <stdio.h>

int main(void) {

int n,i, x[100],max_prost,p=2;
scanf ("%d", &n);
for (i=0;i<n;i++)
{
scanf("%d",&x[i]);}

for (i=0;i<n;i++)
while (x[i] > 1) {
if (x[i] % p == 0) {
max_prost = p;
while (x[i] % p == 0) x[i] /= p;
}
p++;
}
printf ("%d\n", max_prost);

scanf("%%");
return 0;
}[/code:1]
evo za ovo mi ispiše samo najveći prosti djelitelj zadnjeg elementa niza, šta je krivo?

Kod:
#include <stdio.h>

int main(void) {

   int n,i, x[100],max_prost,p=2;
   scanf ("%d", &n);
   for (i=0;i<n;i++)
    {
       scanf("%d",&x[i]);}
       
       for (i=0;i<n;i++)
    while (x[i] > 1) {
  if (x[i] % p == 0) {
    max_prost = p;
    while (x[i] % p == 0) x[i] /= p;
  }
  p++;
}
printf ("%d\n", max_prost);
           
             scanf("%%");
  return 0;
}


[Vrh]
Korisnički profil Pošaljite privatnu poruku
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (3562)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 20:36 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

Ocito: ispisujes na krivom mjestu. :) Da bi se nesto ispisalo za svaki [tt]x[/tt], treba ispisivati u petlji koja trci po svim [tt]x[/tt]-evima. 8)
Ocito: ispisujes na krivom mjestu. Smile Da bi se nesto ispisalo za svaki x, treba ispisivati u petlji koja trci po svim x-evima. Cool



_________________
U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
anam
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 19. 10. 2007. (16:24:34)
Postovi: (B5)16
Sarma = la pohva - posuda
-30 = 8 - 38
Lokacija: My Hercegovina!!!!!

PostPostano: 20:56 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

nakon silnih pokušavanja na kraju sam dobila samo ispis broja 8 :?: :roll:
nakon silnih pokušavanja na kraju sam dobila samo ispis broja 8 Question Rolling Eyes


[Vrh]
Korisnički profil Pošaljite privatnu poruku
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (3562)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 21:03 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

Nekako imam dojam da to nije [b]prosti[/b] faktor. :D Mozes li ovdje zalijepiti aktualnu verziju programa i koje si mu brojeve ukucala? :-k

Inace, preporucam urednije pisanje koda... to jako pomaze u trazenju gresaka. :D
Nekako imam dojam da to nije prosti faktor. Very Happy Mozes li ovdje zalijepiti aktualnu verziju programa i koje si mu brojeve ukucala? Think

Inace, preporucam urednije pisanje koda... to jako pomaze u trazenju gresaka. Very Happy



_________________
U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
anam
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 19. 10. 2007. (16:24:34)
Postovi: (B5)16
Sarma = la pohva - posuda
-30 = 8 - 38
Lokacija: My Hercegovina!!!!!

PostPostano: 21:23 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

evo za ovo tu i unos brojeva 3, 4, 5, 6 dobijem ispis četiri osmice, mislim vjerojatno sam napisala glupost al.....


[code:1]#include <stdio.h>
int main(void) {

int n,i, x[100],max_prost,p=2;
scanf ("%d", &n);
for (i=0;i<n;i++)
{
scanf("%d",&x[i]);}

for (i=0;i<n;i++)
while (x[i] > 1) {
if (x[i] % p == 0) {
max_prost==p;
printf ("%d\n", max_prost);
while (x[i] % p == 0) x[i] /= p;
}
p++;
}

scanf("%%");
return 0;
}[/code:1]
evo za ovo tu i unos brojeva 3, 4, 5, 6 dobijem ispis četiri osmice, mislim vjerojatno sam napisala glupost al.....


Kod:
#include <stdio.h>
int main(void) {

   int n,i, x[100],max_prost,p=2;
   scanf ("%d", &n);
   for (i=0;i<n;i++)
    {
       scanf("%d",&x[i]);}
       
       for (i=0;i<n;i++)
    while (x[i] > 1) {
    if (x[i] % p == 0) {
    max_prost==p;
    printf ("%d\n", max_prost);
    while (x[i] % p == 0) x[i] /= p;
 }
  p++;
    }     

             scanf("%%");
  return 0;
}


[Vrh]
Korisnički profil Pošaljite privatnu poruku
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (3562)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 21:37 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

[tt]max_prost[color=red]==[/color]p;[/tt] nije pridruzivanje. :?

[tt]p[/tt] treba inicijalizirati za svaki [tt]x[/tt], a ne na pocetku. :?

Ispis [tt]printf("%d\n", max_prost);[/tt] treba ici za svaki [tt]x[/tt], a ne za svaki [tt]p[/tt]. :?

Sve skupa ti je jako nepregledno, jer ne pazis na lijepo uvlacenje i normalno je da se pogubis. :( Vidi kako to izgleda kad se pise uredno (i bez nizova, jer nigdje u zadatku ne pise da ima najvise 100 brojeva):

[code:1]#include <stdio.h>

int main(void) {
int n, i, x, max_prost, p;

scanf("%d", &n);
for (i = 0; i < n; i++) {
p = 2;
scanf("%d", &x);
if (x < 2) continue;
while (x > 1) {
if (x % p == 0) {
max_prost = p;
while (x % p == 0) x /= p;
}
p++;
}
printf("%d\n", max_prost);
}

scanf("%%");

return 0;
}[/code:1]

8)
max_prost==p; nije pridruzivanje. Confused

p treba inicijalizirati za svaki x, a ne na pocetku. Confused

Ispis printf("%d\n", max_prost); treba ici za svaki x, a ne za svaki p. Confused

Sve skupa ti je jako nepregledno, jer ne pazis na lijepo uvlacenje i normalno je da se pogubis. Sad Vidi kako to izgleda kad se pise uredno (i bez nizova, jer nigdje u zadatku ne pise da ima najvise 100 brojeva):

Kod:
#include <stdio.h>

int main(void) {
  int n, i, x, max_prost, p;

  scanf("%d", &n);
  for (i = 0; i < n; i++) {
    p = 2;
    scanf("%d", &x);
    if (x < 2) continue;
    while (x > 1) {
      if (x % p == 0) {
        max_prost = p;
        while (x % p == 0) x /= p;
      }
      p++;
    }
    printf("%d\n", max_prost);
  }

  scanf("%%");

  return 0;
}


Cool



_________________
U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
Prethodni postovi:   
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji 1. godine, preddiplomski studij Matematika -> Programiranje 1 i 2 Vremenska zona: GMT + 01:00.
Idite na 1, 2  Sljedeće
Stranica 1 / 2.

 
Forum(o)Bir:  
Ne možete otvarati nove teme.
Ne možete odgovarati na postove.
Ne možete uređivati Vaše postove.
Ne možete izbrisati Vaše postove.
Ne možete glasovati u anketama.
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2002 phpBB Group
Theme created by Vjacheslav Trushkin
HR (Cro) by Ančica Sečan