Stranica: 1/1.

[Python] Prvi program

Postano: 07 sij 2012, 02:29
Postao/la scheissman
Evo ovako nakon prve lekcije u full circle-u odlucio sam napravit i mali prog.
pitanje je : ako je u 7 kamiona bilo 7 žena svaka žena je imala po 7 torbi a u svakoj torbi je bilo 7 mačaka koje su imale 7 malih mačiča koliko je bilo ukupno nogu

uspjesno sam rjesio zada tak , ali me iskreno zanima jel moze lakse od ovoga

Kod: Označi sve

#!/usr/bin/env python 
print ' Ja sam glupi program koji racuna noge'
broj1 = raw_input("unesi broj macica  ") 
broj2 = raw_input("unesi broj macaka " )
broj3 = int(broj1)+int(broj2) 
broj4 = int(broj3)*4
brojzena = raw_input ("unesi broj  zena ")
brojtorbi = raw_input ("unesi broj torbi ")
brojnoguzena = int(brojzena) * 2
zbroj1 = int(brojzena)*int(brojtorbi)*int(broj4)
zbroj2 = int(zbroj1)+int(brojnoguzena)
print "zbroj nogu"; print zbroj2


eh da i kakoda mi ovo zadnje ispise u isti red znaci
zbroj nogu xyz

Re: [Python] Prvi program

Postano: 07 sij 2012, 02:59
Postao/la max360se
pa umjesto ; stavis samo ,

Re: [Python] Prvi program

Postano: 07 sij 2012, 03:57
Postao/la jjj
scheissman je napisao/la: eh da
1) Obzirom na postojanje Pythona 3, u prvoj liniji naznači koji bi se trebao pozvati kada netko pokrene program. Na mom sustavu bi ovo crashalo jer je trojka defaultna, a program je očito za 2.x.

2) Ne moraš imati naknadnu liniju za pretvaranje u integer, možeš pisati:

Kod: Označi sve

a = int(raw_input('Unesi broj: '))
3) Ne moraš imati četiri linije prije zbrajanja:

Kod: Označi sve

rezultat = int(raw_input('Unesi prvi broj: ')) + int(raw_input('Unesi drugi broj: '))
4) U Pythonu 2.x, zarez nakon print izjave radi ono što želiš, ali mislim da je bolje da naprosto koristiš string concatenation - dakle, nešto kao

Kod: Označi sve

print "Rezultat: " + str(zbroj2)
4.1) Možeš koristiti i C-asti string formatting:

Kod: Označi sve

print "Rezultat: %d" % zbroj2
4.2) No bolje da koristiš "novi", Python 3 formatting:

Kod: Označi sve

print "Rezultat: {}'.format(zbroj2)
Te tri opcije su bolje jer je u 3.x print postao funkcija, pa je bolje da se navikneš. Mogao si koristiti i samo input() namjesto raw_input(), što bi ti ovdje prikratilo "ručno" pretvaranje stringa u int, ali obzirom da je input() u 3.x postao jednak raw_inputu ovdje, bolje ovako.

Re: [Python] Prvi program

Postano: 07 sij 2012, 10:01
Postao/la scheissman
max360se je napisao/la:pa umjesto ; stavis samo ,
izbaci gresku
zasad mislim najbolje koristit (najlakse mi je )

Kod: Označi sve

    print "Rezultat: " + str(zbroj2)
moram jos jednom proci prvu lekciju da sjednu na svoje mjesto naredbe.

post2:
da ne postam bzvze

procitao sam drugu lekciju u full circle-u.
Sad vidim zasto je to mjesecnik :) mogu cjeli mjesec ucit i radit programcice

Re: [Python] Prvi program

Postano: 07 sij 2012, 15:26
Postao/la max360se
Mislio sam da samo to napravis u ovoj liniji ovako:

Kod: Označi sve

print "zbroj nogu", zbroj2
Vjerojatno si napisao /* print zbroj2 */ umjesto samo /*zbroj2 */
Koji python koristis.

Re: [Python] Prvi program

Postano: 07 sij 2012, 15:35
Postao/la scheissman
max360se je napisao/la:Mislio sam da samo to napravis u ovoj liniji ovako:

Kod: Označi sve

print "zbroj nogu", zbroj2
Vjerojatno si napisao /* print zbroj2 */ umjesto samo /*zbroj2 */
Koji python koristis.
da u pravu si.
python 2.6