четвртак, 03. децембар 2020.

Prilozi u Nemačkom jeziku

S obzirom da smo zatvorili još jedno od važnih gramatičkih poglavlja; Glagolski načini u Nemačkom jeziku; i sa time završili kompletnu gramatičku priču o glagolima; sada jednostavno možemo otvoriti jedno novo gramatičko poglavlje. Ovaj put učimo Unflektierbare Wortarten – nepromenjive vrste reči. Sama reč nepromenjive; svim teškim nastojanjima da se što jednostavnije nauči gramatika Nemačkog jezika; nam daje malo olakšanje jer ne moramo učiti da menjamo iste kroz padeže itd. Nepromenjive reči su jednostavno nepromenjive i zato uraaa! To jedino ne važi ako na primer koristite priloge kao prideve, tj. pridevske priloge. Nepromenjive reči delimo na priloge, predloge, veznike i uzvike. I pored toga što do sada nismo učili gramatiku istih, bez obzira da li učite početni ili napredniji nivo Nemačkog jezika; sa ovim gramatičkim terminima ste se već susretali. Dovoljno je da znate nekoliko nemačkih rečenica ili fraza; i za Vas se slobodno može reći da ste već koristili nepromenjive reči. I pored toga što nepromenjive reči nisu toliko komplikovane i teške kao ostala gramatika Nemačkog jezika, bitno je da svaku vrstu nepromenjivih reči i svaku njihovu podelu shvatite veoma ozbiljno; da možete posle lako prepoznati iste u svakoj rečenici i olakšati sebi život. Njena česta upotreba će Vam dosta olakšati i lakše pamćenje istih jer se konstantno koriste. Tako isto, iskoristiću ovu priliku da svima Vama koji mi pišete i koji se brinete kako ne možete mnogo da pamtite; daću Vam jedan veoma koristan savet; jednostavno ne razmišljajte o tome! Već samim tim što se stotinu puta susrećete na Nemačkom jeziku sa istim rečima, glagolima itd.; u raznim tekstovima ili govoru; sve se pamti samo od sebe. Ali morate sami sebe naterati da svaki dan učite Nemački jezik. Pa makar samo u jednom danu da ste pogledali neki nemački film ili prepisali neki tekst na Nemačkom jeziku, ili uradili neku vežbu; posetili ovaj blog; važno je da imate u učenju kontinuitet. Nisam za ovo plaćen za ovo što ću reći, ali definitivno svima preporučujem Duolingo da Vam bude svaki dan najbolji prijatelj! 


( Prilozi se i u pisanju i u govoru koriste konstantno )

Sada ćemo se baviti isključivo prilozima u Nemačkom jeziku dok ćemo se ostalim vrstama nepromenjivih reči baviti u drugim postovima. Pa da prvo vidimo šta su to prilozi? Die Adverbien – prilozi, najjednostavnije rečeno su reči koje stoje uz prideve i glagole i opisuju ih. Međutim, prilozi mogu da stoje i uz imenice, zamenice i predloge. Oni jednostavno izražavaju okolnost ili način radnje, stanja ili svojstva. U rečenicama ih prepoznajemo kao priloške odredbe ili atribute ili predikate. Prilozi se dele na:

  • Die Lokaladverbien – prilozi za mesto
  • Die Temporaladverbien – prilozi za vreme
  • Die Modaladverbien – prilozi za način
  • Die Kausaladverbien – prilozi za uzrok

Ukoliko koristite stariju literaturu kad učite gramatiku Nemačkog jezika, tamo ćete pronaći i petu podelu; Adverbien der Aussage – prilozi izjave, mada ona danas takođe spada u priloge za uzrok.

Prilozi za mesto

недеља, 22. новембар 2020.

Rad sa String tipom podataka u Python programskom jeziku

