[C] brojač u C-u

C, C++, Java, PHP, Ruby...

Moderator/ica: Moderatori/ce

Pravila foruma
U naslovu teme unutar uglatih zagrada navesti o kojem jeziku je riječ. Primjer: [Java]
Avatar
cybervd
Postovi: 81
Pridružen/a: 29 tra 2008, 21:41
Spol: M
OS: Point Linux MATE 2,2 64b
Lokacija: Kutina
Kontakt:

Re: brojač u C-u

Post Postao/la cybervd »

Kod: Označi sve

gcc ime_fajla.c -o izvrsna.exe
Odkuda mi ova izvršna.exe? Onda je '0' isto nula tj. NULL, po nekoj mojoj logici.

Kod: Označi sve

kontrolna += ( i % 2 ) ? ( znamenka * 2 ) : ( znamenka );
Kužim da je ovo ?: terarni operator tj. kontrolna je jednako kontrolna plus u zagradi ( i modus od dva) i ako je izraz TRUE onda izvršava u zagradi (znamenka puta dva), ako je izraz FALSE onda izvršava zadnju zagradu u kojoj piše znamenka. Znači ostak dijeljenja s 2 se preispituje da li je paran ili neparan?
Zadnja izmjena: cybervd, dana/u 11 tra 2009, 10:33, ukupno mijenjano 1 put.
Avatar
4ndY
Moderator
Postovi: 4060
Pridružen/a: 15 svi 2008, 18:05
Spol: M
OS: Fedora/KDE
Lokacija: Hamburg, DE
Kontakt:

Re: brojač u C-u

Post Postao/la 4ndY »

cybervd je napisao/la: Odkuda mi ova izvršna.exe?
izvršna.exe je naziv "izlazne" datoteke koju kompajler napravi.
cybervd je napisao/la:

Kod: Označi sve

kontrolna += ( i % 2 ) ? ( znamenka * 2 ) : ( znamenka );
Kužim da je ovo ?: terarni operator tj. kontrolna je jednako kontrolna plus u zagradi ( i modus od dva) i ako je izraz TRUE onda izvršava u zagradi (znamenka puta dva), ako je izraz FALSE onda izvršava zadnju zagradu u kojoj piše znamenka. Znači ostak dijeljenja s 2 se preispituje da li je paran ili neparan?
To je isto kao da piše

Kod: Označi sve

if ( i % 2 != 0 )
   kontrolna += znamekna*2
else 
   kontrolna += znamekna
Ako je i%2 nula onda je "if" false, ako je bilo što drugo (a može biti samo 1 u ovom slučaju), onda je true.
A neutron walks into a bar; he asks the bartender, 'How much for a beer?' The bartender looks at him, and says 'For you, no charge.'
Avatar
cybervd
Postovi: 81
Pridružen/a: 29 tra 2008, 21:41
Spol: M
OS: Point Linux MATE 2,2 64b
Lokacija: Kutina
Kontakt:

Re: brojač u C-u

Post Postao/la cybervd »

4ndY je napisao/la:
cybervd je napisao/la: Odkuda mi ova izvršna.exe?
izvršna.exe je naziv "izlazne" datoteke koju kompajler napravi.
Dakle, ako imam nekakvi npr. file tux.c, onda će kod biti

Kod: Označi sve

gcc tux.c -o 

ako kopajler napravi izvršnu.exe, kak ću znati napisati naredbu do kraja po tvom principu

Kod: Označi sve

gcc ime_fajla.c -o izvrsna.exe
I .exe je za windoze, a za linux (Ubuntu) bi trebao biti .deb ili nekaj drugo.

I još jedno pitanje

u tvom programu gdje se izvodi sumiranje znamenaka, kako je navedeno u primjeru

input: "14579"

sum = 1 + 2 * 4 + 5 +7 * 2 + 9 = 1 +8 +5 +14 + 9 = 37

i ako je podijelim sa 2 ( i % 2 != 0 ) i ostatak dijeljenja mi je 1 (valjda nisam fulao rofl ) onda po ovom kodu bi trebao biti false, zar ne?

Kod: Označi sve

if ( i % 2 != 0 )
   kontrolna += znamekna*2
else
   kontrolna += znamekna
Znam da sam dosadan, ali htio bih skužiti do kraja ovaj program. Sorry :) :)
Avatar
tartaglia
Postovi: 400
Pridružen/a: 13 sij 2009, 12:57
Spol: M
OS: openSuse 11.3
Lokacija: Zagreb

Re: brojač u C-u

Post Postao/la tartaglia »

Znači, da skompajliraš program dovoljno ti je ukucat

Kod: Označi sve

gcc program.c
I to će kao izvršnu datoteku stvorit a.out.
Taj program pokrećeš sa

