» »

Moja velika skrivnost!

Moja velika skrivnost!

guest #44 ::

Ne znam programirat!!

No sicer sem neki minimalnega programiral na faksu (ampak res minimalno). Največ kar sem programiral je bilo v



igri Colobot. Kjer si moral sprogramirati robotke, da si lahko končal level. Igra je bila namenjena kot nek entry k učenju "C"ja, zato so avtorji skušali obdržati isti princip.

Programiranja se nisem moral pošteno naučit, ker niesm nikoli najdu kako zadevo, ki bi me potegnila dovolj not, da bi dlje časa to počel.

Zato sprašujem...mi lahko kdo pomaga na user friendly način kako začet (nasvete, linke, ideje,...something)?
Keri jezik se začet učit, ki je najpopularnejši oz najbolj univerzalen. Nebi rad se učil neki levega.

Ker brez nekega projekta nimaš neke motivacije, sem si zadal eno nalogo: Rad bi naredil programček, kiz zračuna najkrajšo razdaljo med Zemljo in Marsom.

Torej lotil bi se problema nekako tako. Najprej, določim nek center (sonce). Nato vnesem notri poenostavljeno tirnico (krog) Marsa in Zemlje in sicer ekscentrično. Rad bi program da mi izračuna najkrajšo pa najdaljšo razdaljo med tema ekscentroma. Fanj bi bilo, da mi tudi to grafično prikaže.

Torej kako začeti?

dolenc ::

Recimo prebrat 100 ostalih tem z drugim naslovom a isto tematiko :D (teme se osvežujejo tedensko)

jype ::

jverne> Zato sprašujem...mi lahko kdo pomaga na user friendly način kako začet (nasvete, linke, ideje,...something)?

http://learnpythonthehardway.org/index

guest #44 ::

Kakšen jezik pa je python?

dolenc ::

Za učit je dober, na FRIju ga imajo recimo za začetek.

Čist odvisen kaj bi rad z novo pridobljenim znanjem naredil. Malo programiral za zabavo ali dejansko potrebuješ za kaj. Jaz bi raje uzel javo za učenje, ker je sintaktično bolj podobna še kakšnemu drugemu jeziku, ampak načeloma če želiš osvojit "razmišljanje" pri programiranju je vseeno s čim delaš.

Najlažje je pa kakšen jezik v okviru .net (c#, VB), ampak tam ti marsikatero stvar sam napiše in jo potem ne boš osvojil, oziroma ne boš vedel kaj se dogaja v ozadju, če se res ne boš poglobil v zadeve.

dolenc ::

Nežen uvod, praktik

Tudi v kaj drugega :)

guest #44 ::

Ma moje osnove so bolj tko...neki štekam neki ne. Razumem, da je nekaj podrejeno nekaj nadrejeno. If stavke čist osnovno vrjetno razumem. Že če bi ime napiflane vse ukaze jezika, bi že precej pomagalo. Namreč program mora biti logično napisan, tko kot v glavi moreš logično razmišljat, da nekaj rešiš. Program je v prvi vrsti dumb in mu moreš vse povedat.

Logično bi se rad naučil programirat za uporabne namene...delat neumnosti mi ne koristi.

Sedaj berem tisti pdf, ki je jype linkal.

Sam če obdelam python bom imel osnove za it na kej bolj resnega?

Zgodovina sprememb…

  • spremenilo: guest #44 ()

dolenc ::

Ja, glede na to da sem bil jaz mal teleban glede programiranja na začetku ti lahko tako opišem postopek mojega učenja.

Delaš, več ko boš delal, več boš razumel kaj sploh delaš. In potem ti kar naenkrat preklopi, kaj hudiča sploh delaš, naučiš se "razmišljat po programersko", tega prebrat v kakšnem članku ne moreš, pride pa nekako samo od sebe, več kot rešuješ probleme, bolj se ti širi znanje uporabnih orodij(tehnik) s katerimi operiraš in rešuješ probleme.

Če obdelaš en jezik, še ni nujno, da boš kar vse znal, oziroma skor ziher ne boš :D, s časom in vztrajnostjo pa nekako pride vse. Python je toliko resna zadevo kot biloker drug jezik, na to moraš gledat kot na orodje, kaj z njim delaš je pa tisto kar te verjetno zanima.

Men se doskrat zgodi, da kakšne stvari ne znam rešit(se mi ustav, čist), pa se potem zjutraj zbudim in kar naenkrat mi je vse jasen kako bom poheku :D

guest #44 ::

Ok then that settles it...bom se nekaj časa ukvarjal z Pythonom. Kaj izdelovanje grafičnih aplikacij?

Highlag ::

Zakaj bi se pa sploh hotel ukvarjat s programiranjem?
Never trust a computer you can't throw out a window

