» »

Logika

Logika

mihy11 ::

Zdravo forumaši :)

Imam eno vprašanje in sicer. Zanima me kako se naj bolj naučim logično razmišljati in bolje reševati problem in ga potem tudi bolje sprogramirati. Sem 2.letnik faxa, pa sem pri težjih ali celo srednjih nalogah iz faksa vedno moral prašati cimra kako pa kaj, ker sem nekako nisem znal spisati algoritma oz. bolje rečeno nekako se že od začetka programiranja lovim, da stvari oz naloge ne rešim vedno 100%, ampak vedno nekje čez polovico in manj kot vse. Mislim, da je tudi bil problem v tem, ker se vedno zanašam, da imam nekakšno pomoč, sam pa se nikoli ne lotim 100%, da bi rešil problem, ker se nekako odvrnem od vsega, ker mislim da ne znam.

Je bil mogoče kdo že v podobni situaciji in bi mi znal pomagati, da bi rešil problem sam in bolje razmišljal logično.

HVala :)
"Computers are good at following instructions, but not at reading your mind."
by Donald Knuth

jype ::

Treniraj. Samo reden drill pomaga, da prepoznaš kopito, po katerem je najbolj smiselno reševati posamezen problem.

mihy11 ::

jype je izjavil:

Treniraj. Samo reden drill pomaga, da prepoznaš kopito, po katerem je najbolj smiselno reševati posamezen problem.


Mogoče kakšne naloge?
"Computers are good at following instructions, but not at reading your mind."
by Donald Knuth

kuall ::

Bil sem velikokrat v podobni situaciji in imam polno nasvetov. Veliko boljših kot jypetov, ker to da moraš trenirat itak že veš.

1. Veselje moraš imeti. Izogibaj se ljudi, ki ti jemljejo veselje in se obkrožaj z ljudmi, ki ti dajejo veselje do reševanja problema.
2. Res moraš imeti miselnost, da se ne smeš zanašat na druge. Če se zanašaš na druge ne boš problema pogledal celovito kot bi ga moral ampak boš mislil, da bodo to že drugi naredili. Dvigniti se moraš nad problem in ga ogledat iz vseh kotov, preden ga začneš reševati.
Na svoj način moraš rešiti problem v bistvu.
3. Problem si moraš razdeliti na manjše lažje obvladljive dele.
4. Narediti si moraš enostavno verzijo problema in ga rešiti, potem boš znal rešiti tudi bolj kompleksno verzijo. To je še najbolj koristen nasvet.
5. Ko ti zašteka ne sedi za mizo in se muči ampak pojdi na sprehod, da ti možgani zalaufajo in tam reši problem.
6. Pred reševanjem problema meditiraj - to znanstveno deluje baje, nisem pa še probal.
7. Postavi si vprašanja o vseh nejasnostih in nanj odgovori (odgovor ni nujno takoj). To v pisni obliki. Vse kar ti ni jasno moraš najprej odgovoriti, potem lahko šele začneš delat.
8. Najprej si pripravi primere oziroma način, kako boš stestiral končni izdelek. Veliko lažje bo in bolj pravilno bo narejeno.
9. Naštej si vse stvari, o katerih ni nobenega dvoma, da so resnične, v naključnem vrstnem redu. Potem na podlagi teh predpostavk lahko delaš nadaljne sklepe. To je uporabno v situacijah, ko te kompleknost problema zmede. Tudi pri reševanju raznih ugank je zelo uporabno.
10. Na začetku piši programe, katere boš tudi ti osebno potem uporabljal. Tako boš dobil najlažje veselje. Take programe je največji užitek programirat, posebej v prvih letih je to skoraj nujno. To šole naprimer čist ignorirajo.

jype ::

mihy11 je izjavil:

Mogoče kakšne naloge?
https://github.com/jwasham/coding-inter... je IMO ena boljših zbirk problemov, ki ti dajo osnovo za delo v tej industriji. Knjige, ki jih navaja, so praviloma študijsko gradivo in vsebujejo takšne vrste nalog, kot jih moraš reševati. V tej zbirki sem prvič odkril tole knjigo, ki jo toplo priporočam.

mihy11 ::

kuall je izjavil:

Bil sem velikokrat v podobni situaciji in imam polno nasvetov. Veliko boljših kot jypetov, ker to da moraš trenirat itak že veš.

1. Veselje moraš imeti. Izogibaj se ljudi, ki ti jemljejo veselje in se obkrožaj z ljudmi, ki ti dajejo veselje do reševanja problema.
2. Res moraš imeti miselnost, da se ne smeš zanašat na druge. Če se zanašaš na druge ne boš problema pogledal celovito kot bi ga moral ampak boš mislil, da bodo to že drugi naredili. Dvigniti se moraš nad problem in ga ogledat iz vseh kotov, preden ga začneš reševati.
Na svoj način moraš rešiti problem v bistvu.
3. Problem si moraš razdeliti na manjše lažje obvladljive dele.
4. Narediti si moraš enostavno verzijo problema in ga rešiti, potem boš znal rešiti tudi bolj kompleksno verzijo. To je še najbolj koristen nasvet.
5. Ko ti zašteka ne sedi za mizo in se muči ampak pojdi na sprehod, da ti možgani zalaufajo in tam reši problem.
6. Pred reševanjem problema meditiraj - to znanstveno deluje baje, nisem pa še probal.
7. Postavi si vprašanja o vseh nejasnostih in nanj odgovori (odgovor ni nujno takoj). To v pisni obliki. Vse kar ti ni jasno moraš najprej odgovoriti, potem lahko šele začneš delat.
8. Najprej si pripravi primere oziroma način, kako boš stestiral končni izdelek. Veliko lažje bo in bolj pravilno bo narejeno.
9. Naštej si vse stvari, o katerih ni nobenega dvoma, da so resnične, v naključnem vrstnem redu. Potem na podlagi teh predpostavk lahko delaš nadaljne sklepe. To je uporabno v situacijah, ko te kompleknost problema zmede. Tudi pri reševanju raznih ugank je zelo uporabno.
10. Na začetku piši programe, katere boš tudi ti osebno potem uporabljal. Tako boš dobil najlažje veselje. Take programe je največji užitek programirat, posebej v prvih letih je to skoraj nujno. To šole naprimer čist ignorirajo.