Kod: Označi sve

./a.out
ako ti direktorij u kojem je program nije u pathu.

Ako pak želiš da ti program ima neko drugačije ime koristiš -o argument.

Kod: Označi sve

gcc program.c -o nekolijepoime
onda pokrećeš program sa

Kod: Označi sve

./nekolijepoime
Avoid the Gates of Hell. Use Linux!
Avatar
4ndY
Moderator
Postovi: 4060
Pridružen/a: 15 svi 2008, 18:05
Spol: M
OS: Fedora/KDE
Lokacija: Hamburg, DE
Kontakt:

Re: brojač u C-u

Post Postao/la 4ndY »

Prvo, u Linuxu, ali zapravo ni u Windowsima nastavci datoteka uopće nisu bitni - to je više da se korisnik snađe, a i preglednik datoteka brže definira s čim će što otvoriti.

Tako da je svejedno hočeš nazvat izvršnu datoteku: izvrsna.exe ili izvrsna.start ili izvrsna (bez nastavka).

Ako ne navedeš -o argument onda će se kreirati izvršna datoteka pod nazivom a.out. A ako definiraš -o izvrsna.nastavak, onda će "izlazni" fajl biti pod tim nazivom.

Exe je ekstenzija za izvršnu datoteku, češće na Win nego na Linuxu. Kako sam rekao na Linuxu se tome ne daje posebna pažnja (standard je recimo .bin).

Deb i rpm nemaju veze s time - to su malo pametnije arhive koje se samo raspakiraju unutar sustava kada se "instaliraju", no nemaju veze s win "exe" (prije zip/rar).

Što se tiče programa, isprobavaj pa ćeš skužit. ;)

p.s. http://wiki.open.hr :ugeek:
A neutron walks into a bar; he asks the bartender, 'How much for a beer?' The bartender looks at him, and says 'For you, no charge.'
Avatar
cybervd
Postovi: 81
Pridružen/a: 29 tra 2008, 21:41
Spol: M
OS: Point Linux MATE 2,2 64b
Lokacija: Kutina
Kontakt:

Re: brojač u C-u

Post Postao/la cybervd »

Znači, ako hoću napisati isključivo linux program onda mu dodijelim recimo nastavak .bin . A kako se rade programi sa dodatkom .deb ili slično ?

Hvala svima na pomoći, sada kužim neke stvari.
Zadnja izmjena: cybervd, dana/u 11 tra 2009, 12:59, ukupno mijenjano 1 put.
Avatar
4ndY
Moderator
Postovi: 4060
Pridružen/a: 15 svi 2008, 18:05
Spol: M
OS: Fedora/KDE
Lokacija: Hamburg, DE
Kontakt:

Re: brojač u C-u

Post Postao/la 4ndY »

cybervd je napisao/la:A kako se rade programi sa dodatkom .deb ili slično.
Komplicirano. :mrgreen:
A neutron walks into a bar; he asks the bartender, 'How much for a beer?' The bartender looks at him, and says 'For you, no charge.'
Avatar
cybervd
Postovi: 81
Pridružen/a: 29 tra 2008, 21:41
Spol: M
OS: Point Linux MATE 2,2 64b
Lokacija: Kutina
Kontakt:

Re: brojač u C-u

Post Postao/la cybervd »

4ndY, care :ugeek: ! Hvala na skripti ;) , takvo nešto sam tražio vezano za unix/linux . Kaj se programa tiće, još ću ga ja dosta proučavati.
Avatar
DoDo
Postovi: 1559
Pridružen/a: 23 sij 2008, 11:51
Spol: M
OS: GNOME 3
Lokacija: ~/Croatia/Zagorje/Radoboj

Re: brojač u C-u

Post Postao/la DoDo »

Čitajući ovaj thread, sinula mi je ideja da bi mogli napraviti podforum posvećen programiranju pod linuxom. Kaj velite na to?
:mrgreen: Smile! It makes people wonder what you're thinking about... :mrgreen:
I am NaN, I am a free man!
Započnite svoje Linux iskustvo na http://wiki.open.hr
Avatar
nicky
Site Admin
Postovi: 2074
Pridružen/a: 07 pro 2007, 16:30
Spol: Ž
OS: ubuntu 12.04
Lokacija: Zagreb

Re: brojač u C-u

Post Postao/la nicky »

Slažem se da je isto ali... Da li ti govoriš sunce ili not(not sunce)?

Drugim riječima, '\0' je zaobilazni način da kažeš NULL. U ovom slučaju ('\0') u asembleru procesor prvo mora rastaviti o kojem se specijalnom znaku radi a tek onda izvršava operaciju (naredba više za izvođenje), a sa 0 nema tog koraka (kraći put).
Odgovori