185 lines
6.5 KiB
HTML
185 lines
6.5 KiB
HTML
<!doctype html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
|
|
|
<title>Uvod u programiranje - 1. čas</title>
|
|
|
|
<link rel="stylesheet" href="dist/reset.css">
|
|
<link rel="stylesheet" href="dist/reveal.css">
|
|
<link rel="stylesheet" href="dist/theme/black.css">
|
|
|
|
<!-- Theme used for syntax highlighted code -->
|
|
<link rel="stylesheet" href="plugin/highlight/monokai.css">
|
|
</head>
|
|
<body>
|
|
<div class="reveal">
|
|
<div class="slides">
|
|
<section>
|
|
<p>Uvod u programiranje</p>
|
|
<p>1. čas</p>
|
|
</section>
|
|
<section>
|
|
O ovom kursu<br/><br/>
|
|
<ul>
|
|
<li class="fragment">Osnovne informacije</li>
|
|
<ul>
|
|
<li class="fragment"><a href="https://radionice.dmz.rs/python">radionice.dmz.rs/python</a> - ovi slajdovi:)</li>
|
|
<li class="fragment"><a href="https://forum.dmz.rs/t/python-radionica-u-kc-gradu/66" target="_blank">forum</a></li>
|
|
<li class="fragment"><a href="https://wiki.dmz.rs/python" target="_blank">wiki</a></li>
|
|
</ul>
|
|
<li class="fragment">Kurs za početnike</li>
|
|
<li class="fragment">Nećete se zaposliti posle ovog kursa:)</li>
|
|
<li class="fragment">Zašto Python?</li>
|
|
<ul>
|
|
<li class="fragment">Interpreterski programski jezik visokog nivoa opšte namene</li>
|
|
</ul>
|
|
</ul>
|
|
</section>
|
|
<section>
|
|
Podešavanje okruženja<br/>
|
|
<ul>
|
|
<li class="fragment">https://www.python.org</li>
|
|
<ul>
|
|
<li class="fragment">Idite na Download latest -> Files -> Windows Installer</li>
|
|
</ul>
|
|
<li class="fragment">Šta je IDE?</li>
|
|
<li class="fragment">https://www.jetbrains.com</li>
|
|
<ul>
|
|
<li class="fragment">Idite na Developer Tools -> PyCharm -> Download -> Community</li>
|
|
</ul>
|
|
</ul>
|
|
</section>
|
|
<section>
|
|
Igranje u Python konzoli?<br/>
|
|
<ul>
|
|
<li class="fragment">Otvorite PyCharm</li>
|
|
<li class="fragment">Napravite novi projekat</li>
|
|
<li class="fragment">U dnu nađite "Python Console"</li>
|
|
<ul>
|
|
<li class="fragment">REPL režim rada (Read-Evaluate-Print-Loop)</li>
|
|
</ul>
|
|
<li class="fragment">Unesite "1", "1+1", probajte pod znacima navoda nešto</li>
|
|
<li class="fragment">Da li radi puta</li>
|
|
<li class="fragment">Koliko veliki broj može da bude?</li>
|
|
<li class="fragment">Da li radi deljenje?</li>
|
|
</ul>
|
|
</section>
|
|
<section>
|
|
Aritmetičke operacije<br/>
|
|
<ul>
|
|
<li class="fragment">+, -. *, /</li>
|
|
<li class="fragment">** — stepenovanje</li>
|
|
<li class="fragment">// — deljenje bez ostatka</li>
|
|
<li class="fragment">% — ostatak</li>
|
|
</ul>
|
|
</section>
|
|
<section>
|
|
Prvi pravi program<br/>
|
|
<ul>
|
|
<li class="fragment">Napravite novi fajl, unesite "1+1" opet</li>
|
|
<li class="fragment">Program se pokreće desnim klikom na fajl, pa "Run ..."</li>
|
|
<li class="fragment">Run -> Run ... -> Edit Configuration</li>
|
|
<li class="fragment">Šta se desi kada pokrenete program?</li>
|
|
<li class="fragment">Print funkcija</li>
|
|
</ul>
|
|
</section>
|
|
<section>
|
|
Promenljive<br/>
|
|
<ul>
|
|
<li class="fragment">Šta su promenljive?</li>
|
|
<ul>
|
|
<li class="fragment">Promenljive (engl. <i>variables</i>) su imena koja dajemo mestima u memoriji gde čuvamo podatke</li>
|
|
</ul>
|
|
<li class="fragment">Kako se kreiraju promenljive</li>
|
|
<ul>
|
|
<li class="fragment">Sa znakom "=", npr. <code>a=5</code></li>
|
|
</ul>
|
|
<li class="fragment">Kako da ispišemo promenljive</li>
|
|
<ul>
|
|
<li class="fragment">Samo ih ispišemo u konzoli</li>
|
|
</ul>
|
|
<li class="fragment">Kako da dodelimo vrednost promenljivoj</li>
|
|
</ul>
|
|
</section>
|
|
<section>
|
|
Promenljive<br/>
|
|
<ul>
|
|
<li class="fragment">Ograničenja promenljivih</li>
|
|
<ul>
|
|
<li class="fragment">Promenljive ne mogu da počinju sa brojem</li>
|
|
<li class="fragment">Promenljive su case-sensitive</li>
|
|
</ul>
|
|
<li class="fragment">Stil je bitan u programiranju</li>
|
|
<ul>
|
|
<li class="fragment"><code>camelCase, PascalCase, snake_case</code></li>
|
|
</ul>
|
|
<li class="fragment">Primer računanja PDV-a preko promenljivih</li>
|
|
</ul>
|
|
</section>
|
|
<section>
|
|
Tipovi promenljivih<br/>
|
|
<ul>
|
|
<li class="fragment">Reprezentacija promenljive u memoriji</li>
|
|
<li class="fragment">Osnovni tipovi u Python-u: int, str, float, bool</li>
|
|
<li class="fragment">Kako saznati koji je tip neke promenljive?</li>
|
|
<ul>
|
|
<li class="fragment"><code>type(x)</code></li>
|
|
</ul>
|
|
<li class="fragment">Kako uraditi konverziju neke promenljive u drugi tip (engl. cast)</li>
|
|
<ul>
|
|
<li class="fragment"><code>int(x), str(x), float(x), bool(x)</code></li>
|
|
</ul>
|
|
</ul>
|
|
</section>
|
|
<section>
|
|
Ulaz i izlaz<br/>
|
|
<ul>
|
|
<li class="fragment">Print — ugrađena funkcija</li>
|
|
<ul>
|
|
<li class="fragment">Više argumenata, odvojenih zarezima</li>
|
|
</ul>
|
|
<li class="fragment">Input — isto ugrađena funkcija</li>
|
|
<ul>
|
|
<li class="fragment">Specijalni karakter "\n"</li>
|
|
<li class="fragment">Setite se konverzije u int</li>
|
|
</ul>
|
|
</ul>
|
|
</section>
|
|
<section>
|
|
Debugging<br/>
|
|
<ul>
|
|
<li class="fragment">Postavljanje breakpoint-a (srp. tačka prekida)</li>
|
|
<li class="fragment">Run -> Debug</li>
|
|
<li class="fragment">Step over</li>
|
|
<li class="fragment">Watch</li>
|
|
</ul>
|
|
</section>
|
|
<section>
|
|
Domaći<br/>
|
|
<ul>
|
|
<li class="fragment">Napisati program koji ispiše refren, haiku budite kreativni:)</li>
|
|
<li class="fragment">Napisati program koji pita korisnika za dužinu stranice i izračuna obim i površinu kvadrata</li>
|
|
<li class="fragment">Napisati program koji pita korisnika za ime, težinu i visinu i ispiše mu BMI. Zatim ispiše koliko korisnik minimalni broj kilograma treba da ima i koliko treba da smrša još</li>
|
|
<li class="fragment">U REPL konzoli raditi "import this" da vidite Python ZEN</li>
|
|
</ul>
|
|
</section>
|
|
</div>
|
|
</div>
|
|
|
|
<script src="dist/reveal.js"></script>
|
|
<script>
|
|
// More info about initialization & config:
|
|
// - https://revealjs.com/initialization/
|
|
// - https://revealjs.com/config/
|
|
Reveal.initialize({
|
|
hash: true,
|
|
|
|
// Learn about plugins: https://revealjs.com/plugins/
|
|
plugins: [ ]
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|