revvs ::

Programiranje ni drugo kot premetavanje pravil ki jih je nekdo postavil, več časa imaš za to boljši si, kjerkoli lahko delaš, toliko da dandanes več ne premetavaš ničle in enke :)). Ali ni najkrajša razdalja med zemljo in Marsom nekaj kar je že znano določeno preko matematičnih izračunov, ne vem kaj bi naj tu posebej programiral razen kot vpisoval znane matematične formule (+,-,*).

pecorin ::

Zakaj bi se pa sploh hotel ukvarjat s programiranjem?


ker ti zelo zelo olajsa delo, ce racunalnik uporabljas se kako drugace kot samo kot pisalni stroj ali igralni avtomat.
pa se logika ti pride v navado.

revvs ::

Brez naučenja pravil oz. ukazov programiranja logike ni, pa še lahko tako naprezaš svoje 180 IQ možgane.

pecorin ::

Brez naučenja pravil oz. ukazov programiranja logike ni, pa še lahko tako naprezaš svoje 180 IQ možgane.


what?
pred programiranjem ni bilo logike? :)

revvs ::

Jaz pravim da če ne poznaš ukaz za izpis črke na zaslon potem ne boš nikamor prišel. Programiranje ni ravno logika, to je bolj povezovanje ukazov, ko poznaš dosti ukazov jih kombiniraš.
In če gledam računalniške igrice, ne bi ravno rekel da so programerji inteligentni, ker so igrice precej primitivne, čeprav so delane na več let vsakodnevne programske kode. Igrice so v bistvu 90% extremno primitivne, vse na isto kopito. Inteligentnost pa pomeni nekaj novega v dani situaciji izumiti, ne pa posnemati.

pecorin ::

ukaze jezika se lahko vsak nauci v enem tednu. ravno to sestavljanje ukazov v zaporedja se ucis celo zivljenje. to je programiranje. in za to rabis logiko.

gendale ::

Ker brez nekega projekta nimaš neke motivacije, sem si zadal eno nalogo: Rad bi naredil programček, kiz zračuna najkrajšo razdaljo med Zemljo in Marsom.

to bi se dalo zlo lepo rešit v octavu :)

revvs ::

pecorin je izjavil:

ukaze jezika se lahko vsak nauci v enem tednu. ravno to sestavljanje ukazov v zaporedja se ucis celo zivljenje. to je programiranje. in za to rabis logiko.

Se strinjam, vendar v enem tednu ravno ne :)) Ker obstaja 100000 varijant ukazov in z njimi povezane funkcije in razni apiji.

Najbolje je da začneš tukaj za Microsoft programe (odvisno od tebe kaj želiš narediti):
http://msdn.microsoft.com/en-us/library...

Zgodovina sprememb…

  • spremenil: revvs ()

guest #44 ::

Ravnokar sem nekaj vaj notr v python...i feel so empowered!

Zlo zabavno, prav vznemirjen sem ker z nekaj truda bom lahko reševal težave, ki sem jih prej moral peške!

Tnx jure, dolžen sem ti pivo!

jype ::

Ne pijem ga. Welcome to the dark side :)

guest #44 ::

Hehe, may the focre be with me (especially when i get really frustrated)! :P

Isotropic ::

guest #44 je izjavil:



Logično bi se rad naučil programirat za uporabne namene...delat neumnosti mi ne koristi.


Sam če obdelam python bom imel osnove za it na kej bolj resnega?

ja. pa py je uporaben tut za resne zadeve, mas knjizico za numericno mato, podporo gui (tudi qt) in vsemu zivemu.

guest #44 ::

Neki bi te res moral prašat:

Kaka točno je razlika med:

' '

ali

" "

Če prav razumem je oboje neke vrste string? V tutorial vidim da ' ' se uporablja pri, dajanju texta (vrednost spremenljivk) v premenljivke, "" pa za običen text v kodi

Zgodovina sprememb…

jype ::

Ni razlike. S tistim, s katerim niz otvoriš, ga moraš tudi končat.

Če hočeš v niz spravit " je fino, če začneš z ' in obratno:

a = 'To je "test"'
b = "Kam's pa padu?"

Uporabiš lahko tudi trojni apostrof in trojni narekovaj, da ti ni treba preveč skrbet, kaj je vsebina:

a = """The E. coli outbreak in Germany is a new form of the bacterium, researchers and public health experts believe.

It can cause the deadly complication - haemolytic-uraemic syndrome (HUS) - affecting the blood and kidneys.

More than 1,500 people have been infected and 18 have died: 17 in Germany and one in Sweden.

Seven people in the UK have the infection, including three British nationals. They are all thought to have contracted it in Germany.

The World Health Organization said the variant had "never been seen in an outbreak situation before."

Scientists at the Beijing Genomics Institute in China are also reported as saying the new form was "highly infectious and toxic"."""