Većina Vas koji dolazite na moj blog ili uči ili već dosta zna C# programski jezik. Kako to znam? Pa na osnovu pregleda, Vaših poruka i komentara. To takođe znači da većina Vas ili uči ili prelazi ili čisto iz radoznalosti uči i Python programski jezik. Zato ja uvek prilikom pisanja postova s vremena na vreme napravim neko poređenje sa programskim jezicima, da bi stvari bile još jasnije. U ovom postu ćemo se baviti string tipovima podataka u Python programskom jeziku. Svi vi koji ste C# programeri; Vi na string tipove podataka više gledate kao na neku vrstu specijalnog niza referentnog tipa podataka ili još bolje rečeno String je specijalna klasa koja predstavlja string tip promenjivih sa mnoštvom korisnih metoda za manipulisanjem karaktera. Takođe znate da jedna string promenjiva može da sadrži 2GB ili bilion karaktera. Međutim, Python programeri više gledaju string tip podataka kao niz. I to immutable – nepromenjiv. Ali koji može da sadrži i 3GB karaktera i više što pre svega zavisi od toga da li vi imate instaliranu Python 32-bitnu ili 64-bitnu instalaciju, pa zatim OS, koliko imate RAM memorije itd. To vam u prevodu znači da ne možete izbrisati neko slovo u tekstu već ga možete jedino zameniti; na primer praznim znakom; funkcijom replace() gde dolazi od stvaranje nove sekvence vašeg niza. Što u praksi isto radite i kad radite sa stringovima u C# programskom jeziku. Pa zato o razlici između tipa string u C# programskom jeziku i Python programskom jeziku mogu Vam samo reći „Šijo mu ga Đura“ ili „Ista stvar samo drugo pakovanje.“


( Stringovi u Python programskom jeziku )

Sve u svemu rad sa stringovima u Python programskom jeziku je sličan, možda za nijansu drugačije se deklariše, Python programeri promenjive pišu uglavnom malim slovima i ima tu nekih detalja koje će vam čak biti lakši nego kad radite u C# programskom jeziku; npr. manje tipkanja. A sad da se obratimo početnicima. Tipove podataka string koristite kad god radite sa tekstom. Da li Vi u promenjivu hoćete da smestite samo Vaše ime ili celu knjigu „Na Drini Ćuprija - na nemačkom jeziku“, jednostavno koristite promenjivu tipa string. String je jednostavno skup karaktera. Karakter može biti i slovo i broj i većina specijalnih znakova ali i prazan string. Zahvaljujući mnogobrojnim string funkcijama vi možete dobiti informacije; na primer koliko vaš tekst ima karaktera. Jednostavno koristite string funkciju len(). Međutim, ako želite da znate koliko vaš tekst ima slova. U tom ćete slučaju morati sami da isprogramirate funkciju u kojoj će te manipulisati sa jednom ili više string funkcija. Tu nastupate Vi i vaše programersko razmišljanje. Postoji najmanje tri načina kako ćete da isprogramirate funkciju koja će vam vratiti tačan broj slova u rečenici. Sad koji je najbolji od njih zavisi isključivo od vaših programerskih sposobnosti da razmišljate ili da guglate. Ali meni što prvo pada na pamet jeste koliko ima karaktera i koliko ima praznog prostora i da se to dvoje oduzme. Za obe stvari već postoje string funkcije u Python  programskom jeziku. E sad da li je to bolje ili da putem petlje brojite karaktere ignorišući prazan prostor u tekstu; eh to je sad već programersko razmišljanje, iskustvo i praksa. Dok guglanje je daj šta daš, samo nek radi i nemam vremena sad da razmišljam. Sve u svemu uradićemo dva programa koja će Vam kroz praktične primere pomoći da upoznate neke česte manipulacije stringovima koje će vam itekako trebati u nekim Vašim budućim projektima.

Deklarisanje string tipova podataka

среда, 18. новембар 2020.

Iskazi odlučivanja if else i switch case u Java programskom jeziku

