Pirmoji pamoka, susipažinimas su kompiuteriais ir žaidimų kūrimu
Pamokos turinys
- Aptartas kompiuterių poreikis
- Iš kokių elementų susideda kompiuteris
- Skirtingi būdai talpinti atmintį
- Programų įpatumai laukiant atminties
- Idėjų perteikimas programavimo kalboje ir pseudo-kodas
Idėjų pateikimas programavimo kalboje ir pseudo-kodas
Kambaryje yra šviesos jungiklis ir lempa. Šviesos jungiklis yra įjungtas arba išjungtas. Aprašykim taip lietuvišku pseudo kodu:
Jungiklis yra įjungtas
Jeigu (jungiklis yra įjungtas)
Lempa šviečia
Kitaip
Lempa nešviečia
// Šitas tekstas nepaveikia kodo: vadinamas komentaru
// Lempa švies
Programuojant mes turime nurodyti kokius daiktus turime, prieš naudodami juos:
Turime jungiklį, kuris yra iš pradžių įjungtas
Turime lempą
Jeigu (jungiklis yra įjungtas)
Lempa šviečia
Kitaip
Lempa nešviečia
// Lempa švies
Paprastame pasaulyje jungiklis gali būti tik įjungtas arba išjungtas, todėl turime nuspręsti kokios būsenos yra jungiklis, jeigu mes nenurodome ar jis įjungtas ar ne. Tarkim nauji jungikliai nupirkti yra išjungtos padėties, kaip ir lempa:
Turime jungiklį
Turime lempą
// Lempa nešviečia
Jeigu (jungiklis yra įjungtas)
Lempa šviečia
Kitaip
Lempa nešviečia
// Lempa nešvies
Galime turėti kelis jungiklius, todėl verta jiems duoti pavadinimus:
Turime jungiklį "a", kuris yra iš pradžių įjungtas
Turime jungiklį "b", kuris yra iš pradžių išjungtas
Turime lempą "c"
// Pavadinimai pribvalo būti visi unikalūs, nes kompiuteris turi sąrašą pavadinimų ir nori greitai rasti reikiamą daiktą
Jeigu (jungiklis "a" yra įjungtas)
Lempa "c" šviečia
Kitaip
Lempa "c" nešviečia
// Lempa švies
Kadangi pavadinimai yra unikalūs, mes galime nebenurodyti ar daiktas yra jungiklis ar lempa, kai jį naudojame antrą kartą:
Turime jungiklį "a", kuris yra iš pradžių įjungtas
Turime jungiklį "b", kuris yra iš pradžių išjungtas
Turime lempą "c"
// Pavadinimai pribvalo būti visi unikalūs, nes kompiuteris turi sąrašą pavadinimų ir nori greitai rasti reikiamą daiktą
Jeigu ("a" yra įjungtas)
"c" šviečia
Kitaip
"c" nešviečia
// "c" švies
Nors tai jau neskamba praktiškai, bet vienas jungiklis gali pakeisti kito jungiklio būseną:
Turime jungiklį "a", kuris yra iš pradžių įjungtas
Turime jungiklį "b", kuris yra iš pradžių išjungtas
Turime lempą "c"
Jeigu ("a" yra įjungtas)
"c" šviečia
"b" įjungtas
Kitaip
"c" nešviečia
"b" išjungtas
// "C" švies
// "b" įjungtas
Mes tik kartą tikriname jungiklio “a” padėtį, todėl išjungdame jungiklį vėliau, neišjungiame lempos:
Turime jungiklį "a", kuris yra iš pradžių įjungtas
Turime jungiklį "b", kuris yra iš pradžių išjungtas
Turime lempą "c"
Jeigu ("a" yra įjungtas)
"c" šviečia
"b" įjungtas
Kitaip
"c" nešviečia
"b" išjungtas
// "a" įjungtas
"a" išjungtas
// "a" išjungtas
// "C" švies
// "b" įjungtas
Tuo programavimas, ypač paprastas kodas, skirias nuo realybės: viskas vykdoma nuosekliai ir svarbu eilės tvarka.
Jeigu pirma tikriname ar lempa įjungiama o tik paskui nustatome jungiklio padėtį, lempa bus išjungta arba dar blogiau: gausime loginę klaidą:
Turime jungiklį "b", kuris yra iš pradžių išjungtas
Turime lempą "c"
Jeigu ("a" yra įjungtas) // Loginė klaida: jungiklio "a" neturime
"c" šviečia
"b" įjungtas
Kitaip
"c" nešviečia
"b" išjungtas
Kitaip tariant: iškepti blynai priklauso ne tik nuo tešlos recepto, bet ir nuo to kokia eilės tvarka dedame ingredientus į tešlą.
Kompiuteriui yra nusispjaut į realybę, todėl galime laisvai gauti tokią situaciją:
Turime lempą "a", kuris yra iš pradžių šviečianti
Turime lempą "b", kuris yra iš pradžių nešviečianti
Turime jungiklį "c"
Jeigu ("a" yra šviečianti)
"c" įjungtas
"b" šviečia
Kitaip
"c" išjungtas
"b" nešviečia
// "a" šviečia
// "C" įjungtas
// "b" šviečia