Zgodovina sprememb…

  • spremenilo: jype ()

guest #44 ::

Torej oba znaka lahko znotraj texta uporabljam po mili volji, sam začetek pa konec treba pazit. got it

Sam v čem je point, da dodajaš "" znake znotraj ko pa izpis bo identičen, ali pa večkratno ponovitev. A je to kaka finta tipo [ ( oklepaji pa tko?

Isotropic ::

kako bi drugace lahko izracunal najkrajso razdaljo med njima? kaj drugega, kot da bi lepo time-steppal, mi trenutno ne pade na pamet...

jype ::

jverne> Torej oba znaka lahko znotraj texta uporabljam po mili volji, sam začetek pa konec treba pazit. got it

Ne, samo tistega lahko uporabljaš, ki ga ni na začetku. Ker če uporabiš istega, kot na začetku, se za interpreter tam niz konča.

jverne> Sam v čem je point, da dodajaš "" znake znotraj ko pa izpis bo identičen

Ne bo identičen:

>>> a = 'Narekovaj: "'
>>> b = "Narekovaj: '"
>>> print a, b
Narekovaj: " Narekovaj: '

loki3000> kako bi drugace lahko izracunal najkrajso razdaljo med njima? kaj drugega, kot da bi lepo time-steppal, mi trenutno ne pade na pamet...

Razdaljo med njima? Razloži.

Zgodovina sprememb…

  • spremenilo: jype ()

guest #44 ::

Aaa štekam ja!

Isotropic ::

Rad bi naredil programček, kiz zračuna najkrajšo razdaljo med Zemljo in Marsom.



Torej lotil bi se problema nekako tako. Najprej, določim nek center (sonce). Nato vnesem notri poenostavljeno tirnico (krog) Marsa in Zemlje in sicer ekscentrično. Rad bi program da mi izračuna najkrajšo pa najdaljšo razdaljo med tema ekscentroma. Fanj bi bilo, da mi tudi to grafično prikaže.

guest #44 ::

Ma to sem neki v tri krasne streljal...

jype ::

Ja, pa je zanimiva naloga za numerično reševanje problemov.

Isotropic ::

time-stepping ali bi se dalo kako bolj elegantno? pomoje bi sicer se, sam ne tuk na izi.

jype ::

Analitično lahko rešiš, potem pa primerjaš rezultate.

Lahko je time stepping, lahko pa preprosto razdeliš orbito na 360 delov in za vsakega zračunaš koliko je oddaljen od vseh 360 delov druge orbite, pa imaš že spodoben približek.

Še bolj natančno bo z "bisekcijo": stojiš na točki prve orbite in se sprehajaš po drugi in ko se začne razdalja večat namesto manjšat ali obratno zmanjšaš interval in greš v drugo smer, ko najdeš minimum ali maksimum pa začneš hodit še po drugi orbiti in še tam na enak način poiščeš minimum ali maksimum.

Če se pa kot med orbitama spreminja, je pa bistveno več dela :)

guest #44 ::

print "Length converter\n"

print 'Insert length in inces:',
x = raw_input()
y = x * 254E-2
z = "cm"
dz = "inch"

print "%s %s is %s %s" % (x, dz, y, z)


Napiše mi: y = x * 254E-2
TypeError: can't multiply sequence by non-int of type 'float'


I don't get it, kje je težava?

jype ::

jverne> I don't get it, kje je težava?

raw_input() vrne niz.

To moraš pretvorit v cifro: x = float(raw_input()) ali pa kar x = input()

Seveda bo ob vnosu nečesa, kar ni veljavni zapis števila, še vedno prišlo do napake.

jverne> TypeError: can't multiply sequence by non-int of type 'float'

Ta napaka je fajn, ja. Množit zna samo niz in celo število:

>>> 'ble'*10
'bleblebleblebleblebleblebleble'

guest #44 ::

aja itak, moreš mu povedat da boš vpisal število

tnx


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Programiranje v prostem času_kje začeti

Oddelek: Programiranje
316173 (4344) krneki0001
»

[Python] Tutoriali za začetnika v Notepad++ (strani: 1 2 )

Oddelek: Programiranje
7915257 (12351) black ice
»

Posnetki: pristanek Curiosityja uspel (strani: 1 2 )

Oddelek: Novice / Znanost in tehnologija
5320738 (18084) Jst
»

[Python] Ali se da narediti...

Oddelek: Programiranje
263202 (2407) Rias Gremory
»

Phoenix je pristal

Oddelek: Novice / Znanost in tehnologija
326542 (3570) lukanium

Več podobnih tem