Pre nego što krenemo da studiramo iskaze odlučivanja, podsetio bih vas da pogledate prošli post; Operatori u Java programskom jeziku. Posebno obratite pažnju na operatore za poređenje i logične operatore. Ti operatori će biti osnova za mozganje i kreiranje što boljih i preciznijih iskaza za odlučivanje. Za praktičnu upotrebu, programerima su iskazi za odlučivanje nešto sa čime rade u skoro svakom projektu i prosto je nezamislivo napraviti bilo koji ozbiljniji program bez iskaza za odlučivanje. Ali ono što ja želim da kažem i dodam jeste; koliko ste vi sposobni da što savršenije iskonstruišete neki iskaz za neku odluku u programiranju od toga zavisi i tok vašeg programa ali i celi program. Ono što ste učili do sada jeste kako kompjuteri razmišljaju ali od iskaza odlučivanja vi počinjete da razmišljate kako će vaš program funkcionisati. Ukoliko ste početnik i počinjete sa jednostavnim malim programima;  dosta će te praviti uobičajene i jednostavne iskaze koje se podrazumevaju i u tim slučajevima nema mnogo pametovanja, ali kada budete trebali da konstruišete iskaze na osnovu teških i komplikovanih odluka, tu nastupa vaša programerska sposobnost razmišljanja i definitivno će te tada praviti dosta grešaka dok ne dovedete vaše programersko iskustvo do savršenstva. Zato nemojte uzimati iskaze odlučivanja kao nešto banalno i preći preko toga. Već mozgajte malo kako bi ste rešili neke vaše kućne probleme na programerski način. Na primer. Zadnjih meseci mnogo učim Nemački jezik ali u svojoj glavi ja već znam kako bi napravio neku funkciju i stavio u nju precizno iskaze odlučivanja, da mi funkcija prepozna i vrati pravilnu promenu glagola u bilo kojem gramatičkom vremenu. Razmišljam kako bi program radio sa gramatikom Nemačkog jezika. Ne, ja trenutno ne pravim nikakav program za učenje Nemačkog jezika ali kad učim Nemački jezik ja razmišljam kao da ću ga praviti. Zašto?


( Šema - if else statement - if else iskaza, kako se izvršava )


Zato što tako iskusni programeri razmišljaju i kad ne programiraju. Previše godina kodiranja učini to programeru da poboljša i motiviše samog sebe. Kada učite Java programski jezik, reći će vam da upravljačke naredbe se u programskim jezicima koriste za upravljanje tokom izvršavanja programa na osnovu promena stanja u programu. Iskazi odlučivanja su vam samo jedna kategorija upravljačkih naredbi. Upravljačke naredbe se dele na uslovne naredbe, iteracije i skokove. Iskazi za odlučivanje su uslovne naredbe. Ostale kategorije; iteracije su petlje i skokovi su komande koje pomažu da izađete iz petljih i funkcija. Njih ćete učiti kasnije u sledećim postovima. Za sada se koncentrišemo samo na iskaze odlučivanja. Java programski jezik podržava dve vrste iskaza za odlučivanje if else i switch case. Prvi iskaz if else se koristi kada imate manje uslova dok se switch case koristi kada imate više uslova. Zahvaljujući navedenim iskazima vi pomoću njih upravljate izvršavanje programa na osnovu uslova koji su poznati za vreme izvršavanja. Vaše mogućnosti i fleksibilnost zbog korišćenja istih su ogromne, s obzirom da vi možete čak i da u jedan uslov uslovite sa drugim ili više njih. To zovemo granjanje. Ali krenimo redom i skratimo vam muke; praktičnim korišćenjem istih.

If else iskazi

четвртак, 17. септембар 2020.

Klasa Random, biranje slučajnih brojeva u C# programskom jeziku

Najbolja stvar kod računara je što vas sluša. Kod njega nema ni levo ni desno, nego samo tačno kako ste mu naredili. Njegova akcija je uglavnom predvidljiva i kad ne dobijete od računara ono što očekujete to definitivno znači da ste vi pogrešili, a ne on. Ili nešto nije u redu na dubljem nivou!  Međutim, postoje situacije kad ćete hteti da računar bira jedan od više ponuđenih brojeva ili opcija. Na primer kada programirate igrice, kvizove, testove ili programirate Loto programe koji biraju brojeve umesto vas. Reći računaru da nešto izabere nije baš za njega jednostavan proces. Zato on ima specijalnu klasu Random, koja nasleđuje Object koji predstavlja generator pseudo slučajnih brojeva ili još preciznije Object koji sadrži algoritam koji stvara niz brojeva koji zadovoljavaju određene statističke zahteve za slučajnost. Zahvaljujući tome, biranje slučajnih brojeva u vašem programiranju jeste jednostavno. Vi čak ne morate ni da dodatno uvozite imenski prostor za ovu delatnost jer se Random klasa nalazi u System imenskom prostoru.  

( Random klasa je zadužena za bilo kakvo biranje slučajnih brojeva )