Tole je pa ful dobro napisano res :) Hvala.
"Computers are good at following instructions, but not at reading your mind."
by Donald Knuth

Unknown_001 ::

Opazuj svet okoli sebe. Ampak res opazuj.
Wie nennt man einen Moderator mit der Hälfte des Gehirnis ?

Begabt

holabaluza ::

Meni vedno pomaga whiteboard (bela tabla za risat) in razlicne barve flumastrov. Problem si nato poskusam narisat z abstraktnimi modeli ali s koncaptulanimi diagrami (drevesa, diagrami). Ce sem sam, se tudi dostikrat sam s seboj pogovarjam, mi tudi pomaga. It's up to you, da ugotovis kaj deluje zate. Ce si bolj vizualen clovek, vsekakor priporocam poskusit z whiteboard, se jih da poceni kupit v malo vecji trgovini.

Zgodovina sprememb…

TheBlueOne ::

Trening je edino, ker moras sam poiskati svojo pot, ker metode, ki delujejo za eno osebo morda ne bodo delovale zate. Moras se tudi zavedati, da ni vsak za vse in tu ne mislim, da tega nisi sposoben, ampak, da v danih okoliscinah nimas prave motivacije.

Jaz ti predlagam, da zadevo preplonkas, ce ti ne disi in ostali cas investiras v nekaj kar rad pocnes in se izpopolnis na podrocju, kjer ti motivacije ne manjka. Tako bos dober v tem kar te veseli in ne v tem v kar se silis.

mihy11 ::

TheBlueOne je izjavil:

Trening je edino, ker moras sam poiskati svojo pot, ker metode, ki delujejo za eno osebo morda ne bodo delovale zate. Moras se tudi zavedati, da ni vsak za vse in tu ne mislim, da tega nisi sposoben, ampak, da v danih okoliscinah nimas prave motivacije.

Jaz ti predlagam, da zadevo preplonkas, ce ti ne disi in ostali cas investiras v nekaj kar rad pocnes in se izpopolnis na podrocju, kjer ti motivacije ne manjka. Tako bos dober v tem kar te veseli in ne v tem v kar se silis.



Mogoče je tudi v tem problem, recimo aplikacije za android zelo rad delam, vendar nekaj časa imam res veliko motivacije pa mi kar gre, potem pa nekako popusti. Recimo smo imeli nek projekt v šoli, aplikacijo sem uspešno dokončal in skoraj usak dan programiral, sedaj pa se mi zopet ne ljubi zraven spravit za kakšen drug projekt.
"Computers are good at following instructions, but not at reading your mind."
by Donald Knuth

111111111111 ::

Tole preberi in se nauči razmišljati. :)

https://www.amazon.com/How-Not-Be-Wrong...

imagodei ::

Raymond Smullyan @ Wikipedia

V slovenščini je objavljenih kar nekaj njegovih knjig, ne vem pa, koliko se kaj dobi v knjigarnah. V knjižnjicah imajo zagotovo.
- Hoc est qui sumus -

Unknown_001 ::

Najbolje se naučiš logično reševati probleme z dejanskim reševanjem. Po nešteto rešenih primerih boš z izkušnjami videl določene stvari ki drugim niso tako "trivialne".

Link:

https://brilliant.org/?utm_medium=spons...

Mogoče ti koristi.
Wie nennt man einen Moderator mit der Hälfte des Gehirnis ?

Begabt

shadeX ::

Jp. In začni z enostavnim problemom. Ko ga rešiš si zadaj težji problem ali pa še boljše, nadgradi tistega enostavnega. Če si boš že na začetku dal težek problem boš obupal in velika verjetnost je da boš izgubil tudi voljo.

Zgodovina sprememb…

  • spremenil: shadeX ()

mihy11 ::

Hvala vsem za komentarje :) Mi bodo prišli prav.
"Computers are good at following instructions, but not at reading your mind."
by Donald Knuth


Vredno ogleda ...

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

Motivacija, volja do dela (strani: 1 2 )

Oddelek: Loža
518467 (6018) Vitamin-B
»

Kaj je to programerska logika? (strani: 1 2 )

Oddelek: Programiranje
529448 (6453) windigo
»

Kako postati flegmatik? (strani: 1 2 3 4 )

Oddelek: Loža
15930845 (25985) MasterTade
»

Pomoč pri sestavi algoritma

Oddelek: Programiranje
368684 (7515) mihy11
»

kje sploh začeti s programiranjem

Oddelek: Programiranje
425658 (4521) Spura

Več podobnih tem