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

8.6. na jednostavniji način?
WWW:

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
ekatarina
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 25. 11. 2007. (19:22:50)
Postovi: (161)16
Spol: žensko
Sarma = la pohva - posuda
30 = 47 - 17

PostPostano: 19:50 sub, 9. 2. 2008    Naslov: 8.6. na jednostavniji način? Citirajte i odgovorite

Zadatak 8.6. Napiˇsite dio programa koji uˇcitava cijele brojeve dok
korisnik ne upiˇse nulu. Program treba ispisati produkt svih brojeva koje
je korisnik uˇcitao.

int prod = 1 , x ;
2
3 do {
4 p r i n t f ( ”Une s i t e br o j : ” ) ;
5 s c anf ( ”%d” , &x ) ;
6 i f ( x != 0) prod ∗= x ;
7 } while ( x != 0 ) ;
8
9 p r i n t f ( ”Produkt u c i t an i h br oj eva j e %d . \ n” , prod )


MOže li se ovo dakle riješiti nekako drugačije? Zbunjuje me, naime, ovo provjeravanje da li je x različit od 0 i u if i u while.
Zadatak 8.6. Napiˇsite dio programa koji uˇcitava cijele brojeve dok
korisnik ne upiˇse nulu. Program treba ispisati produkt svih brojeva koje
je korisnik uˇcitao.

int prod = 1 , x ;
2
3 do {
4 p r i n t f ( ”Une s i t e br o j : ” ) ;
5 s c anf ( ”%d” , &x ) ;
6 i f ( x != 0) prod ∗= x ;
7 } while ( x != 0 ) ;
8
9 p r i n t f ( ”Produkt u c i t an i h br oj eva j e %d . \ n” , prod )


MOže li se ovo dakle riješiti nekako drugačije? Zbunjuje me, naime, ovo provjeravanje da li je x različit od 0 i u if i u while.


[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:55 sub, 9. 2. 2008    Naslov: Citirajte i odgovorite

Mislim da je ovak najjednostavnije.

A kaj te zbunjuje? Imaš do-while petlju, kod koje se na kraju provjerava uvjet ( x!=0). Ako korisnik ipak unese nulu, to će se provjerit tek na kraju pa ako ne staviš uvjet u if onda će se produkt pomnožit s nulom i bit nula, a to ne želimo. Želimo da sve stane ako se učita nula.

Da piše i da se unešava dok se ne učita 5 opet bi se provjeravalo u if-u jer ne želimo taj 5 u produkt.
Mislim da je ovak najjednostavnije.

A kaj te zbunjuje? Imaš do-while petlju, kod koje se na kraju provjerava uvjet ( x!=0). Ako korisnik ipak unese nulu, to će se provjerit tek na kraju pa ako ne staviš uvjet u if onda će se produkt pomnožit s nulom i bit nula, a to ne želimo. Želimo da sve stane ako se učita nula.

Da piše i da se unešava dok se ne učita 5 opet bi se provjeravalo u if-u jer ne želimo taj 5 u produkt.



_________________
"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
Atomised
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 04. 09. 2007. (15:33:59)
Postovi: (399)16
Sarma = la pohva - posuda
70 = 95 - 25
Lokacija: Exotica

PostPostano: 19:56 sub, 9. 2. 2008    Naslov: Citirajte i odgovorite

[code:1]int broj, produkt = 1;

while(1){
scanf("%d", &broj);
if (broj == 0) break;
produkt *= broj;
}

printf("Produkt unesenih brojeva je %d.", produkt);[/code:1]
Kod:
int broj, produkt = 1;

while(1){
  scanf("%d", &broj);
  if (broj == 0) break;
  produkt *= broj;
  }

printf("Produkt unesenih brojeva je %d.", produkt);




Zadnja promjena: Atomised; 19:59 sub, 9. 2. 2008; ukupno mijenjano 1 put.
[Vrh]
Korisnički profil Pošaljite privatnu poruku
ß
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 29. 07. 2006. (15:29:06)
Postovi: (115)16
Spol: muško
Sarma = la pohva - posuda
41 = 46 - 5
Lokacija: Graveyard Mountain Home

PostPostano: 19:57 sub, 9. 2. 2008    Naslov: Re: 8.6. na jednostavniji način? Citirajte i odgovorite

[quote="ekatarina"]MOže li se ovo dakle riješiti nekako drugačije? Zbunjuje me, naime, ovo provjeravanje da li je x različit od 0 i u if i u while.[/quote]

Kad ne bi postojala provjera u if, upisana nula bi se množila s dosadašnjim umnoškom, pa bi na kraju uvijek trebalo ispisati nulu.
[size=9]to duduše nije u kontradikciji sa zadatkom, ali pretpostavljam da nema baš puno smisla riješiti tako :P[/size]

inače, moguće je to riješiti drugačije, tako da uvjet provjeravaš na početku petlje. Drugim riječima, koristiš "while". Samo pazi da pri deklaraciji varijable postaviš x na nešto različito od nule, kako bi program uopće ušao u while petlju.
Naprimjer, ovako:

[code:1]
//...
int x=1,prod=1;
while(x!=0){
prod*=x;
printf("Unesite broj: ");
scanf("%d", &x);
}
printf("Produkt je jednak %d ",prod);
//...
[/code:1]


EDIT: Uf, već dva odgovora dok ja tipkam :)
ekatarina (napisa):
MOže li se ovo dakle riješiti nekako drugačije? Zbunjuje me, naime, ovo provjeravanje da li je x različit od 0 i u if i u while.