Da stvar bude još jednostavnija, korišćenje naredbe Random u C# programskom jeziku je mnogo jednostavnije nego u C ili C++ programskom jeziku. Metoda Next() je preklopljena i njene druge verzije vam omogućavaju da odredite minimalnu i maksimalnu vrednost opsega. Ona podrazumevano vraća pozitivan integer u opsegu od 0 do maksimalne vrednosti Int32. Ali ako odredite opseg od jednog broja do drugog, možete birati i negativne brojeve. Na primer ako hoćete da birate broj između -100 i 101 onda će te inicijalizovati metodu ovako. 

Random rnd = new Random();

rnd.Next(-100, 101);

I to je sve. I ako imate potrebu da birate više puta, dovoljno je da koristite istu rnd promenjivu čak i sa drugačijim postavkama. Nema potrebe da razmišljate da će svaki put kad izvršite ovaj kod da dobijate isti broj jer podrazumevani konstruktor za klasu Random dodeljuje generatoru slučajnih brojeva početnu vrednost koja je vremenski zavisna, tako da se smanjuje sekvenca biranja istih brojeva. Klasa Random sa njenom metodom Next() je sasvim dovoljna da precizno radite testove, iako su u nekim projektima uključeni razne vrste algoritma da bi slučajni broj bio dodatno naizmeničan broj.

Kako da napravim jednostavan program za izvlačenje Loto brojeva?

четвртак, 10. септембар 2020.

Imperativ u Nemačkom jeziku

U Nemačkom jeziku postoji 3 glagolska načina: indikativ, konjunktiv i imperativ. Indikativ je vremenski oblik koji nam govori da se nešto dešava realno, konjunktiv da će se nešto možda desiti i imperativ koji naređuje da se nešto desi. Indikativ smo već učili, pogledajte glagolska vremena u sadržaju; konjunktiv smo takođe učili; pogledajte Konjunktiv I i Konjunktiv II. I sad učimo imperativ. Imperativ se i na Nemačkom jeziku i na Srpskom jeziku kaže isto. Ali šta je to Imperativ? Imperativ ili što mi često kažemo zapovedni način je prost lični glagolski oblik kojim izričemo zapovest, molbu ili želju da se određena radnja izvrši. Imperativom se takođe može nešto zabraniti ili dati savet. A sad onaj lakši deo; Imperativ ima samo drugo lice jednine i množine:

  • Lies! – Čitaj! – od ( du liest )
  • Lest! – Čitajte! – od ( ihr lest )

U prethodnom primeru možete primetiti da mi u imperativu ne koristimo lične zamenice. One se pretpostavljaju, ali se u nekim situacijama mogu koristiti. Na primer kada radite sa grupom ljudi. 

  • Lies du! – Čitaj ti! – Obraćate se jednoj osobi iz grupe.
  • Lest ihr! – Čitajte vi! – Obraćate se jednoj izdvojenoj grupi ljudi ili celom kolektivu.



( Budite oprezni kada koristite Imperativ jer niko ne voli da mu se naređuje! )

Međutim ako hoćete da budete učtivi, ne morate glagol ni da menjate: 

  • Lesen Sie! – Čitajte!
  • Kommen Sie! – Dođite!
  • Gehen Sie! – Idite!

Obratite pažnju da ljudi u Nemačkoj ne vole da im se naređuje, kao ni mi. Možda je bolje da uvek budete ljubazni i da ne morate menjati glagol. Ali ipak postoje situacije kad morate koristiti zapovedni način. Zar ovo nije sve jednostavno? A da, možete pomisliti sve je to divno ali kako ja da znam da se čitaj kaže lies. Ko će sad naučiti sve te glagole ponovo kako se govore u imperativu? Znate, i ja kad sam se susreo privi put u nekom tekstu sa imperativom isto sam pomislio. Pogotovo šta na primer u Engleskom jeziku kada pravite imperativ uopšte ne menjate glagol, već ga koristite isto: 

  • You read – ti čitaš - Read – čitaj!  

Prosto čoveku dođe da se naljuti; a onda pogledam lepu mladu devojku iz Nemačke koja mi predaje nemački jezik, priča rečenice u imperativu i uopšte se ne brine kako ćemo naučiti imperativ; kao da je to lako. I onda sam došao do neverovatnog otkrića. Znate imperativ se gradi, pravi… znači ne morate ga učiti napamet; već treba da samo primenite jednostavnu formulu i sami ćete znati imperativ svakog glagola. Međutim, imperativ se gradi i na druge načine gde onda treba da naučite fraze napamet. Ali da mi prvo pogledamo kako se gradi imperativ.

Kako se gradi Imperativ?

среда, 02. септембар 2020.

Kako napraviti Space Invaders igricu u Python-u ?

Evo posle pauze od dva i po meseca, zbog letnjih vrućina i neophodnog psihičkog odmora od mnogobrojnih obaveza, nastavljamo sa razvijanjem bloga. Čak i pored toga što na blogu nije bilo novih postova, samo prekuče je blog brojao 547 novih poseta. Iskreno se zahvaljujem svim ljudima koji posećuju moj blog i podržavaju moj trud. Od danas pokrećem novu podgrupu u Sadržaju koju ćemo zvati Projekti. U njoj ćemo grupisati kako se programiraju razne igrice i mali programi u raznim programskim jezicima. Kad učite neki programski jezik važno je da pređete osnovne komande istog, ali isto tako je poželjno da isprogramirate nešto konkretno. Programiranje malih igrica i programa pojačavaju programeru volju i radoznalost kako su neki na izgled kompleksni zadaci rešeni na jednostavan način. Možete se pitati dobro, ali zašto u raznim programskim jezicima? Zato što poznavanje samo jednog programskog jezika kao na primer C# programskog jezika u poslovnom svetu; više nije dovoljno. To je kao da znate Engleski jezik ali hoćete da znate i Nemački jezik ili neke druge jer su vam na momente postali potrebniji. Tako je i sa programskim jezicima. Cilj je da se ne ograničavate i da budete fleksibilni. Pa da krenemo.


( Space Invaders igrica koju pravimo u Python programskom jeziku )

Space Invaders, arkadna; shooter igrica je nastala još 1978 godine. Mnogi od nas su odrasli uz tu igricu ili njene slične verzije. Naravno, danas su igrice otišle mnogo daleko i neophodna je kompanija i tim profesionalnih programera da isprogramiraju neku modernu i kvalitetnu igricu. Međutim, mi možemo malo da se vratimo u prošlost i sa veoma malo programiranja možemo napraviti neku malu kao arkadnu igricu. Zato ćemo mi sad isprogramirati nešto najjednostavnije, čisto da bi smo imali neki uvid kako se programira shooter igrica. Da bi smo napravili Space Invaders igricu, treba nam pucač ili neki svemirski brod, neprijatelj, metak i univerzum. Mi to možemo nacrtati programerski ili jednostavno koristiti sličice. Sličice možete nacrtati i kreirati sami ili jednostavno skinuti sa Interneta. Naravno hoćemo i da naša igrica ima ton i za to nam trebaju dva zvuka. Jedan zvuk lasera ili pucanja i jedan zvuk eksplozije. S obzirom da igricu pravimo u Python programskom jeziku; to znači da ćemo mi pre programiranja prvo da kreiramo jedan prazan direktorijum space_invarders. Zatim ćemo otići na Google i pretražiti slike za Space Invaders. Vidićete da imate već mnogo gotovih sličica, vaše je samo da izaberete koje vam se sviđaju. Potrebne su vam tri sličice: svemirski brod, neprijatelj i univerzum. Obratite pažnju da su za igricu potrebne sličice u *.gif formatu. Vi možete sličice koje skinete sa Interneta prepraviti ili nacrtati svoje. U Photoshop-u je neophodno da podesite veličinu sličica. I to: svemirski brod 32x34 piksela, neprijatelj 32x32 i univerzum ili pozadinska slika treba da bude 600x600 piksela. Isto tako kao što na Google pretražujete slike, tako možete pretraživati i datoteke za zvuk u *.wav formatu. Pronađite zvuk za laser ili pucanje i odaberite koji vam se dopada; zatim pretražite i zvuk za eksploziju. Ubacite fajlove u direktorijum space_invarders i spremni ste za programiranje.

Kako se programira Space Invaders?  

петак, 15. мај 2020.

Brojevi u Engleskom jeziku