Kad ne bi postojala provjera u if, upisana nula bi se množila s dosadašnjim umnoškom, pa bi na kraju uvijek trebalo ispisati nulu.
to duduše nije u kontradikciji sa zadatkom, ali pretpostavljam da nema baš puno smisla riješiti tako Razz

inače, moguće je to riješiti drugačije, tako da uvjet provjeravaš na početku petlje. Drugim riječima, koristiš "while". Samo pazi da pri deklaraciji varijable postaviš x na nešto različito od nule, kako bi program uopće ušao u while petlju.
Naprimjer, ovako:

Kod:

//...
int x=1,prod=1;
while(x!=0){
  prod*=x;
  printf("Unesite broj: ");
  scanf("%d", &x);
}
printf("Produkt je jednak %d ",prod);
//...



EDIT: Uf, već dva odgovora dok ja tipkam Smile



_________________
Devious movements in your eyes moved me from relief
Breath comes out white clouds with your lies
and filters through me
[Vrh]
Korisnički profil Pošaljite privatnu poruku MSNM
Atomised
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 04. 09. 2007. (15:33:59)
Postovi: (399)16
Sarma = la pohva - posuda
70 = 95 - 25
Lokacija: Exotica

PostPostano: 20:00 sub, 9. 2. 2008    Naslov: Citirajte i odgovorite

Samo sam prvo napisao na jednom mjestu n umjesto broj; sad sam ispravio... :)
Samo sam prvo napisao na jednom mjestu n umjesto broj; sad sam ispravio... Smile


[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: 20:00 sub, 9. 2. 2008    Naslov: Citirajte i odgovorite

Može i ovako kak su Atomised i ß napisali, al svrha tog zadatka je do-while reko bih...

ah brzopletost moja, bez da razmislim :roll: ...dobro da nas ima više...
Može i ovako kak su Atomised i ß napisali, al svrha tog zadatka je do-while reko bih...

ah brzopletost moja, bez da razmislim Rolling Eyes ...dobro da nas ima više...



_________________
"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
Atomised
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 04. 09. 2007. (15:33:59)
Postovi: (399)16
Sarma = la pohva - posuda
70 = 95 - 25
Lokacija: Exotica

PostPostano: 20:07 sub, 9. 2. 2008    Naslov: Citirajte i odgovorite

[quote="Luuka"]Može i ovako kak su Atomised i ß napisali, al svrha tog zadatka je do-while reko bih...
[/quote]

Može biti, ali... Mi smo kod Bujanovića takve stvari uglavnom odmah radili s breakom jer on smatra da je tako prirodnije (a ja se slažem). :)
Luuka (napisa):
Može i ovako kak su Atomised i ß napisali, al svrha tog zadatka je do-while reko bih...


Može biti, ali... Mi smo kod Bujanovića takve stvari uglavnom odmah radili s breakom jer on smatra da je tako prirodnije (a ja se slažem). Smile


[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:14 sub, 9. 2. 2008    Naslov: Citirajte i odgovorite

I ja se slazem, ali nisam htio u skripti odjednom "lupiti" i s petljama i s [tt]break[/tt]/[tt]continue[/tt]. ;)
I ja se slazem, ali nisam htio u skripti odjednom "lupiti" i s petljama i s break/continue. Wink



_________________
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
Atomised
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 04. 09. 2007. (15:33:59)
Postovi: (399)16
Sarma = la pohva - posuda
70 = 95 - 25
Lokacija: Exotica

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

[quote="vsego"]I ja se slazem, ali nisam htio u skripti odjednom "lupiti" i s petljama i s [tt]break[/tt]/[tt]continue[/tt]. ;)[/quote]

U trenutku kad smo mi to učili, break i continue već su bile obrađene na (jednako važnim) predavanjima. :P
vsego (napisa):
I ja se slazem, ali nisam htio u skripti odjednom "lupiti" i s petljama i s break/continue. Wink


U trenutku kad smo mi to učili, break i continue već su bile obrađene na (jednako važnim) predavanjima. Razz


[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: 12:51 ned, 10. 2. 2008    Naslov: Citirajte i odgovorite

Skripta je pisana prije toga; na mojim vjezbama se to takodjer koristi nakon sto je obradjeno na (jednako vaznim) predavanjima. :P
Skripta je pisana prije toga; na mojim vjezbama se to takodjer koristi nakon sto je obradjeno na (jednako vaznim) predavanjima. Razz



_________________
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.
Stranica 1 / 1.

 
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