Ukoliko ste savladali imenice, zamenice i prideve u Engleskom jeziku, vreme je da pređemo na jednu lakšu ali itekako bitnu lekciju; koju ćete definitivno najviše koristiti. Da to su brojevi u Engleskom jeziku. Međutim, ako niste pogledajte sadržaj. Za čas pročitajte i ponovite navedene gramatičke lekcije i zatim se vratite ovde. Brojevi u svakom jeziku se koriste svakodnevno. Ja nikad nisam za svojih 44 godine imao priliku da posetim bilo koju zemlju Engleskog govornog područja, ali svakodnevno koristim Engleski jezik; jer se koristi svugde. Jednostavno je prisutan u komunikaciji, filmovima, muzici, programiranju i neophodan na Internetu. Možda ću jednog dana doživeti da putujem u zemlju Engleskog govornog područja i prva stvar koju ću tamo raditi i pre nego što dođem do takve zemlje jeste kupovina vode, hrane i svega nečeg na nekom stajalištu. Na kasi ću pričati sa kasirkom, ili ću pitati neku zaposlenu osobu u trgovini koliko nešto košta i tada ću definitivno koristiti brojeve u Engleskom jeziku. Tako ćete isto i vi dok neki od vas su to već radili. Znači trgovina je prva stvar gde ćete koristiti brojeve na Engleskom jeziku. Srećna okolnost po pitanju brojeva je što vi već znate kako se pišu i izgledaju brojevi. Numeričke cifre su skoro u svim stranim jezicima iste. Ali obratite pažnju; ako se nađete u nekoj trgovini u USA; vaš račun može biti uvećan bez obzira što ste vi profesionalni matematičar u sabiranju cena; zato što oni imaju sasvim drugačiji princip obračuna artikala sa porezom i taksama i prikaz istih. Takvi računi nisu jasni kao kod nas ili recimo u Nemačkoj i zbog toga mogu biti iritirajući. Znači sve što kupujete u USA; dodajte slobodno još dolara na ono što ste izračunali da će te platiti; o cenama nebi ni da diskutujem. Ili je kod njih sve mnogo skuplje ili mi živimo u mnogo jeftinoj zemlji.

( Brojevi u Engleskom jeziku su veoma bitni )

Druga itekako važna stvar za one kojima to ne pada ni na pamet; jeste korišćenje . i zareza , u brojevima. Npr. kod nas se piše ovako 1.234,056 dok se u USA piše obratno 1,234.056 (one thousand and two hundred and thirty-four point nought five six ). Isto tako mi koristimo kilometre dok oni milje; zatim tu su totalno drugačije mere za hranu, benzin, brzinu, težinu, obuću, odeću i ako na primer radite na gradilištu; možete imati noćne more da se prilagodite. Ukoliko putujete u UK situacija će biti slična ali Engleska milja i Američka milja su totalno različite vrednosti. Mi se u ovom postu nećemo baviti svim tim različitim mernim jedinicama. Nadam se da svako od vas ima mobilni telefon, pristup Internetu i korisnim veb stranicama koje će umesto vas da vam konvertuju merne vrednosti od temperature do broja cipela koje nosite. Većina vas će morati se prilagoditi različitim mernim jedinicama; samo shvatite da je za to potrebno vreme. Ovakve komplikacije nećete imati ako recimo putujete u Nemačku jer oni koriste skoro sve iste mere kao i mi na Balkanu. Ukoliko želite da učite gramatiku Nemačkog jezika; to takođe možete na ovom blogu. Pogledajte sadržaj. Sve u svemu; mi se nećemo baviti mernim jedinicama na ovom postu; ali smatram da te stvari trebate da imate u vidu i da ih malo na svoju ruku izguglate. Prihvatite to kao turistički izazov. Toliko o uvodu, a sad se koncentrišimo na brojeve. U Engleskom jeziku brojeve delimo na: 

·         Cardinal numerals (numbers)osnovni brojevi

·         Ordinals numerals (numbers)redni brojevi

·         Fractional numerals (numbers)frakcijski brojevi

·         Repeating numerals (numbers) brojevi za ponavljanje

·         Multiplicatives numerals (numbers)brojevi za umnožavanje

·         Zerobroj nula

 Pa krenimo redom.

 Osnovni brojevi