<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="lt">
	<id>https://wiki.angis.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Eimutis</id>
	<title>wiki.angis.net - Naudotojo indėlis [lt]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.angis.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Eimutis"/>
	<link rel="alternate" type="text/html" href="https://wiki.angis.net/w/Specialus:Ind%C4%97lis/Eimutis"/>
	<updated>2026-05-03T09:13:04Z</updated>
	<subtitle>Naudotojo indėlis</subtitle>
	<generator>MediaWiki 1.35.0</generator>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/VBE_su_Python&amp;diff=4463</id>
		<title>Ap/Py/VBE su Python</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/VBE_su_Python&amp;diff=4463"/>
		<updated>2023-04-24T05:59:29Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pasibaigus '''VBE2022 IT''' egzaminui, aptarkime ar pavyko panaudoti konsultacijų metu gautas žinias. Šių metų užduotys pasižymėjo, jog nebuvo reikalaujama rašyti rikiavimo funkcijos, todėl laimėjo tie mokiniai, kurie lankė mūsų FB grupę '''IT VBE konsultacijos''' (LInMA) 🙂 kadangi rikiuoti reikėjo abiejose užduotyse. Taip pat užduočių autoriai mėgsta grupavimą pagal vardus antroje užduotyje, kas buvo detaliai išnagrinėta konsultacijose (garantuotas indekso radimas su reikšme pabaigoje).&lt;br /&gt;
&lt;br /&gt;
Užduotis U1 buvo gana paprasta, buvo duotas konkretus konkurso dalyvių skaičius, todėl masyvo dydis buvo fiksuotas. Spausdinant rezultatus reikėjo atkreipti dėmesį, jog pateikiami ne visi dalyviai, o tik tie, kurie surinko daugiausiai taškų. Galima netgi naudoti supaprastintą ciklo variantą for, kuris vadinamas '''foreach'''.&lt;br /&gt;
Teko pasikrapštyti, kad išpildyti visus U2 užduoties niuansus 🙂 Užduotis buvo kaip ir nesudėtinga - sukuriamas pratimų masyvas, kurio raktas yra pratimo vardas. Kabliukas buvo tame, kad kai kuriomis dienomis buvo kartojamas tas pats pratimas. Todėl pratimų elemento reikšmę sudarė: skaitliukai dienos dalims ir minutėms bei dienų masyvas, kurio elementas yra '''true''', kai i-ąją dieną atliekamas pratimas. Tada skirtingų dienų skaičius bus paprasta požymių suma.&lt;br /&gt;
&lt;br /&gt;
U1 Python sprendimas https://onlinegdb.com/VmRv0FrFH&amp;lt;br&amp;gt;&lt;br /&gt;
U2 Python sprendimas https://onlinegdb.com/TredllMTV&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Visos eilės ankstesnių metų VBE sprendimai pateikiami [https://ktuedu-my.sharepoint.com/:b:/g/personal/eimkarc_ktu_lt/EXwwBLx-mtFMsHx4JB41pMoBpQ2HtdggNq8HexrgcrTJfg?e=Hy9MQu čia].&lt;br /&gt;
&lt;br /&gt;
Palyginimui galite pasižiūrėti '''sprendimus su C++''' [https://wiki.angis.net/w/Ap/Cpp/VBE_treniruot%C4%97s]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/VBE_su_Python&amp;diff=4462</id>
		<title>Ap/Py/VBE su Python</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/VBE_su_Python&amp;diff=4462"/>
		<updated>2023-04-24T05:58:58Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pasibaigus '''VBE2022 IT''' egzaminui, aptarkime ar pavyko panaudoti konsultacijų metu gautas žinias. Šių metų užduotys pasižymėjo, jog nebuvo reikalaujama rašyti rikiavimo funkcijos, todėl laimėjo tie mokiniai, kurie lankė mūsų FB grupę '''IT VBE konsultacijos''' (LInMA) 🙂 kadangi rikiuoti reikėjo abiejose užduotyse. Taip pat užduočių autoriai mėgsta grupavimą pagal vardus antroje užduotyje, kas buvo detaliai išnagrinėta konsultacijose (garantuotas indekso radimas su reikšme pabaigoje).&lt;br /&gt;
&lt;br /&gt;
Užduotis U1 buvo gana paprasta, buvo duotas konkretus konkurso dalyvių skaičius, todėl masyvo dydis buvo fiksuotas. Spausdinant rezultatus reikėjo atkreipti dėmesį, jog pateikiami ne visi dalyviai, o tik tie, kurie surinko daugiausiai taškų. Galima netgi naudoti supaprastintą ciklo variantą for, kuris vadinamas '''foreach'''.&lt;br /&gt;
Teko pasikrapštyti, kad išpildyti visus U2 užduoties niuansus 🙂 Užduotis buvo kaip ir nesudėtinga - sukuriamas pratimų masyvas, kurio raktas yra pratimo vardas. Kabliukas buvo tame, kad kai kuriomis dienomis buvo kartojamas tas pats pratimas. Todėl pratimų elemento reikšmę sudarė: skaitliukai dienos dalims ir minutėms bei dienų masyvas, kurio elementas yra '''true''', kai i-ąją dieną atliekamas pratimas. Tada skirtingų dienų skaičius bus paprasta požymių suma.&lt;br /&gt;
&lt;br /&gt;
U1 Python sprendimas https://onlinegdb.com/VmRv0FrFH&amp;lt;br&amp;gt;&lt;br /&gt;
U2 Python sprendimas https://onlinegdb.com/TredllMTV&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Visos eilės ankstesnių metų VBE sprendimai pateikiami [https://ktuedu-my.sharepoint.com/:b:/g/personal/eimkarc_ktu_lt/EXwwBLx-mtFMsHx4JB41pMoBpQ2HtdggNq8HexrgcrTJfg?e=Hy9MQu čia].&lt;br /&gt;
&lt;br /&gt;
Palyginimui galite pasižiūrėti sprendimus su C++ [https://wiki.angis.net/w/Ap/Cpp/VBE_treniruot%C4%97s]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Cpp/VBE_treniruot%C4%97s&amp;diff=4461</id>
		<title>Ap/Cpp/VBE treniruotės</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Cpp/VBE_treniruot%C4%97s&amp;diff=4461"/>
		<updated>2023-04-24T05:46:18Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Aptariamos treniruotės, skirtos IT VBE egzamino programavimo dalies pasiruošimui. Naudojamos tik įprastinės C++ konstrukcijos, aprašytos vadovėlyje ''„Šiuolaikiškas žvilgsnis į programavimą C++, kursas 11–12 klasėms“'', nenaudojama STL biblioteka. Tačiau medžiagoje atsisakoma kai kurių perteklinių elementų bei pateikiami patogesni algoritmai, kas leidžia gauti racionalius sprendimus per trumpesnį laiką.&lt;br /&gt;
&lt;br /&gt;
=== Įžanga ===&lt;br /&gt;
Programavimo mokymąsi galima palyginti su treniruotėmis, kai pradedama nuo paprastų uždavinukų ir einama link sudėtingesnių. Egzamino užduotys nėra labai sudėtingos, bet turi tam tikrą specifiką, kuriai reikia geriau pasiruošti. Siekiant geresnių rezultatų, peržvelgsime jau įvykusių egazaminų užduotis ir susidėliosime savo sprendimo schemą.   Analizuojant užduotis galima pastebėti, kad šiemet jau dešimtas sezonas, kai programavimo uždaviniai pateikiami tuo pačiu šablonu 🙂. Dar 2012 metais formatas buvo kitas, o nuo 2013 metų – programavimo užduočių šablonas nesikeičia. Todėl tikslinga taikyti galimai aiškesnę sprendimo schemą, kurią toliau aptarsime ir išbandysime spręsdami konkrečias VBE užduotis. Pateiktų programų tekstų rinkti klaviatūra iš naujo nereikia, jums pateikiami visi C++ tekstai aplinkoje '''https://onlineGDB.com''', kurie paruošti vykdymui, pakanka paspausti mygtuką '''Run'''. Norėdami eksperimentuoti ir keisti programą, spauskite mygtuką '''Fork this''' arba persikelkite duomenis į savo naudojamą programavimo aplinką. VBE atveju bus galima naudoti tik '''Code::Blocks''', todėl pasitreniruokite su šia aplinka, kad įgautumėte reikalingų įgūdžių. &lt;br /&gt;
&lt;br /&gt;
=== Rekomenduojama sprendimo schema ===&lt;br /&gt;
Apžvelgus visas VBE užduotis C++ naudojimo laikotarpiu, aiškiai matyti tokia sprendimo schema:&lt;br /&gt;
* aprašyti duomenų struktūras ir jų saugyklas,   &lt;br /&gt;
* skaityti duomenis,    &lt;br /&gt;
* pagal juos skaičiuoti ir spausdinti rezultatus.  &lt;br /&gt;
&lt;br /&gt;
Duomenys visada pateikiami viename faile, paprastai yra perteklinių duomenų (skaitikliai), nurodančių toliau pateikiamų atskirų elementų (duomenų) kiekį. Todėl ruošiantis egzaminui tikslinga laikytis šablono, sutrumpintai vadinamo VBE_DRCP (Data_Read_Calculate_Print), kurį paaiškinsime paprastos užduoties pavyzdžiu. &lt;br /&gt;
&lt;br /&gt;
DUOTAS konkurse dalyvaujančių mokinių sąrašas, kuriame nurodytas vardas, klasės kodas ir surinktų taškų kiekis (0–100), mokinių skaičius n&amp;lt;=90. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C++&amp;quot;&amp;gt;&lt;br /&gt;
6 &lt;br /&gt;
Simonas  12a 66 &lt;br /&gt;
Martina  10b 100 &lt;br /&gt;
Jonas    11c 75 &lt;br /&gt;
Marius   11c 68 &lt;br /&gt;
Stepas   12a 77 &lt;br /&gt;
Darius   12c 68 &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
RASKITE: kiek klasių dalyvavo konkurse, kiek buvo klasės mokinių bei kiek jie surinko taškų, klases surikiuokite taškų mažėjimo tvarka bei pagal klasės kodą. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C++&amp;quot;&amp;gt;&lt;br /&gt;
klasiu_sk= 4 &lt;br /&gt;
11c 2 143 &lt;br /&gt;
12a 2 143 &lt;br /&gt;
10b 1 100 &lt;br /&gt;
12c 1 68 &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pradinai žingsniai: duomenų struktūros ir skaitymo funkcija === &lt;br /&gt;
1. Perkelkite pradinių duomenų pavyzdžius į programos komentarų dalį, o po to į failą. Duomenys, esantys prieš akis programos tekste, padeda rašyti skaitymo funkciją! &lt;br /&gt;
&lt;br /&gt;
2. Parašykite main() funkciją, kurioje nurodykite srautų stdin ir stdout priskyrimą failams. &lt;br /&gt;
    freopen (&amp;quot;U1.txt&amp;quot;,&amp;quot;r&amp;quot;,stdin); &lt;br /&gt;
    freopen (&amp;quot;U1rez.txt&amp;quot;,&amp;quot;w&amp;quot;,stdout); // pradžioje paslėpkite  &lt;br /&gt;
3. Apibrėžkite struktūrą Mokinys ir rezervuokite vietą mokinių sąrašui. Naudokite vienaskaitą struktūrai ir daugiskaitą sąrašui. Rezervuokite tokio dydžio masyvą kaip nurodyta užduotyje. Masyvas ir mokinių skaitliukas rašomas globalių kintamųjų srityje. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C++&amp;quot;&amp;gt;&lt;br /&gt;
struct Mokinys { &lt;br /&gt;
    string vardas; &lt;br /&gt;
    string klase;   // klasės kodas &lt;br /&gt;
    int taskai; &lt;br /&gt;
}; &lt;br /&gt;
Mokinys mokiniai[90];  // numatytosios reikšmės yra nuliai &lt;br /&gt;
int msk = 0;           // mokinių skaičius sąraše  &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
4. Parašykite skaitymo funkciją, kurioje įrašykite įvestų duomenų spausdinimą (nors to užduotis nereikalauja, bet tai pravers programos derinimo metu). &lt;br /&gt;
&lt;br /&gt;
5. Išbandykite skaitymo funkcijos veikimą: pažymėkite funkciją freopen() kaip komentarą (dėl stdout – tada lieka konsolės režimas), o rezultatus stebėkite terminalo lange. &lt;br /&gt;
&lt;br /&gt;
6. Jei duomenys perskaityti teisingai (sutampa su tais, kurie buvo pradinių duomenų faile) – tai esate teisingame kelyje, jau tam tikrą balų skaičių gausite 😊. &lt;br /&gt;
&lt;br /&gt;
Naujausias pradinės programos variantas pateikiamas čia - [https://onlinegdb.com/g9oUvwQXU] &lt;br /&gt;
&lt;br /&gt;
=== Tolimesnė eiga: skaičiavimai ir rezultatai ===&lt;br /&gt;
Toliau tęsiame programos kūrimą – aprašysime rezultatų struktūrą ir masyvą pradinių duomenų globalioje srityje ir sukursime skaičiavimo funkciją. Tai yra esminė dalis, bet ir čia galima įžvelgti bendrų visoms užduotims požymių. Dažnai reikalaujama pradinius duomenis sugrupuoti pagal tam tikrą požymį. Nors C++ tam yra skirtos specialios priemonės (map struktūros), bet tai į mokyklos programą neįeina ir egzaminui, deja, tai nenaudotina. Todėl siūloma rašyti indekso paieškos funkciją, kuri rastų reikiamą vietą. Pradžioje ieškoma reikšmė įrašoma sąrašo pabaigoje – todėl '''ji visada bus randama'''. Jei ieškodami pasiekėme pabaigą, tai reiškia kad sąrašą reikia papildyti. Kadangi ieškoma reikšmė jau įrašyta, o struktūrų masyvo pradinės reikšmės yra nulinės, tai pakanka tik padidinti faktinių elementų skaitiklio reikšmę. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C++&amp;quot;&amp;gt;&lt;br /&gt;
struct Klase {&lt;br /&gt;
    string vardas; // klasės kodas&lt;br /&gt;
    int mok_sk;    // klasės mokinių skaičius&lt;br /&gt;
    int taskai;    // klasės mokinių taškų suma&lt;br /&gt;
};&lt;br /&gt;
Klase klases[30];  // pagal nutylėjimą reikšmės nulinės&lt;br /&gt;
int ksk = 0;       // klasių sąraše kiekis&lt;br /&gt;
&lt;br /&gt;
//==================================================&lt;br /&gt;
// taikysime paiešką su apsaugine reikšme pabaigoje !&lt;br /&gt;
// randa klasės indeksą pagal paieškos kodą&lt;br /&gt;
// o jei nėra, tai papildo klasių masyvą&lt;br /&gt;
int rastiKlase(string paieska) {&lt;br /&gt;
    klases[ksk].vardas = paieska; // visada rasime :)&lt;br /&gt;
    int i = 0;&lt;br /&gt;
    while (klases[i].vardas != paieska) i++;&lt;br /&gt;
    if(i == ksk) ksk++; // jei nebuvo - padidiname&lt;br /&gt;
    return i;&lt;br /&gt;
}&lt;br /&gt;
//------------------------------------------------&lt;br /&gt;
void skaiciuoti(){ // grupuojame pagal klases&lt;br /&gt;
    for (int i = 0; i &amp;lt; msk; i++){&lt;br /&gt;
        Mokinys m = mokiniai[i];&lt;br /&gt;
        int ki = rastiKlase(m.klase);&lt;br /&gt;
        klases[ki].mok_sk++;&lt;br /&gt;
        klases[ki].taskai += m.taskai;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Spausdinimo funkcijoje tikslinga suformuoti tarpinį vienos raidės kintamąjį, kad atskirų struktūros elementų užrašai taptų lakoniškesni nei su indeksu. &lt;br /&gt;
&lt;br /&gt;
Toliau deriname parašytas skaičiavimo funkcijas, stebime gaunamus rezultatus. &lt;br /&gt;
&lt;br /&gt;
=== Baigiamoji dalis ===&lt;br /&gt;
Atskirai parašome rikiavimo kriterijui reikalingą funkciją '''arTvarka()'''. Tada ją galime išbandyti su standartine funkcija sort(). Tokiu būdu užduotis jau įvykdyta. Bet jei už rikiavimo funkciją skiriami balai, tai turėdami laiko galite ją parašyti, panaudodami tą pačią funkciją '''arTvarka()'''. &lt;br /&gt;
&lt;br /&gt;
NEPAMIRŠKITE: pašalinkite komentarą ties funkcija freopen(..., stdout), kad rezultatai pakliūtų į failą. Panaikinkite tarpinių rezultatų išvedimą skaitymo funkcijoje. &lt;br /&gt;
&lt;br /&gt;
Aktyvus pilnos programos variantas yra pateikiamas [https://onlinegdb.com/dLBHyBIa- čia]&lt;br /&gt;
&lt;br /&gt;
Kad programa būtų labiau individuali, parašykite savo nuožiūra komentarų, kuriuose nereikia tuščiažodžiauti. Galite iš anksto pasiruošti sinonimų funkcijų vardams: &lt;br /&gt;
&lt;br /&gt;
* skaityti() =&amp;gt; formuoti(), skaityti_duomenis(), read(), ...  &lt;br /&gt;
* skaiciuoti() =&amp;gt; formuoti(), grupuoti(), calculate(), ...  &lt;br /&gt;
* spausdinti() =&amp;gt; isvesti(), rezultatai(), print(), write(), ... &lt;br /&gt;
&lt;br /&gt;
Aišku, kad kiekvienais metais VBE metu būna tam tikrų „kabliukų“, todėl reikia atidžiai perskaityti užduočių sąlygas. Pradžioje pasirašykite vadinamuosius griaučius: duomenų struktūras, masyvus, main() ir kitas funkcijas, o tada spręskite ir tikrinkite savo sprendimus.&lt;br /&gt;
&lt;br /&gt;
=== Siūlomų sprendimų apibendrinimas === &lt;br /&gt;
A1. Darbą su failais geriausia organizuoti panaudojant funkciją '''reopen()'''. Tuomet '''cin''' visada bus įvedimo srautas, o '''cout''' – išvedimo. Pradžioje '''cout''' priskyrimą išjungiame naudodami //, nes žiūrėti rezultatus yra patogiau konsolės lange. Kadangi standartiniai srautai uždaromi automatiškai, todėl nereikia '''close()'''. Taip pat nereikia #include &amp;lt;fstream&amp;gt;. Kadangi '''main()''' funkcijos pradžia su freopen() tampa visada vienoda, tai į tą vietą ir keliame failų vardus, jų atskirai su raktažodiu const neaprašome.&lt;br /&gt;
&lt;br /&gt;
A2. Programos pradinius duomenis ir rezultatus '''tikslinga formuoti kaip globalius''', tai leidžia nekartoti jų funkcijų antraštėse. Tokiu būdu programa tampa aiškesnė! Struktūrų masyvai aprašomi kartu su elementų skaitikliais, kurie imituoja vector&amp;lt;T&amp;gt; tipą. &lt;br /&gt;
  &lt;br /&gt;
A3. '''Funkcijų antraščių rašyti nereikia''', pakanka metodą '''main()''' nukelti į programos pabaigą. Kadangi duomenys ir rezultatai yra globalūs, daugelis funkcijų lieka be parametrų. Jos skirtos algoritmui suskaidyti į aiškiai apibėžtas dalis. Su parametrais rašomos rikiavimo ir paieškos funkcijos, kadangi tai yra universalios, nepriklausančios nuo konteksto funkcijos. &lt;br /&gt;
&lt;br /&gt;
A4. '''Rikiavimo kriterijų''' visada tikslinga aprašyti kaip atskirą loginę funkciją. Tada jūsų rašomas rikiavimo algoritmas bus aiškesnis, be to galėsite patikrinimui naudoti standartinę funkciją '''sort()'''. &lt;br /&gt;
&lt;br /&gt;
A5. Užduotyje minima sąvoka „Prasmingai pavadinti kintamieji“ nereiškia kad reikia rašyti ilgus sudurtinius vardus – tai gali apsunkinti programos teksto skaitymą.&lt;br /&gt;
&lt;br /&gt;
=== Konkrečių VBE 2022-2013 užduočių sprendimai ===&lt;br /&gt;
&lt;br /&gt;
Jums pateikiami ketverių pastarųjų, 2016 bei 2013 metų užduočių sprendimai. Treniruotės metu patartina susipažinti su oficialiomis užduotimis, kadangi jų formuluotės pateikiamos naudojant tą patį šabloną. Visada būna dvi užduotys, viena lengvesnė, kita sudėtingesnė. Suprantama kad egzamino metu veikia stresas, nepavyksta iš karto rasti gero kelio, todėl ir siūloma mūsų VBE pritaikyta schema, leidžianti lengviau išspręsti užduotis. O mokytis geriau ne pagal egzamino metu gautus sprendimus, o pagal ramiai apibendrintus.  &lt;br /&gt;
&lt;br /&gt;
Visose programose duomenys yra pateikti programos priekyje, kas leidžia juos pastoviai stebėti ir geriau suprasti sąlygą. Perkėlimas į failą kopijavimo būdu yra greitas. Dar siūlome prasmingas skaičių grupes išryškinti skirtingų tarpų skaičiumi, kadangi skaičių įvedimui tas netrukdo, o uždavinys tampa aiškesnis. &lt;br /&gt;
&lt;br /&gt;
'''2022 metų''' užduotys yra [https://www.nsa.smm.lt/wp-content/uploads/2022/06/IT_2022_pagr.pdf čia]. U1 sprendimas yra [https://onlinegdb.com/gA8kKvUUz čia]. U2 sprendimas yra [https://onlinegdb.com/SiZ9AFiZb čia].&amp;lt;br&amp;gt;&lt;br /&gt;
2022 metų užduotys pasižymėjo, jog nebuvo reikalaujama rašyti rikiavimo funkcijos, todėl laimėjo tie mokiniai, kurie lankė mūsų FB grupę IT VBE konsultacijos 🙂 kadangi rikiuoti reikėjo abiejose užduotyse ir buvo galima naudoti standartinę '''sort()''' funkciją. Taip pat užduočių autoriai mėgsta grupavimą pagal vardus antroje užduotyje, kas buvo detaliai išnagrinėta konsultacijose (garantuotas indekso radimas su reikšme pabaigoje).&amp;lt;br&amp;gt;&lt;br /&gt;
U1 – ''Konkursas''. Tai gana paprasta užduotis, buvo duotas konkretus konkurso dalyvių skaičius, todėl eilučių skaičius (masyvo dydis) buvo fiksuotas. Gal neįprasta buvo tai, jog pradinis skaičius rodė skaičiukų kiekį kitose eilutėse. Spausdinant rezultatus reikėjo atkreipti dėmesį, jog pateikiami ne visi dalyviai, o tik tie, kurie surinko daugiausiai taškų. Galima netgi naudoti supaprastintą ciklo variantą for, kuris vadinamas '''foreach'''.&amp;lt;br&amp;gt;&lt;br /&gt;
U2 – ''Sportas''. Teko pasikrapštyti, kad išpildyti visus U2 užduoties niuansus (palyginkite su '''2016 metų U2''') 🙂 Užduotis buvo kaip ir nesudėtinga - sukuriamas pratimų masyvas, kurio raktas yra pratimo vardas. Kabliukas buvo tame, kad kai kuriomis dienomis buvo kartojamas tas pats pratimas. Todėl pratimų elemento reikšmę sudarė: skaitliukai dienos dalims ir minutėms bei dienų masyvas, kurio elementas yra true, kai i-ąją dieną atliekamas pratimas. Tada skirtingų dienų skaičius bus paprasta požymių suma.&lt;br /&gt;
&lt;br /&gt;
'''2021 metų''' užduotys yra [https://www.nsa.smm.lt/wp-content/uploads/2021/06/IT_2021_pagr.pdf čia]. U1 sprendimas yra [https://www.onlinegdb.com/dcCmz0d2Z čia]. U2 sprendimas yra [https://www.onlinegdb.com/Ap6LRGgDc čia].&amp;lt;br&amp;gt;&lt;br /&gt;
U1 – ''Bėgimas''. Šioje užduotyje duomenis sudaro tik skaičiukai. Todėl funkcija trukmė() atlieka laiko skaičiavimą, naudodama 4 nuoseklius skaičius iš srauto cin. Mažiausią laiką randame tiesiog įvedimo metu.&amp;lt;br&amp;gt;&lt;br /&gt;
U2 – ''Apklausa''. Gana normali sąlyga, nėra pozicinio vardų įvedimo. Algoritmo pagrindą sudaro grupavimo pagal pamokos vardą metodas, kuriame taikome paiešką su ieškomo elemento įrašymu į pamokų sąrašo pabaigą. &lt;br /&gt;
&lt;br /&gt;
'''2020 metų''' užduotys yra [https://www.nsa.smm.lt/wp-content/uploads/2021/02/8563_IT_2020_pagr_www.pdf čia]. U1 sprendimas yra [https://www.onlinegdb.com/n-YGS8_xB čia]. U2 sprendimas yra [https://www.onlinegdb.com/yKCTu5fvZ čia].&amp;lt;br&amp;gt;&lt;br /&gt;
U1 – ''Gėlės''. Sprendžiant reikia transformuoti mėnesį ir dieną į vasaros dienų masyvo indeksą ir tam naudojamas mėnesio pradžios indeksų masyvas const int mi[] = {0, 30, 61};&amp;lt;br&amp;gt;&lt;br /&gt;
U2 – ''Žvejų varžybos''. Tai gana paini sąlyga. Kad su ta pačia funkcija būtų galima rikiuoti žvejų ir žuvų masyvus, yra naudojama struct Duomuo - universali struktūra - tinka žvejui ir žuvims. &lt;br /&gt;
&lt;br /&gt;
'''2019 metų''' užduotys yra [https://www.nsa.smm.lt/wp-content/uploads/2021/02/8018_IT-VBE-1_2019.pdf čia]. U1 sprendimas yra [https://www.onlinegdb.com/-x4MpZMj7 čia]. U2 sprendimas yra [https://www.onlinegdb.com/UJ-lZowKD čia].&amp;lt;br&amp;gt;&lt;br /&gt;
U1 – ''Aliejus''. Gana keista užduotis – daug pradinių duomenų (atskirų kintamųjų), o sprendžiant nereikalingi nei sąlygos, nei ciklo sakiniai😊. Gali išmokyti šabloninio vardų sudarymo.&amp;lt;br&amp;gt;&lt;br /&gt;
U2 – ''Biatlonas''. Vidutinio sunkumo užduotis, reikia suformuoti laiką iš atskirų dalių. &lt;br /&gt;
&lt;br /&gt;
'''2016 metų''' užduotys yra [https://www.nsa.smm.lt/wp-content/uploads/2021/03/6287_IT-VBE-1_2016-GALUTINIS.pdf čia]. U1 sprendimas yra [https://onlinegdb.com/kkU272ZjR čia]. U2 sprendimas yra [https://onlinegdb.com/sd-t4JNr5 čia].&amp;lt;br&amp;gt; &lt;br /&gt;
U1 – ''Kuprinės'' ir U2 – ''Makšta'' yra pačios lengviausios šios serijos užduotys 😊 U1 reikalavimas nenaudoti masyvų, o pakartotinai skaityti failą, priminė 50 metų senumo faktus, kai dėl atminties trūkumo buvo naudojamas tarpinių duomenų kaupimas 🙁 Tuo tarpu U2 įdomi dėl to, kad ji tapo prototipu 2022 metų užduočiai.&lt;br /&gt;
&lt;br /&gt;
'''2013 metų''' užduotys yra [https://www.nsa.smm.lt/wp-content/uploads/2021/03/3679_2013-IT-1-uzd-intern.pdf čia]. U1 sprendimas yra [https://www.onlinegdb.com/znJHu66bk čia]. U2 sprendimas yra [https://www.onlinegdb.com/OXcnIZnId čia].&amp;lt;br&amp;gt; &lt;br /&gt;
U1 – ''Siuntos'' ir U2 – ''Apskritys'' yra nesudėtingos užduotys 😊&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Aptartą programavimą pagal šabloną galima palyginti su krepšinio deriniais - juos žinantys pasiekia geresnių rezultatų nei besiblaškantys. Kadangi visos VBE užduotys yra panašaus pobūdžio, tai siūlomas būdas leidžia pasiekti geresnį rezultatą aiškesnėmis priemonėmis. 😊 &lt;br /&gt;
&lt;br /&gt;
Apskritai kodo peržiūra ir pertvarkymas yra gera mokymosi priemonė! Ją naudoja ir profesionalai, tai vadinamasis refaktoringas https://en.wikipedia.org/wiki/Code_refactoring. Tikimės kad pavyks rasti ir daugiau racionalių sprendimų.  &lt;br /&gt;
&lt;br /&gt;
Savo pastebėjimus apie galimus pagerinimus, netikslumus bei neaiškumus rašykite tiesiog autoriui el. paštu arba komentuokite FB grupės https://www.facebook.com/groups/itvbekonsultacijos/ diskusijose. Radusieji programose klaidų bus apdovanojami: mokytojai – skanėstais, o mokiniai – papildomais balais KTU duomenų struktūrų kurse 😊.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Cpp/Metodika&amp;diff=4460</id>
		<title>Ap/Cpp/Metodika</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Cpp/Metodika&amp;diff=4460"/>
		<updated>2023-02-13T15:22:11Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pasiūlymai IT VBE susitarimams 2021/22 mokslo metams&lt;br /&gt;
Susitarimai turi skatinti mokinių algoritminį mąstymą, kadangi pasiruošimas VBE yra svarbi mokymo dalis. Šiuo metu de facto yra nusistovėję susitarimai ankstesnių VBE pagrindu, dalis jų yra pagrįsti mokymo efektyvumo prasme, pvz. duomenyse nenaudojami lietuviški simboliai su nosinėmis ir varnelėmis ir tai gali toliau likti mokymo ir VBE metu. Kiti jau tampa neaktualūs ir nėra efektyvūs mokymo eigoje.&lt;br /&gt;
&lt;br /&gt;
Aptariant VBE užduotis yra remiamasi NŠA pateikiama informacija https://www.nsa.smm.lt/stebesenos-ir-vertinimo-departamentas/pasiekimu-patikrinimai/brandos-egzaminai/egzaminu-uzduotys/ (opens new window).&lt;br /&gt;
&lt;br /&gt;
==Programavimo vardų susitarimai (Naming conventions)==&lt;br /&gt;
&lt;br /&gt;
Siūlymo argumentai: lig šiol mokyklose nebuvo aiškaus vieningo stiliaus kaip konstruoti įvairių tipų kintamųjų, masyvų, struktūrų funkcijų vardus, todėl kai kurie vertinimo kriterijai yra abstraktūs, kaip &amp;quot;Prasmingai pavadinti kintamieji. Komentuojamos programos dalys, laikomasi rašybos taisyklių&amp;quot;. Susitarimas palengvins mokytojų darbą aiškinant apie programavimo rašymo stilių.&lt;br /&gt;
&lt;br /&gt;
Reikia tiesiog pasirinkti tarp [https://en.wikipedia.org/wiki/Snake_case gyvatėlės_stiliaus] ir [https://en.wikipedia.org/wiki/Camel_case KupraNugarioStiliaus] ir laikytis vardų suteikimo [https://en.wikipedia.org/wiki/Naming_convention_(programming) taisyklių]&lt;br /&gt;
&lt;br /&gt;
==Tekstinius duomenis VBE užduotyse rekomenduojama pateikti skyriklių pagalba==&lt;br /&gt;
&lt;br /&gt;
Reikia atsisakyti vyravusio pozicinio pateikimo. Siūlymo argumentai: naudotas pozicinis teksto pateikimas yra neaktualus duomenų pasikeitimo sistemose, jo programavimui mokiniai turi naudoti senosios C kalbos stiliumi tarpinį char masyvą. Mokymo eigoje veltui gaištamas laikas specifinio šablono įsiminimui. Dar papildomai reikėtų nukirpti baigiamuosius tarpus.&lt;br /&gt;
&lt;br /&gt;
Metodiniai sprendimai: paieškos uždaviniuose reikia naudoti vieną žodį, tuo atveju skyriklis bus tarpas cin &amp;gt;&amp;gt; vardas;. Norint sujungti kelis vardus naudojami taškai, brūkšneliai. Uždaviniuose, kur naudojamos frazės, (pvz. knygos pavadinimas) naudojama getline(cin, pavadinimas, ';') tiesiogiai nurodant skyriklį.&lt;br /&gt;
&lt;br /&gt;
==Sąrašo tipo duomenis rekomenduojama pateikti be perteklinio sąrašo elementų skaičiaus==&lt;br /&gt;
&lt;br /&gt;
Siūlymo argumentai: sąrašo pateikimas be pertekliaus yra natūralus, lengviau suprantama užduoties sąlyga. Elementų skaičiaus pateikimas prieš elementus prieštarauja sprendimo logikai, todėl mokiniams turi kilti klausimas kodėl tą daryti ruošiant duomenis.&lt;br /&gt;
&lt;br /&gt;
Metodiniai sprendimai: kai duomenys pateikiami eilutėmis, naudojamas ciklas while(!cin.eof()) { … }. Kai sąrašo elementai pateikiami vienoje eilutėje, naudojamas while() ciklas, įvertinantis konkrečius skyriklius, tame tarpe ir eilutės pabaigos simbolį '\n'.. Apibendrinti atvejai yra pateikiami plačiau.&lt;br /&gt;
&lt;br /&gt;
==VBE užduotyse reikalavimuose rekomenduojama vector traktuoti kaip masyvo sinonimą==&lt;br /&gt;
&lt;br /&gt;
Siūlymo argumentai: C++ vector tipas faktiškai atitinka dabartinėse programavimo kalbose naudojamą sąrašo sąvoką. Lig šiol mokyklose praktikuojamas masyvas poroje su elementų skaičiumi yra senosios C kalbos palikimas ir metodiškai nenaudotinas, kadangi reikia iš anksto rezervuoti atmintį. Jau daug metų pažangesni mokiniai kelia šį klausimą, neformaliai lyg tai leidžiama vector naudoti, bet gali būti mažinami balai dėl VBE reikalavimų. Naudojant masyvus mokiniai praranda galimybę naudoti foreach tipo ciklus. Pats uždavinių su sąrašais mokymas masyvų pagalba yra nerekomenduojamas programavimo edukologijos specialistų. C++ standartizavimo komitetas rekomenduoja naudoti vektorius vietoj masyvų. Taip pat, rekomenduojama vietoj vektoriaus operator[] naudoti at() metodą, nes jis tikrina ar argumentas yra tinkamame rėžyje. Žiūr.: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p1231r0.pdf (opens new window).&lt;br /&gt;
&lt;br /&gt;
Metodiniai sprendimai: perėjimo metodika nuo masyvų prie vector jau buvo pristata FB mokytojų grupėje pavyzdžių pagalba ir dar bus pateikiama atskirai.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Cpp/Metodika&amp;diff=4459</id>
		<title>Ap/Cpp/Metodika</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Cpp/Metodika&amp;diff=4459"/>
		<updated>2023-02-13T11:10:00Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* VBE užduotyse reikalavimuose rekomenduojama vector traktuoti kaip masyvo sinonimą */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[https://informatikosvbe.lt/pasiulymai/]&lt;br /&gt;
[http://itpamoka.lt/]&lt;br /&gt;
&lt;br /&gt;
Pasiūlymai IT VBE susitarimams 2021/22 mokslo metams&lt;br /&gt;
Susitarimai turi skatinti mokinių algoritminį mąstymą, kadangi pasiruošimas VBE yra svarbi mokymo dalis. Šiuo metu de facto yra nusistovėję susitarimai ankstesnių VBE pagrindu, dalis jų yra pagrįsti mokymo efektyvumo prasme, pvz. duomenyse nenaudojami lietuviški simboliai su nosinėmis ir varnelėmis ir tai gali toliau likti mokymo ir VBE metu. Kiti jau tampa neaktualūs ir nėra efektyvūs mokymo eigoje.&lt;br /&gt;
&lt;br /&gt;
Aptariant VBE užduotis yra remiamasi NŠA pateikiama informacija https://www.nsa.smm.lt/stebesenos-ir-vertinimo-departamentas/pasiekimu-patikrinimai/brandos-egzaminai/egzaminu-uzduotys/ (opens new window).&lt;br /&gt;
&lt;br /&gt;
==Programavimo vardų susitarimai (Naming conventions)==&lt;br /&gt;
&lt;br /&gt;
Siūlymo argumentai: lig šiol mokyklose nebuvo aiškaus vieningo stiliaus kaip konstruoti įvairių tipų kintamųjų, masyvų, struktūrų funkcijų vardus, todėl kai kurie vertinimo kriterijai yra abstraktūs, kaip &amp;quot;Prasmingai pavadinti kintamieji. Komentuojamos programos dalys, laikomasi rašybos taisyklių&amp;quot;. Susitarimas palengvins mokytojų darbą aiškinant apie programavimo rašymo stilių.&lt;br /&gt;
&lt;br /&gt;
Reikia tiesiog pasirinkti tarp [https://en.wikipedia.org/wiki/Snake_case gyvatėlės_stiliaus] ir [https://en.wikipedia.org/wiki/Camel_case KupraNugarioStiliaus] ir laikytis vardų suteikimo [https://en.wikipedia.org/wiki/Naming_convention_(programming) taisyklių]&lt;br /&gt;
&lt;br /&gt;
==Tekstinius duomenis VBE užduotyse rekomenduojama pateikti skyriklių pagalba==&lt;br /&gt;
&lt;br /&gt;
Reikia atsisakyti vyravusio pozicinio pateikimo. Siūlymo argumentai: naudotas pozicinis teksto pateikimas yra neaktualus duomenų pasikeitimo sistemose, jo programavimui mokiniai turi naudoti senosios C kalbos stiliumi tarpinį char masyvą. Mokymo eigoje veltui gaištamas laikas specifinio šablono įsiminimui. Dar papildomai reikėtų nukirpti baigiamuosius tarpus.&lt;br /&gt;
&lt;br /&gt;
Metodiniai sprendimai: paieškos uždaviniuose reikia naudoti vieną žodį, tuo atveju skyriklis bus tarpas cin &amp;gt;&amp;gt; vardas;. Norint sujungti kelis vardus naudojami taškai, brūkšneliai. Uždaviniuose, kur naudojamos frazės, (pvz. knygos pavadinimas) naudojama getline(cin, pavadinimas, ';') tiesiogiai nurodant skyriklį.&lt;br /&gt;
&lt;br /&gt;
==Sąrašo tipo duomenis rekomenduojama pateikti be perteklinio sąrašo elementų skaičiaus==&lt;br /&gt;
&lt;br /&gt;
Siūlymo argumentai: sąrašo pateikimas be pertekliaus yra natūralus, lengviau suprantama užduoties sąlyga. Elementų skaičiaus pateikimas prieš elementus prieštarauja sprendimo logikai, todėl mokiniams turi kilti klausimas kodėl tą daryti ruošiant duomenis.&lt;br /&gt;
&lt;br /&gt;
Metodiniai sprendimai: kai duomenys pateikiami eilutėmis, naudojamas ciklas while(!cin.eof()) { … }. Kai sąrašo elementai pateikiami vienoje eilutėje, naudojamas while() ciklas, įvertinantis konkrečius skyriklius, tame tarpe ir eilutės pabaigos simbolį '\n'.. Apibendrinti atvejai yra pateikiami plačiau.&lt;br /&gt;
&lt;br /&gt;
==VBE užduotyse reikalavimuose rekomenduojama vector traktuoti kaip masyvo sinonimą==&lt;br /&gt;
&lt;br /&gt;
Siūlymo argumentai: C++ vector tipas faktiškai atitinka dabartinėse programavimo kalbose naudojamą sąrašo sąvoką. Lig šiol mokyklose praktikuojamas masyvas poroje su elementų skaičiumi yra senosios C kalbos palikimas ir metodiškai nenaudotinas, kadangi reikia iš anksto rezervuoti atmintį. Jau daug metų pažangesni mokiniai kelia šį klausimą, neformaliai lyg tai leidžiama vector naudoti, bet gali būti mažinami balai dėl VBE reikalavimų. Naudojant masyvus mokiniai praranda galimybę naudoti foreach tipo ciklus. Pats uždavinių su sąrašais mokymas masyvų pagalba yra nerekomenduojamas programavimo edukologijos specialistų. C++ standartizavimo komitetas rekomenduoja naudoti vektorius vietoj masyvų. Taip pat, rekomenduojama vietoj vektoriaus operator[] naudoti at() metodą, nes jis tikrina ar argumentas yra tinkamame rėžyje. Žiūr.: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p1231r0.pdf (opens new window).&lt;br /&gt;
&lt;br /&gt;
Metodiniai sprendimai: perėjimo metodika nuo masyvų prie vector jau buvo pristata FB mokytojų grupėje pavyzdžių pagalba ir dar bus pateikiama atskirai.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Cpp/Metodika&amp;diff=4458</id>
		<title>Ap/Cpp/Metodika</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Cpp/Metodika&amp;diff=4458"/>
		<updated>2023-02-13T11:09:42Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Sąrašo tipo duomenis rekomenduojama pateikti be perteklinio sąrašo elementų skaičiaus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[https://informatikosvbe.lt/pasiulymai/]&lt;br /&gt;
[http://itpamoka.lt/]&lt;br /&gt;
&lt;br /&gt;
Pasiūlymai IT VBE susitarimams 2021/22 mokslo metams&lt;br /&gt;
Susitarimai turi skatinti mokinių algoritminį mąstymą, kadangi pasiruošimas VBE yra svarbi mokymo dalis. Šiuo metu de facto yra nusistovėję susitarimai ankstesnių VBE pagrindu, dalis jų yra pagrįsti mokymo efektyvumo prasme, pvz. duomenyse nenaudojami lietuviški simboliai su nosinėmis ir varnelėmis ir tai gali toliau likti mokymo ir VBE metu. Kiti jau tampa neaktualūs ir nėra efektyvūs mokymo eigoje.&lt;br /&gt;
&lt;br /&gt;
Aptariant VBE užduotis yra remiamasi NŠA pateikiama informacija https://www.nsa.smm.lt/stebesenos-ir-vertinimo-departamentas/pasiekimu-patikrinimai/brandos-egzaminai/egzaminu-uzduotys/ (opens new window).&lt;br /&gt;
&lt;br /&gt;
==Programavimo vardų susitarimai (Naming conventions)==&lt;br /&gt;
&lt;br /&gt;
Siūlymo argumentai: lig šiol mokyklose nebuvo aiškaus vieningo stiliaus kaip konstruoti įvairių tipų kintamųjų, masyvų, struktūrų funkcijų vardus, todėl kai kurie vertinimo kriterijai yra abstraktūs, kaip &amp;quot;Prasmingai pavadinti kintamieji. Komentuojamos programos dalys, laikomasi rašybos taisyklių&amp;quot;. Susitarimas palengvins mokytojų darbą aiškinant apie programavimo rašymo stilių.&lt;br /&gt;
&lt;br /&gt;
Reikia tiesiog pasirinkti tarp [https://en.wikipedia.org/wiki/Snake_case gyvatėlės_stiliaus] ir [https://en.wikipedia.org/wiki/Camel_case KupraNugarioStiliaus] ir laikytis vardų suteikimo [https://en.wikipedia.org/wiki/Naming_convention_(programming) taisyklių]&lt;br /&gt;
&lt;br /&gt;
==Tekstinius duomenis VBE užduotyse rekomenduojama pateikti skyriklių pagalba==&lt;br /&gt;
&lt;br /&gt;
Reikia atsisakyti vyravusio pozicinio pateikimo. Siūlymo argumentai: naudotas pozicinis teksto pateikimas yra neaktualus duomenų pasikeitimo sistemose, jo programavimui mokiniai turi naudoti senosios C kalbos stiliumi tarpinį char masyvą. Mokymo eigoje veltui gaištamas laikas specifinio šablono įsiminimui. Dar papildomai reikėtų nukirpti baigiamuosius tarpus.&lt;br /&gt;
&lt;br /&gt;
Metodiniai sprendimai: paieškos uždaviniuose reikia naudoti vieną žodį, tuo atveju skyriklis bus tarpas cin &amp;gt;&amp;gt; vardas;. Norint sujungti kelis vardus naudojami taškai, brūkšneliai. Uždaviniuose, kur naudojamos frazės, (pvz. knygos pavadinimas) naudojama getline(cin, pavadinimas, ';') tiesiogiai nurodant skyriklį.&lt;br /&gt;
&lt;br /&gt;
==Sąrašo tipo duomenis rekomenduojama pateikti be perteklinio sąrašo elementų skaičiaus==&lt;br /&gt;
&lt;br /&gt;
Siūlymo argumentai: sąrašo pateikimas be pertekliaus yra natūralus, lengviau suprantama užduoties sąlyga. Elementų skaičiaus pateikimas prieš elementus prieštarauja sprendimo logikai, todėl mokiniams turi kilti klausimas kodėl tą daryti ruošiant duomenis.&lt;br /&gt;
&lt;br /&gt;
Metodiniai sprendimai: kai duomenys pateikiami eilutėmis, naudojamas ciklas while(!cin.eof()) { … }. Kai sąrašo elementai pateikiami vienoje eilutėje, naudojamas while() ciklas, įvertinantis konkrečius skyriklius, tame tarpe ir eilutės pabaigos simbolį '\n'.. Apibendrinti atvejai yra pateikiami plačiau.&lt;br /&gt;
&lt;br /&gt;
==VBE užduotyse reikalavimuose rekomenduojama vector traktuoti kaip masyvo sinonimą==&lt;br /&gt;
&lt;br /&gt;
Siūlymo argumentai: C++ vector tipas faktiškai atitinka dabartinėse programavimo kalbose naudojamą sąrašo sąvoką. Lig šiol mokyklose praktikuojamas masyvas poroje su elementų skaičiumi yra senosios C kalbos palikimas ir metodiškai nenaudotinas, kadangi reikia iš anksto rezervuoti atmintį. Jau daug metų pažangesni mokiniai kelia šį klausimą, neformaliai lyg tai leidžiama vector naudoti, bet gali būti mažinami balai dėl VBE reikalavimų. Naudojant masyvus mokiniai praranda galimybę naudoti foreach tipo ciklus. Pats uždavinių su sąrašais mokymas masyvų pagalba yra nerekomenduojamas programavimo edukologijos specialistų. C++ standartizavimo komitetas rekomenduoja naudoti vektorius vietoj masyvų. Taip pat, rekomenduojama vietoj vektoriaus operator[] naudoti at() metodą, nes jis tikrina ar argumentas yra tinkamame rėžyje. Žiūr.: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p1231r0.pdf (opens new window).&lt;br /&gt;
&lt;br /&gt;
Metodiniai sprendimai: perėjimo metodika nuo masyvų prie vector jau buvo pristata FB mokytojų grupėje pavyzdžių pagalba ir dar bus pateikiama atskirai.&lt;br /&gt;
&lt;br /&gt;
Argumentai prieš: vector nenaudojamas oficialiuose LT vadovėliuose.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Cpp/Metodika&amp;diff=4457</id>
		<title>Ap/Cpp/Metodika</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Cpp/Metodika&amp;diff=4457"/>
		<updated>2023-02-13T11:09:20Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Tekstinius duomenis VBE užduotyse rekomenduojama pateikti skyriklių pagalba */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[https://informatikosvbe.lt/pasiulymai/]&lt;br /&gt;
[http://itpamoka.lt/]&lt;br /&gt;
&lt;br /&gt;
Pasiūlymai IT VBE susitarimams 2021/22 mokslo metams&lt;br /&gt;
Susitarimai turi skatinti mokinių algoritminį mąstymą, kadangi pasiruošimas VBE yra svarbi mokymo dalis. Šiuo metu de facto yra nusistovėję susitarimai ankstesnių VBE pagrindu, dalis jų yra pagrįsti mokymo efektyvumo prasme, pvz. duomenyse nenaudojami lietuviški simboliai su nosinėmis ir varnelėmis ir tai gali toliau likti mokymo ir VBE metu. Kiti jau tampa neaktualūs ir nėra efektyvūs mokymo eigoje.&lt;br /&gt;
&lt;br /&gt;
Aptariant VBE užduotis yra remiamasi NŠA pateikiama informacija https://www.nsa.smm.lt/stebesenos-ir-vertinimo-departamentas/pasiekimu-patikrinimai/brandos-egzaminai/egzaminu-uzduotys/ (opens new window).&lt;br /&gt;
&lt;br /&gt;
==Programavimo vardų susitarimai (Naming conventions)==&lt;br /&gt;
&lt;br /&gt;
Siūlymo argumentai: lig šiol mokyklose nebuvo aiškaus vieningo stiliaus kaip konstruoti įvairių tipų kintamųjų, masyvų, struktūrų funkcijų vardus, todėl kai kurie vertinimo kriterijai yra abstraktūs, kaip &amp;quot;Prasmingai pavadinti kintamieji. Komentuojamos programos dalys, laikomasi rašybos taisyklių&amp;quot;. Susitarimas palengvins mokytojų darbą aiškinant apie programavimo rašymo stilių.&lt;br /&gt;
&lt;br /&gt;
Reikia tiesiog pasirinkti tarp [https://en.wikipedia.org/wiki/Snake_case gyvatėlės_stiliaus] ir [https://en.wikipedia.org/wiki/Camel_case KupraNugarioStiliaus] ir laikytis vardų suteikimo [https://en.wikipedia.org/wiki/Naming_convention_(programming) taisyklių]&lt;br /&gt;
&lt;br /&gt;
==Tekstinius duomenis VBE užduotyse rekomenduojama pateikti skyriklių pagalba==&lt;br /&gt;
&lt;br /&gt;
Reikia atsisakyti vyravusio pozicinio pateikimo. Siūlymo argumentai: naudotas pozicinis teksto pateikimas yra neaktualus duomenų pasikeitimo sistemose, jo programavimui mokiniai turi naudoti senosios C kalbos stiliumi tarpinį char masyvą. Mokymo eigoje veltui gaištamas laikas specifinio šablono įsiminimui. Dar papildomai reikėtų nukirpti baigiamuosius tarpus.&lt;br /&gt;
&lt;br /&gt;
Metodiniai sprendimai: paieškos uždaviniuose reikia naudoti vieną žodį, tuo atveju skyriklis bus tarpas cin &amp;gt;&amp;gt; vardas;. Norint sujungti kelis vardus naudojami taškai, brūkšneliai. Uždaviniuose, kur naudojamos frazės, (pvz. knygos pavadinimas) naudojama getline(cin, pavadinimas, ';') tiesiogiai nurodant skyriklį.&lt;br /&gt;
&lt;br /&gt;
==Sąrašo tipo duomenis rekomenduojama pateikti be perteklinio sąrašo elementų skaičiaus==&lt;br /&gt;
&lt;br /&gt;
Siūlymo argumentai: sąrašo pateikimas be pertekliaus yra natūralus, lengviau suprantama užduoties sąlyga. Elementų skaičiaus pateikimas prieš elementus prieštarauja sprendimo logikai, todėl mokiniams turi kilti klausimas kodėl tą daryti ruošiant duomenis.&lt;br /&gt;
&lt;br /&gt;
Metodiniai sprendimai: kai duomenys pateikiami eilutėmis, naudojamas ciklas while(!cin.eof()) { … }. Kai sąrašo elementai pateikiami vienoje eilutėje, naudojamas while() ciklas, įvertinantis konkrečius skyriklius, tame tarpe ir eilutės pabaigos simbolį '\n'.. Apibendrinti atvejai yra pateikiami plačiau.&lt;br /&gt;
&lt;br /&gt;
Argumentai prieš: ...&lt;br /&gt;
&lt;br /&gt;
==VBE užduotyse reikalavimuose rekomenduojama vector traktuoti kaip masyvo sinonimą==&lt;br /&gt;
&lt;br /&gt;
Siūlymo argumentai: C++ vector tipas faktiškai atitinka dabartinėse programavimo kalbose naudojamą sąrašo sąvoką. Lig šiol mokyklose praktikuojamas masyvas poroje su elementų skaičiumi yra senosios C kalbos palikimas ir metodiškai nenaudotinas, kadangi reikia iš anksto rezervuoti atmintį. Jau daug metų pažangesni mokiniai kelia šį klausimą, neformaliai lyg tai leidžiama vector naudoti, bet gali būti mažinami balai dėl VBE reikalavimų. Naudojant masyvus mokiniai praranda galimybę naudoti foreach tipo ciklus. Pats uždavinių su sąrašais mokymas masyvų pagalba yra nerekomenduojamas programavimo edukologijos specialistų. C++ standartizavimo komitetas rekomenduoja naudoti vektorius vietoj masyvų. Taip pat, rekomenduojama vietoj vektoriaus operator[] naudoti at() metodą, nes jis tikrina ar argumentas yra tinkamame rėžyje. Žiūr.: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p1231r0.pdf (opens new window).&lt;br /&gt;
&lt;br /&gt;
Metodiniai sprendimai: perėjimo metodika nuo masyvų prie vector jau buvo pristata FB mokytojų grupėje pavyzdžių pagalba ir dar bus pateikiama atskirai.&lt;br /&gt;
&lt;br /&gt;
Argumentai prieš: vector nenaudojamas oficialiuose LT vadovėliuose.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Cpp/Metodika&amp;diff=4456</id>
		<title>Ap/Cpp/Metodika</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Cpp/Metodika&amp;diff=4456"/>
		<updated>2023-02-13T11:08:36Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[https://informatikosvbe.lt/pasiulymai/]&lt;br /&gt;
[http://itpamoka.lt/]&lt;br /&gt;
&lt;br /&gt;
Pasiūlymai IT VBE susitarimams 2021/22 mokslo metams&lt;br /&gt;
Susitarimai turi skatinti mokinių algoritminį mąstymą, kadangi pasiruošimas VBE yra svarbi mokymo dalis. Šiuo metu de facto yra nusistovėję susitarimai ankstesnių VBE pagrindu, dalis jų yra pagrįsti mokymo efektyvumo prasme, pvz. duomenyse nenaudojami lietuviški simboliai su nosinėmis ir varnelėmis ir tai gali toliau likti mokymo ir VBE metu. Kiti jau tampa neaktualūs ir nėra efektyvūs mokymo eigoje.&lt;br /&gt;
&lt;br /&gt;
Aptariant VBE užduotis yra remiamasi NŠA pateikiama informacija https://www.nsa.smm.lt/stebesenos-ir-vertinimo-departamentas/pasiekimu-patikrinimai/brandos-egzaminai/egzaminu-uzduotys/ (opens new window).&lt;br /&gt;
&lt;br /&gt;
==Programavimo vardų susitarimai (Naming conventions)==&lt;br /&gt;
&lt;br /&gt;
Siūlymo argumentai: lig šiol mokyklose nebuvo aiškaus vieningo stiliaus kaip konstruoti įvairių tipų kintamųjų, masyvų, struktūrų funkcijų vardus, todėl kai kurie vertinimo kriterijai yra abstraktūs, kaip &amp;quot;Prasmingai pavadinti kintamieji. Komentuojamos programos dalys, laikomasi rašybos taisyklių&amp;quot;. Susitarimas palengvins mokytojų darbą aiškinant apie programavimo rašymo stilių.&lt;br /&gt;
&lt;br /&gt;
Reikia tiesiog pasirinkti tarp [https://en.wikipedia.org/wiki/Snake_case gyvatėlės_stiliaus] ir [https://en.wikipedia.org/wiki/Camel_case KupraNugarioStiliaus] ir laikytis vardų suteikimo [https://en.wikipedia.org/wiki/Naming_convention_(programming) taisyklių]&lt;br /&gt;
&lt;br /&gt;
==Tekstinius duomenis VBE užduotyse rekomenduojama pateikti skyriklių pagalba==&lt;br /&gt;
&lt;br /&gt;
Reikia atsisakyti vyravusio pozicinio pateikimo. Siūlymo argumentai: naudotas pozicinis teksto pateikimas yra neaktualus duomenų pasikeitimo sistemose, jo programavimui mokiniai turi naudoti senosios C kalbos stiliumi tarpinį char masyvą. Mokymo eigoje veltui gaištamas laikas specifinio šablono įsiminimui. Dar papildomai reikėtų nukirpti baigiamuosius tarpus.&lt;br /&gt;
&lt;br /&gt;
Metodiniai sprendimai: paieškos uždaviniuose reikia naudoti vieną žodį, tuo atveju skyriklis bus tarpas cin &amp;gt;&amp;gt; vardas;. Norint sujungti kelis vardus naudojami taškai, brūkšneliai. Uždaviniuose, kur naudojamos frazės, (pvz. knygos pavadinimas) naudojama getline(cin, pavadinimas, ';') tiesiogiai nurodant skyriklį.&lt;br /&gt;
&lt;br /&gt;
Argumentai prieš: ...&lt;br /&gt;
&lt;br /&gt;
==Sąrašo tipo duomenis rekomenduojama pateikti be perteklinio sąrašo elementų skaičiaus==&lt;br /&gt;
&lt;br /&gt;
Siūlymo argumentai: sąrašo pateikimas be pertekliaus yra natūralus, lengviau suprantama užduoties sąlyga. Elementų skaičiaus pateikimas prieš elementus prieštarauja sprendimo logikai, todėl mokiniams turi kilti klausimas kodėl tą daryti ruošiant duomenis.&lt;br /&gt;
&lt;br /&gt;
Metodiniai sprendimai: kai duomenys pateikiami eilutėmis, naudojamas ciklas while(!cin.eof()) { … }. Kai sąrašo elementai pateikiami vienoje eilutėje, naudojamas while() ciklas, įvertinantis konkrečius skyriklius, tame tarpe ir eilutės pabaigos simbolį '\n'.. Apibendrinti atvejai yra pateikiami plačiau.&lt;br /&gt;
&lt;br /&gt;
Argumentai prieš: ...&lt;br /&gt;
&lt;br /&gt;
==VBE užduotyse reikalavimuose rekomenduojama vector traktuoti kaip masyvo sinonimą==&lt;br /&gt;
&lt;br /&gt;
Siūlymo argumentai: C++ vector tipas faktiškai atitinka dabartinėse programavimo kalbose naudojamą sąrašo sąvoką. Lig šiol mokyklose praktikuojamas masyvas poroje su elementų skaičiumi yra senosios C kalbos palikimas ir metodiškai nenaudotinas, kadangi reikia iš anksto rezervuoti atmintį. Jau daug metų pažangesni mokiniai kelia šį klausimą, neformaliai lyg tai leidžiama vector naudoti, bet gali būti mažinami balai dėl VBE reikalavimų. Naudojant masyvus mokiniai praranda galimybę naudoti foreach tipo ciklus. Pats uždavinių su sąrašais mokymas masyvų pagalba yra nerekomenduojamas programavimo edukologijos specialistų. C++ standartizavimo komitetas rekomenduoja naudoti vektorius vietoj masyvų. Taip pat, rekomenduojama vietoj vektoriaus operator[] naudoti at() metodą, nes jis tikrina ar argumentas yra tinkamame rėžyje. Žiūr.: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p1231r0.pdf (opens new window).&lt;br /&gt;
&lt;br /&gt;
Metodiniai sprendimai: perėjimo metodika nuo masyvų prie vector jau buvo pristata FB mokytojų grupėje pavyzdžių pagalba ir dar bus pateikiama atskirai.&lt;br /&gt;
&lt;br /&gt;
Argumentai prieš: vector nenaudojamas oficialiuose LT vadovėliuose.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/Formul%C4%97s_tapatyb%C4%97s&amp;diff=4455</id>
		<title>Ap/Py/Formulės tapatybės</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/Formul%C4%97s_tapatyb%C4%97s&amp;diff=4455"/>
		<updated>2023-01-24T12:46:37Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Taikomieji uždaviniai */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3RpC čia]'''&lt;br /&gt;
==Nuo matematikos prie programos==&lt;br /&gt;
Ši tema yra skirta matematinių išraiškų užrašymo Python kalba treniruotėms. Reikia atkreipti dėmesį, kad visose programavimo kalbose išraiškų užrašai skiriasi nuo matematinio teksto: negalima praleisti daugybos veiksmo, nėra šaknies ženklo, negalima rašyti kėlimo laipsniu su ženklais ² ir ³. Atliekant bandymus, mokiniams pateikiamos įvairios matematinės išraiškos, tačiau dažnai lieka neaišku ar gerai skaičiuojama. Todėl mokiniams siūloma nagrinėti pasirinktas tapatybes, kur reikia paskaičiuoti kairę ir dešinę tapatybės puses ir jas sulyginti. Galima naudotis įvairiais šaltiniais, pvz. matematikos VBE užduotimis:&lt;br /&gt;
[[Vaizdas:Matematika1.png|500px|center]]&lt;br /&gt;
[[Vaizdas:Matematika2.png|500px|center]]&lt;br /&gt;
Pradėti geriausia nuo veiksmų su sveikaisiais skaičiais, nuo trumpųjų daugybos [https://www.mat.lt/matematikos-formules/daugybos-formules.html formulių]. Neteisingai atlikus veiksmus gausime pranešimą &amp;quot;blogai&amp;quot;. Būtent toks pranešimas pasirodo pradiniame variante, kadangi kėlimui laipsniu mokiniai dažnai pasirenka ženklą ^ kaip įprasta Excel skaičiuoklėse. Tuo tarpu Python kalboje naudojamas derinys **. Čia mokiniams galima suteikti savarankiškumo, pasirenkant su kokiomis tapatybėmis nori pasitreniruoti. &lt;br /&gt;
&lt;br /&gt;
Reikia atkreipti dėmesį, kad tai '''nėra tapatybių įrodymas''', o tik išraiškų rašymo treniruotė su pranešimais gerai ar blogai. Panaši metodika yra taikoma ir sudėtingų sistemų testavime, kai naujai sukurtos programos rezultatai yra lyginami su išbandytos programos rezultatais.&lt;br /&gt;
==Realūs skaičiai gali būti apytiksliai==&lt;br /&gt;
Jei atliekant veiksmus su sveikais skaičiais '''gauname tikslius atsakymus ir galime naudoti == operaciją''', tai atlikdami veiksmus su '''realiais (float) skaičiais''' (trigonometrijos [https://www.mat.lt/matematikos-formules/trigonometrijos-formules.html tapatybės]) prie kai kurių pradinių reikšmių gauname netikslumus. Jie yra labai nedideli, konkrečiai užrašas '''1.1e-16''' reiškia, kad kablelį reikia perkelti 16 pozicijų į kairę, t.y. gausime skaičių, kur po kablelio bus 15 nulių! Tai yra labai mažas skaičius ir tokia paklaida realiems skaičiavimams visai netrukdo. Išbandykite trigonometrinių funkcijų skaičiavimus su matematikoje dažnai sutinkamomis reikšmėmis 30°, 45°, 60°, 90° ir patikrinkite ar teisingi atsakymai!&lt;br /&gt;
&lt;br /&gt;
Demonstruojant paklaidų eliminavimą realių skaičių atveju naudojama funkcija '''abs()''', kuri reiškia absoliutinį dydį, kadangi nėra žinoma ar gauta reikšmė bus didesnė ar mažesnė už etaloną. Formuojant sąlyginį pranešimą '''&amp;quot;gerai – blogai&amp;quot;''' vietoje sąlyginio if sakinio yra naudojamas ternarinis (trinaris) operatorius, kuris užtikrina paprastesnį užrašymą vienoje eilutėje.&lt;br /&gt;
==Kvadratinė ir kubinė šaknys==&lt;br /&gt;
Dažnai matematiniuose skaičiavimuose tenka traukti kvadratines ar kubines šaknis, todėl siūloma eksperimentuoti su įvairiais užrašymo būdais, tikslu suprasti apie teisingus ar klaidingus variantus.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
# bandome skaičiuoti kvadratinę ir kubinę šaknį&lt;br /&gt;
print(9**1/2, 9**0.5)     # kodėl nesutampa ??&lt;br /&gt;
print(27**(1/3), 27**0.3) # didinkite trejetukų skaičių&lt;br /&gt;
print(sqrt(1234 * 1234))  # turime gauti tą patį skaičių&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==Taikomieji uždaviniai==&lt;br /&gt;
Kai mokame teisingai užrašyti matematine išraiškas, atsiveria plačios galimybės įvairių uždavinių sprendimui, tiek iš matematikos vadovėlių, tiek praktinėse situacijose. Vieną kartą teisingai užrašius matematinę išraišką, ją nesunkiai galima panaudoti, skaičiuojant funkcijos reikšmes prie įvairių argumento reikšmių. Tai yra žymiai prasmingiau nei spaudyti kalkuliatoriaus klavišus, kai tą pačią rutininę procedūrą reikia kartoti kelis kartus. Lyginant su Excel tipo skaičiuoklėmis, išraiškų užrašymas Python kalba yra žymiai paprastesnis ir vaizdingesnis.&lt;br /&gt;
&lt;br /&gt;
Išspręsime 31 uždavinį iš '''Matematika 12, Uždavinynas, Išplėstinis kursas, 2004 (9 psl.)'''&lt;br /&gt;
[[Vaizdas:Matematika12.png|500px|center]]&lt;br /&gt;
[[Vaizdas:Vanduo_verda.png|500px|center]]&lt;br /&gt;
Sprendimas yra paprastas - rašome funkciją, kuri skaičiuoja vandens temperatūros kitimą iki nurodyto pabaigos. Kai teisingai užbaigsite išraišką ir vykdysite programą, pamatysite jog temperatūra kildama pasiekia 100 laipsnių po 20 min. Kadangi pabaigą galima nurodyti pasirinktinai, matome kad vėliau temperatūra pradeda mažėti. Pagal reikšmių lentelę nesunkiai galima atsakyti į užduotyje keliamus klausimus.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def vandens_temp(pabaiga):&lt;br /&gt;
    buvo = 10&lt;br /&gt;
    for t in range(pabaiga):&lt;br /&gt;
        T = -9/40*t # užbaikite šią išraišką pagal vadovėlio užduotį&lt;br /&gt;
        print(f&amp;quot;{t:2} {T:6.2f} {T-buvo:6.2f}&amp;quot;)&lt;br /&gt;
        buvo = T&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Reziumuojant, šią temą galima traktuoti kaip informatikos mokymo medžiagos integravimo su matematika pavyzdį. Reikia pastebėti, kad gana dažnai matematika nėra mėgstama jaunuolių, pasinėrusių į kompiuterines studijas. Todėl šios temos savarankiškumas gal suteiks postūmį atidžiau panagrinėti matematines išraiškas.&lt;br /&gt;
[[Vaizdas:dalyba.jpg|300px|center]]&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/Formul%C4%97s_tapatyb%C4%97s&amp;diff=4454</id>
		<title>Ap/Py/Formulės tapatybės</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/Formul%C4%97s_tapatyb%C4%97s&amp;diff=4454"/>
		<updated>2023-01-24T12:42:37Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Taikomieji uždaviniai */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3RpC čia]'''&lt;br /&gt;
==Nuo matematikos prie programos==&lt;br /&gt;
Ši tema yra skirta matematinių išraiškų užrašymo Python kalba treniruotėms. Reikia atkreipti dėmesį, kad visose programavimo kalbose išraiškų užrašai skiriasi nuo matematinio teksto: negalima praleisti daugybos veiksmo, nėra šaknies ženklo, negalima rašyti kėlimo laipsniu su ženklais ² ir ³. Atliekant bandymus, mokiniams pateikiamos įvairios matematinės išraiškos, tačiau dažnai lieka neaišku ar gerai skaičiuojama. Todėl mokiniams siūloma nagrinėti pasirinktas tapatybes, kur reikia paskaičiuoti kairę ir dešinę tapatybės puses ir jas sulyginti. Galima naudotis įvairiais šaltiniais, pvz. matematikos VBE užduotimis:&lt;br /&gt;
[[Vaizdas:Matematika1.png|500px|center]]&lt;br /&gt;
[[Vaizdas:Matematika2.png|500px|center]]&lt;br /&gt;
Pradėti geriausia nuo veiksmų su sveikaisiais skaičiais, nuo trumpųjų daugybos [https://www.mat.lt/matematikos-formules/daugybos-formules.html formulių]. Neteisingai atlikus veiksmus gausime pranešimą &amp;quot;blogai&amp;quot;. Būtent toks pranešimas pasirodo pradiniame variante, kadangi kėlimui laipsniu mokiniai dažnai pasirenka ženklą ^ kaip įprasta Excel skaičiuoklėse. Tuo tarpu Python kalboje naudojamas derinys **. Čia mokiniams galima suteikti savarankiškumo, pasirenkant su kokiomis tapatybėmis nori pasitreniruoti. &lt;br /&gt;
&lt;br /&gt;
Reikia atkreipti dėmesį, kad tai '''nėra tapatybių įrodymas''', o tik išraiškų rašymo treniruotė su pranešimais gerai ar blogai. Panaši metodika yra taikoma ir sudėtingų sistemų testavime, kai naujai sukurtos programos rezultatai yra lyginami su išbandytos programos rezultatais.&lt;br /&gt;
==Realūs skaičiai gali būti apytiksliai==&lt;br /&gt;
Jei atliekant veiksmus su sveikais skaičiais '''gauname tikslius atsakymus ir galime naudoti == operaciją''', tai atlikdami veiksmus su '''realiais (float) skaičiais''' (trigonometrijos [https://www.mat.lt/matematikos-formules/trigonometrijos-formules.html tapatybės]) prie kai kurių pradinių reikšmių gauname netikslumus. Jie yra labai nedideli, konkrečiai užrašas '''1.1e-16''' reiškia, kad kablelį reikia perkelti 16 pozicijų į kairę, t.y. gausime skaičių, kur po kablelio bus 15 nulių! Tai yra labai mažas skaičius ir tokia paklaida realiems skaičiavimams visai netrukdo. Išbandykite trigonometrinių funkcijų skaičiavimus su matematikoje dažnai sutinkamomis reikšmėmis 30°, 45°, 60°, 90° ir patikrinkite ar teisingi atsakymai!&lt;br /&gt;
&lt;br /&gt;
Demonstruojant paklaidų eliminavimą realių skaičių atveju naudojama funkcija '''abs()''', kuri reiškia absoliutinį dydį, kadangi nėra žinoma ar gauta reikšmė bus didesnė ar mažesnė už etaloną. Formuojant sąlyginį pranešimą '''&amp;quot;gerai – blogai&amp;quot;''' vietoje sąlyginio if sakinio yra naudojamas ternarinis (trinaris) operatorius, kuris užtikrina paprastesnį užrašymą vienoje eilutėje.&lt;br /&gt;
==Kvadratinė ir kubinė šaknys==&lt;br /&gt;
Dažnai matematiniuose skaičiavimuose tenka traukti kvadratines ar kubines šaknis, todėl siūloma eksperimentuoti su įvairiais užrašymo būdais, tikslu suprasti apie teisingus ar klaidingus variantus.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
# bandome skaičiuoti kvadratinę ir kubinę šaknį&lt;br /&gt;
print(9**1/2, 9**0.5)     # kodėl nesutampa ??&lt;br /&gt;
print(27**(1/3), 27**0.3) # didinkite trejetukų skaičių&lt;br /&gt;
print(sqrt(1234 * 1234))  # turime gauti tą patį skaičių&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==Taikomieji uždaviniai==&lt;br /&gt;
Kai mokame teisingai užrašyti matematine išraiškas, atsiveria plačios galimybės įvairių uždavinių sprendimui, tiek iš matematikos vadovėlių, tiek praktinėse situacijose. Vieną kartą teisingai užrašius matematinę išraišką, ją nesunkiai galima panaudoti, skaičiuojant funkcijos reikšmes prie įvairių argumento reikšmių. Tai yra žymiai prasmingiau nei spaudyti kalkuliatoriaus klavišus, kai tą pačią rutininę procedūrą reikia kartoti kelis kartus. Lyginant su Excel tipo skaičiuoklėmis, išraiškų užrašymas Python kalba yra žymiai paprastesnis ir vaizdingesnis.&lt;br /&gt;
&lt;br /&gt;
Išspręsime 31 uždavinį iš '''Matematika 12, Uždavinynas, Išplėstinis kursas, 2004 (9 psl.)'''&lt;br /&gt;
[[Vaizdas:Matematika12.png|500px|center]]&lt;br /&gt;
[[Vaizdas:Vanduo_verda.png|500px|center]]&lt;br /&gt;
Sprendimas yra paprastas - rašome funkciją, kuri skaičiuoja vandens temperatūros kitimą iki nurodyto pabaigos. Kai teisingai užbaigsite išraišką ir vykdysite programą, pamatysite jog temperatūra kildama pasiekia 100 laipsnių po 20 min. Kadangi pabaigą galima nurodyti pasirinktinai, matome kad vėliau temperatūra pradeda mažėti. Pagal reikšmių lentelę nesunkiai galima atsakyti į užduotyje keliamus klausimus.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def vandens_temp(pabaiga):&lt;br /&gt;
    buvo = 10&lt;br /&gt;
    for t in range(pabaiga):&lt;br /&gt;
        T = -9/40*t # užbaikite šią išraišką pagal vadovėlio užduotį&lt;br /&gt;
        print(f&amp;quot;{t:2} {T:6.2f} {T-buvo:6.2f}&amp;quot;)&lt;br /&gt;
        buvo = T&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Reziumuojant šią temą galima traktuoti kaip informatikos mokymo medžiagos integravimo su matematika pavyzdį. Reikia pastebėti, kad gana dažnai matematika nėra mėgstama jaunuolių, pasinėrusių į kompiuterines studijas. Todėl šios temos savarankiškumas gal suteiks postūmį atidžiau panagrinėti matematines išraiškas.&lt;br /&gt;
[[Vaizdas:dalyba.jpg|300px|center]]&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Vaizdas:Dalyba.jpg&amp;diff=4453</id>
		<title>Vaizdas:Dalyba.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Vaizdas:Dalyba.jpg&amp;diff=4453"/>
		<updated>2023-01-24T12:40:45Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/Pamoka_A0&amp;diff=4452</id>
		<title>Ap/Py/Pamoka A0</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/Pamoka_A0&amp;diff=4452"/>
		<updated>2022-09-29T13:33:10Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Spausdinimas su paaiškinimais */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;big&amp;gt;'''&amp;lt;big&amp;gt;Neformali smagi pradžia su Pyjthon&amp;lt;/big&amp;gt;'''&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
''Pilnas šios treniruotės Python kodas [https://www.jdoodle.com/a/4YX9 yra čia]''&lt;br /&gt;
&lt;br /&gt;
== Skaičiuojame ir spausdiname ==&lt;br /&gt;
Šis nedidelis įvadas yra skirtas parodyti, kad skaičiavimai Python kalba yra užrašomi paprastai ir natūraliai, galima iškart pradėti ir džiaugtis rezultatais 🙂.&amp;lt;br&amp;gt;&lt;br /&gt;
Pradedame nuo vienos raidės kintamųjų, kuriems priskiriame skaitines reikšmes. Norint parodyti kintamųjų reikšmes, naudojame spausdinimo komandą &amp;lt;code&amp;gt;print()&amp;lt;/code&amp;gt; ir pamatysime pagrindinių keturių operacijų rezultatus, atskirtus tarpais. Keiskite pradines reikšmes - gausite kitus rezultatus.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
a = 11&lt;br /&gt;
b = 4&lt;br /&gt;
print(a, b)&lt;br /&gt;
print (a+b, a-b, a*b, a/b)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
PATOGU: Eilutės pabaigoje nereikia jokių papildomų kabliataškių, t.y. jie gali būti, bet Python programose (skirtingai nei C++) įprasta jų nerašyti 🙂 juk ir be jų yra aišku.&lt;br /&gt;
&lt;br /&gt;
== Spausdinimas su paaiškinimais ==&lt;br /&gt;
Kai pateikiami skaičiukai, tai dažnai reikia paaiškinti, ką jie reiškia. Tai galima atlikti dviem būdais:&lt;br /&gt;
&lt;br /&gt;
1 - prieš kiekvieną reikšmę pateikiant paaiškinantį tekstą, žiūrėkite pavyzdį:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
a=11; b=4&lt;br /&gt;
print(&amp;quot;a:&amp;quot;, a, &amp;quot;b:&amp;quot;, b)&lt;br /&gt;
print (&amp;quot;a+b:&amp;quot;, a+b, a-b, a*b, a/b)&lt;br /&gt;
# užbaikite paaiškinimus kitoms trims reikšmėms !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
2 - naudodami formatinę eilutę - tai palyginus naujas programavimo kalbų išradimas 🙂:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
a=11; b=4&lt;br /&gt;
print(f&amp;quot;{a=}, {b=}&amp;quot;)&lt;br /&gt;
print (f&amp;quot;Py aritmetika: {a+b=}, {a-b=}, {a*b=}, {a/b=}&amp;quot;)&lt;br /&gt;
# Atsakymas&lt;br /&gt;
a=11, b=4&lt;br /&gt;
Py aritmetika: a+b=15, a-b=7, a*b=44, a/b=2.75&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Taigi formatinėje eilutėje, kuri pradedama f raide, rašomas tekstas, o tarp riestinių skliaustų rašomas kintamasis arba išraiška. Jei dar įrašome lygybės ženklą, tai suformuojamas ir paaiškinantis tekstas. Tarp riestinių skliaustų rašant dvitaškį, galime nurodyti reišmei skirto lauko plotį. Argi ne puiku, trumpai ir aiškiai formuojame atsakymą 🙂. Kadangi formatinė eilutė yra santykinai nauja savybė, tai vykdant programą reikia nustatyti '''Python versiją 3.9.9'''.&lt;br /&gt;
&lt;br /&gt;
Išbandykite dar dvi dalybos operacijas // - sveikoji dalybos dalis, % - dalybos liekana, naudodami tokią Python išraišką &amp;lt;code&amp;gt; print(a//b, a%b) &amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Su sąrašais - paprastai ir aiškiai ==&lt;br /&gt;
&lt;br /&gt;
Parodome kaip reikia formuoti ie analizuoti krepšinio žaidėjų pelnytų taškų sąrašą. Tam sąrašui naudosime prasmingesnį pavadinimą nei viena raidė &amp;lt;code&amp;gt;taškai&amp;lt;/code&amp;gt;. o pačius taškus rašysime tarp laužtinių skliaustų. Tada funkcija &amp;lt;code&amp;gt;sum()&amp;lt;/code&amp;gt; skaičiuos taškų sumą. Tada funkcija &amp;lt;code&amp;gt;len()&amp;lt;/code&amp;gt; skaičiuos sąrašo elementų kiekį ''(len - nuo pilno žodžio length)''.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
taškai = [4, 0,  12, 23, 9, 0, 17]&lt;br /&gt;
viso_taškų = sum(taškai)&lt;br /&gt;
kiek_žaidėjų = len(taškai)&lt;br /&gt;
print(taškai, viso_taškų, kiek_žaidėjų)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Sąrašo peržiūros ciklas ==&lt;br /&gt;
O dabar atliksime truputį sudėtingesnę analizę: skaičiuosime kiek žaidėjų taškų nepelnė ir kiek žaidėjų pelnė dviženklį taškų skaičių, t.y. &amp;gt;= 10. Tuo tikslu panaudosime sąrašo peržiūros ciklą &lt;br /&gt;
&amp;lt;code&amp;gt;for t in taškai:&amp;lt;/code&amp;gt; '''kur taškai''' žymi sąrašą, '''t''' atskirą elementą. Kintamųjų k0 ir k2ž pagalba bus skaičiuojami taškų nepelnusių ir dviženklį pelniusių žaidėjų kiekiai.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
k0, k2ž = 0, 0&lt;br /&gt;
for t in taškai:&lt;br /&gt;
    if t == 0:&lt;br /&gt;
        k0 += 1&lt;br /&gt;
    if t &amp;gt;= 10:&lt;br /&gt;
        k2ž += 1&lt;br /&gt;
print(&amp;quot;Taškų nepelnė:&amp;quot;, k0)&lt;br /&gt;
print(&amp;quot;Dviženklį pelnė:&amp;quot;, k2ž)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Cikle yra du sąlygos tikrinimo sakiniai ir jei sąlyga yra teisinga, skaitikliai yra didinami vienetu.&lt;br /&gt;
&lt;br /&gt;
Pilnas šios treniruotės Python kodas [https://www.jdoodle.com/a/4YX9 yra čia]&lt;br /&gt;
&lt;br /&gt;
Su šiuo kodu galima laisvai eksperimentuoti, pagal šį pavyzdį pabandykite atlikti ir kitus skaičiavimus,  pvz. meteo duomenų sąrašo analizę, kiek kartų temperatūra buvo neigiama ar teigiama.&lt;br /&gt;
&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/Pamoka_A0&amp;diff=4451</id>
		<title>Ap/Py/Pamoka A0</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/Pamoka_A0&amp;diff=4451"/>
		<updated>2022-09-29T13:31:36Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Spausdinimas su paaiškinimais */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;big&amp;gt;'''&amp;lt;big&amp;gt;Neformali smagi pradžia su Pyjthon&amp;lt;/big&amp;gt;'''&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
''Pilnas šios treniruotės Python kodas [https://www.jdoodle.com/a/4YX9 yra čia]''&lt;br /&gt;
&lt;br /&gt;
== Skaičiuojame ir spausdiname ==&lt;br /&gt;
Šis nedidelis įvadas yra skirtas parodyti, kad skaičiavimai Python kalba yra užrašomi paprastai ir natūraliai, galima iškart pradėti ir džiaugtis rezultatais 🙂.&amp;lt;br&amp;gt;&lt;br /&gt;
Pradedame nuo vienos raidės kintamųjų, kuriems priskiriame skaitines reikšmes. Norint parodyti kintamųjų reikšmes, naudojame spausdinimo komandą &amp;lt;code&amp;gt;print()&amp;lt;/code&amp;gt; ir pamatysime pagrindinių keturių operacijų rezultatus, atskirtus tarpais. Keiskite pradines reikšmes - gausite kitus rezultatus.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
a = 11&lt;br /&gt;
b = 4&lt;br /&gt;
print(a, b)&lt;br /&gt;
print (a+b, a-b, a*b, a/b)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
PATOGU: Eilutės pabaigoje nereikia jokių papildomų kabliataškių, t.y. jie gali būti, bet Python programose (skirtingai nei C++) įprasta jų nerašyti 🙂 juk ir be jų yra aišku.&lt;br /&gt;
&lt;br /&gt;
== Spausdinimas su paaiškinimais ==&lt;br /&gt;
Kai pateikiami skaičiukai, tai dažnai reikia paaiškinti, ką jie reiškia. Tai galima atlikti dviem būdais:&lt;br /&gt;
&lt;br /&gt;
1 - prieš kiekvieną reikšmę pateikiant paaiškinantį tekstą, žiūrėkite pavyzdį:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
a=11; b=4&lt;br /&gt;
print(&amp;quot;a:&amp;quot;, a, &amp;quot;b:&amp;quot;, b)&lt;br /&gt;
print (&amp;quot;a+b:&amp;quot;, a+b, a-b, a*b, a/b)&lt;br /&gt;
# užbaikite paaiškinimus kitoms trims reikšmėms !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
2 - naudodami formatinę eilutę - tai palyginus naujas programavimo kalbų išradimas 🙂:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
a=11; b=4&lt;br /&gt;
print(f&amp;quot;{a=}, {b=}&amp;quot;)&lt;br /&gt;
print (f&amp;quot;Py aritmetika: {a+b=}, {a+b=}, {a-b=}, {a*b=}, {a/b=}&amp;quot;)&lt;br /&gt;
# Atsakymas&lt;br /&gt;
a=11, b=4&lt;br /&gt;
Py aritmetika: a+b=15, a+b=15, a-b=7, a*b=44, a/b=2.75&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Taigi formatinėje eilutėje, kuri pradedama f raide, rašomas tekstas, o tarp riestinių skliaustų rašomas kintamasis arba išraiška. Jei dar įrašome lygybės ženklą, tai suformuojamas ir paaiškinantis tekstas. Tarp riestinių skliaustų rašant dvitaškį, galime nurodyti reišmei skirto lauko plotį. Argi ne puiku, trumpai ir aiškiai formuojame atsakymą 🙂. Kadangi formatinė eilutė yra santykinai nauja savybė, tai vykdant programą reikia nustatyti '''Python versiją 3.9.9'''.&lt;br /&gt;
&lt;br /&gt;
Išbandykite dar dvi dalybos operacijas // - sveikoji dalybos dalis, % - dalybos liekana, naudodami tokią Python išraišką &amp;lt;code&amp;gt; print(a//b, a%b) &amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Su sąrašais - paprastai ir aiškiai ==&lt;br /&gt;
&lt;br /&gt;
Parodome kaip reikia formuoti ie analizuoti krepšinio žaidėjų pelnytų taškų sąrašą. Tam sąrašui naudosime prasmingesnį pavadinimą nei viena raidė &amp;lt;code&amp;gt;taškai&amp;lt;/code&amp;gt;. o pačius taškus rašysime tarp laužtinių skliaustų. Tada funkcija &amp;lt;code&amp;gt;sum()&amp;lt;/code&amp;gt; skaičiuos taškų sumą. Tada funkcija &amp;lt;code&amp;gt;len()&amp;lt;/code&amp;gt; skaičiuos sąrašo elementų kiekį ''(len - nuo pilno žodžio length)''.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
taškai = [4, 0,  12, 23, 9, 0, 17]&lt;br /&gt;
viso_taškų = sum(taškai)&lt;br /&gt;
kiek_žaidėjų = len(taškai)&lt;br /&gt;
print(taškai, viso_taškų, kiek_žaidėjų)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Sąrašo peržiūros ciklas ==&lt;br /&gt;
O dabar atliksime truputį sudėtingesnę analizę: skaičiuosime kiek žaidėjų taškų nepelnė ir kiek žaidėjų pelnė dviženklį taškų skaičių, t.y. &amp;gt;= 10. Tuo tikslu panaudosime sąrašo peržiūros ciklą &lt;br /&gt;
&amp;lt;code&amp;gt;for t in taškai:&amp;lt;/code&amp;gt; '''kur taškai''' žymi sąrašą, '''t''' atskirą elementą. Kintamųjų k0 ir k2ž pagalba bus skaičiuojami taškų nepelnusių ir dviženklį pelniusių žaidėjų kiekiai.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
k0, k2ž = 0, 0&lt;br /&gt;
for t in taškai:&lt;br /&gt;
    if t == 0:&lt;br /&gt;
        k0 += 1&lt;br /&gt;
    if t &amp;gt;= 10:&lt;br /&gt;
        k2ž += 1&lt;br /&gt;
print(&amp;quot;Taškų nepelnė:&amp;quot;, k0)&lt;br /&gt;
print(&amp;quot;Dviženklį pelnė:&amp;quot;, k2ž)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Cikle yra du sąlygos tikrinimo sakiniai ir jei sąlyga yra teisinga, skaitikliai yra didinami vienetu.&lt;br /&gt;
&lt;br /&gt;
Pilnas šios treniruotės Python kodas [https://www.jdoodle.com/a/4YX9 yra čia]&lt;br /&gt;
&lt;br /&gt;
Su šiuo kodu galima laisvai eksperimentuoti, pagal šį pavyzdį pabandykite atlikti ir kitus skaičiavimus,  pvz. meteo duomenų sąrašo analizę, kiek kartų temperatūra buvo neigiama ar teigiama.&lt;br /&gt;
&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4450</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4450"/>
		<updated>2022-09-29T10:58:39Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Sąrašas gali būti užrašomas tiesiogiai programoje, elementus išvardijant tarp laužtinių skliaustų. Pažvelkite į šį pavyzdį:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
skaičiai = [11, 8, 10, 6]&lt;br /&gt;
# indeksai   0  1   2  3  -&amp;gt; len=4&lt;br /&gt;
komandos = [&amp;quot;Žalgiris&amp;quot;, &amp;quot;Galiūnas&amp;quot;, &amp;quot;Atletas&amp;quot;, &amp;quot;Vilkai&amp;quot;, &amp;quot;Neptūnas&amp;quot;]&lt;br /&gt;
# indeksai      0           1           2         3         4       -&amp;gt; len=5&lt;br /&gt;
&lt;br /&gt;
def demo_indeksai(sąr):&lt;br /&gt;
    print(&amp;quot;Duota-&amp;gt;&amp;quot;, sąr, &amp;quot;ilgis=&amp;quot;, len(sąr))&lt;br /&gt;
    print(sąr[0], sąr[1], sąr[2])    # pradžia&lt;br /&gt;
    print(sąr[-1], sąr[-2], sąr[-3]) # pabaiga - atvirkščiai&lt;br /&gt;
#=== def end &lt;br /&gt;
demo_indeksai(skaičiai)&lt;br /&gt;
demo_indeksai(komandos)&lt;br /&gt;
demo_indeksai([10, 11, 12, 13, 14, 15, 16])&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai&lt;br /&gt;
Duota-&amp;gt; [11, 8, 10, 6] ilgis= 4&lt;br /&gt;
11 8 10&lt;br /&gt;
6 10 8&lt;br /&gt;
Duota-&amp;gt; ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] ilgis= 5&lt;br /&gt;
Žalgiris Galiūnas Atletas&lt;br /&gt;
Neptūnas Vilkai Atletas&lt;br /&gt;
Duota-&amp;gt; [10, 11, 12, 13, 14, 15, 16] ilgis= 7&lt;br /&gt;
10 11 12&lt;br /&gt;
16 15 14&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Demonstracinė funkcija rodo šias savybes:&lt;br /&gt;
* sąrašą galima spausdinti tiesiogiai kaip vientisą objektą;&lt;br /&gt;
* parodo kaip pasiekiami pirmieji trys elementai.&lt;br /&gt;
* parodo kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą, tai yra naujovė, lyginant su C++ šeimos kalbomis.&lt;br /&gt;
&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos '''len(sąr)''' pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija '''sum(sąr)''' grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą. Todėl jei sąrašo elementai prieš sumavimą yra nežinomo tipo, reikia patikrinti ar jie yra '''int''' tipo. Matome ir kitas naudingas funkcijas, skirtas mažiausių ir didžiausių reikšmių radimui, rikiavimui.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def demo_funkcijos(sąr):&lt;br /&gt;
    print(&amp;quot;visas sąrašas:&amp;quot;, sąr)&lt;br /&gt;
    print(&amp;quot;sąrašo ilgis: &amp;quot;, len(sąr))&lt;br /&gt;
    if isinstance(sąr[0], int):  # sumuoti galima tik skaičius&lt;br /&gt;
        print(&amp;quot;sąrašo suma:  &amp;quot;, sum(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo min:   &amp;quot;, min(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo max:   &amp;quot;, max(sąr))&lt;br /&gt;
    print(&amp;quot;Rikiuotas sąr:&amp;quot;, sorted(sąr))&lt;br /&gt;
    print(&amp;quot;Galutinis sąr:&amp;quot;, sąr, &amp;quot;\n---------&amp;quot;)&lt;br /&gt;
demo_funkcijos(skaičiai)&lt;br /&gt;
demo_funkcijos(komandos)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
visas sąrašas: [11, 8, 10, 6]&lt;br /&gt;
sąrašo ilgis:  4&lt;br /&gt;
sąrašo suma:   35&lt;br /&gt;
sąrašo min:    6&lt;br /&gt;
sąrašo max:    11&lt;br /&gt;
Rikiuotas sąr: [6, 8, 10, 11]&lt;br /&gt;
Galutinis sąr: [11, 8, 10, 6] &lt;br /&gt;
---------&lt;br /&gt;
visas sąrašas: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas']&lt;br /&gt;
sąrašo ilgis:  5&lt;br /&gt;
sąrašo min:    Atletas&lt;br /&gt;
sąrašo max:    Žalgiris&lt;br /&gt;
Rikiuotas sąr: ['Atletas', 'Galiūnas', 'Neptūnas', 'Vilkai', 'Žalgiris']&lt;br /&gt;
Galutinis sąr: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] &lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Analizuojant sąrašus galima naudoti klasikinius ciklus su indeksais, panašiai kaip senosios C kalbos atveju. &amp;lt;br&amp;gt;Naudojant '''for i in range(len(sąr)):''' gausime iteraciją per visus galimus sąrašo indeksus.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def su_indeksais_suma(sąr):&lt;br /&gt;
    print(&amp;quot;Pradinis:&amp;quot;, sąr)&lt;br /&gt;
    suma = 0                  # kaupiama suma&lt;br /&gt;
    for i in range(len(sąr)):&lt;br /&gt;
        suma += sąr[i]        # pridedame eilinį narį&lt;br /&gt;
        print(&amp;quot;sąr[&amp;quot;+str(i)+&amp;quot;]=&amp;quot;, sąr[i], &amp;quot;\t∑=&amp;quot;, suma)&lt;br /&gt;
    print(&amp;quot;Galutinė suma=&amp;quot;, suma)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
skaičiai.append(7)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
Pradinis: [11, 8, 10, 6]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
Galutinė suma= 35&lt;br /&gt;
Pradinis: [11, 8, 10, 6, 7]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
sąr[4]= 7 	∑= 42&lt;br /&gt;
Galutinė suma= 42&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją '''sąr.append(sk)''', kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo pokyčių skaičiavimo funkcijoje.&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas '''for sk in sąr:''' dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba '''for each'''). Panagrinėjus šiuos du atvejus detaliau matyti, kad ''atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti'', todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def be_indeksų_suma(sąr):&lt;br /&gt;
    suma = 0&lt;br /&gt;
    for sk in sąr:&lt;br /&gt;
        suma += sk&lt;br /&gt;
        print(sk, &amp;quot;\t∑=&amp;quot;, suma)&lt;br /&gt;
    print(&amp;quot;Galutinė suma=&amp;quot;, suma)&lt;br /&gt;
be_indeksų_suma(skaičiai)&lt;br /&gt;
skaičiai.append(7)&lt;br /&gt;
be_indeksų_suma(skaičiai)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Rezultatai tokie patys kaip ir su indeksais &amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
===Savarankiškas darbas===&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiama paprasta užduotis:&amp;lt;br&amp;gt;&lt;br /&gt;
DUOTA: krepšinio komandos žaidėjų pelnytų taškų sąrašas&amp;lt;br&amp;gt;&lt;br /&gt;
taškai = [8, 2, 11, 15, 5, 0, 21, 12, 1]&amp;lt;br&amp;gt;&lt;br /&gt;
* parašykite funkciją, kuri pagal surinktus krepšinio rungtynių taškus rastų &lt;br /&gt;
* kiek yra silpnų, vidutinių ir gerų žaidėjų: &lt;br /&gt;
* silpni &amp;lt; 5 tšk, vidutiniai &amp;lt; 12, geri &amp;gt;= 12&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4449</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4449"/>
		<updated>2022-09-29T10:44:28Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Sąrašo analizė su indeksais */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Sąrašas gali būti užrašomas tiesiogiai programoje, elementus išvardijant tarp laužtinių skliaustų. Pažvelkite į šį pavyzdį:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
skaičiai = [11, 8, 10, 6]&lt;br /&gt;
# indeksai   0  1   2  3  -&amp;gt; len=4&lt;br /&gt;
komandos = [&amp;quot;Žalgiris&amp;quot;, &amp;quot;Galiūnas&amp;quot;, &amp;quot;Atletas&amp;quot;, &amp;quot;Vilkai&amp;quot;, &amp;quot;Neptūnas&amp;quot;]&lt;br /&gt;
# indeksai      0           1           2         3         4       -&amp;gt; len=5&lt;br /&gt;
&lt;br /&gt;
def demo_indeksai(sąr):&lt;br /&gt;
    print(&amp;quot;Duota-&amp;gt;&amp;quot;, sąr, &amp;quot;ilgis=&amp;quot;, len(sąr))&lt;br /&gt;
    print(sąr[0], sąr[1], sąr[2])    # pradžia&lt;br /&gt;
    print(sąr[-1], sąr[-2], sąr[-3]) # pabaiga - atvirkščiai&lt;br /&gt;
#=== def end &lt;br /&gt;
demo_indeksai(skaičiai)&lt;br /&gt;
demo_indeksai(komandos)&lt;br /&gt;
demo_indeksai([10, 11, 12, 13, 14, 15, 16])&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai&lt;br /&gt;
Duota-&amp;gt; [11, 8, 10, 6] ilgis= 4&lt;br /&gt;
11 8 10&lt;br /&gt;
6 10 8&lt;br /&gt;
Duota-&amp;gt; ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] ilgis= 5&lt;br /&gt;
Žalgiris Galiūnas Atletas&lt;br /&gt;
Neptūnas Vilkai Atletas&lt;br /&gt;
Duota-&amp;gt; [10, 11, 12, 13, 14, 15, 16] ilgis= 7&lt;br /&gt;
10 11 12&lt;br /&gt;
16 15 14&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Demonstracinė funkcija rodo šias savybes:&lt;br /&gt;
* sąrašą galima spausdinti tiesiogiai kaip vientisą objektą;&lt;br /&gt;
* parodo kaip pasiekiami pirmieji trys elementai.&lt;br /&gt;
* parodo kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą, tai yra naujovė, lyginant su C++ šeimos kalbomis.&lt;br /&gt;
&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos '''len(sąr)''' pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija '''sum(sąr)''' grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą. Todėl jei sąrašo elementai prieš sumavimą yra nežinomo tipo, reikia patikrinti ar jie yra '''int''' tipo. Matome ir kitas naudingas funkcijas, skirtas mažiausių ir didžiausių reikšmių radimui, rikiavimui.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def demo_funkcijos(sąr):&lt;br /&gt;
    print(&amp;quot;visas sąrašas:&amp;quot;, sąr)&lt;br /&gt;
    print(&amp;quot;sąrašo ilgis: &amp;quot;, len(sąr))&lt;br /&gt;
    if isinstance(sąr[0], int):  # sumuoti galima tik skaičius&lt;br /&gt;
        print(&amp;quot;sąrašo suma:  &amp;quot;, sum(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo min:   &amp;quot;, min(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo max:   &amp;quot;, max(sąr))&lt;br /&gt;
    print(&amp;quot;Rikiuotas sąr:&amp;quot;, sorted(sąr))&lt;br /&gt;
    print(&amp;quot;Galutinis sąr:&amp;quot;, sąr, &amp;quot;\n---------&amp;quot;)&lt;br /&gt;
demo_funkcijos(skaičiai)&lt;br /&gt;
demo_funkcijos(komandos)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
visas sąrašas: [11, 8, 10, 6]&lt;br /&gt;
sąrašo ilgis:  4&lt;br /&gt;
sąrašo suma:   35&lt;br /&gt;
sąrašo min:    6&lt;br /&gt;
sąrašo max:    11&lt;br /&gt;
Rikiuotas sąr: [6, 8, 10, 11]&lt;br /&gt;
Galutinis sąr: [11, 8, 10, 6] &lt;br /&gt;
---------&lt;br /&gt;
visas sąrašas: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas']&lt;br /&gt;
sąrašo ilgis:  5&lt;br /&gt;
sąrašo min:    Atletas&lt;br /&gt;
sąrašo max:    Žalgiris&lt;br /&gt;
Rikiuotas sąr: ['Atletas', 'Galiūnas', 'Neptūnas', 'Vilkai', 'Žalgiris']&lt;br /&gt;
Galutinis sąr: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] &lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Analizuojant sąrašus galima naudoti klasikinius ciklus su indeksais, panašiai kaip senosios C kalbos atveju. &amp;lt;br&amp;gt;Naudojant '''for i in range(len(sąr)):''' gausime iteraciją per visus galimus sąrašo indeksus.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def su_indeksais_suma(sąr):&lt;br /&gt;
    print(&amp;quot;Pradinis:&amp;quot;, sąr)&lt;br /&gt;
    suma = 0                  # kaupiama suma&lt;br /&gt;
    for i in range(len(sąr)):&lt;br /&gt;
        suma += sąr[i]        # pridedame eilinį narį&lt;br /&gt;
        print(&amp;quot;sąr[&amp;quot;+str(i)+&amp;quot;]=&amp;quot;, sąr[i], &amp;quot;\t∑=&amp;quot;, suma)&lt;br /&gt;
    print(&amp;quot;Galutinė suma=&amp;quot;, suma)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
skaičiai.append(7)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
Pradinis: [11, 8, 10, 6]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
Galutinė suma= 35&lt;br /&gt;
Pradinis: [11, 8, 10, 6, 7]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
sąr[4]= 7 	∑= 42&lt;br /&gt;
Galutinė suma= 42&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją '''sąr.append(sk)''', kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo pokyčių skaičiavimo funkcijoje.&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas '''for sk in sąr:''' dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba '''for each'''). Panagrinėjus šiuos du atvejus detaliau matyti, kad ''atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti'', todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def be_indeksų_suma(sąr):&lt;br /&gt;
 suma = 0&lt;br /&gt;
 for sk in sąr:&lt;br /&gt;
    suma += sk&lt;br /&gt;
    print(sk, &amp;quot;\t∑=&amp;quot;, suma)&lt;br /&gt;
 print(&amp;quot;Galutinė suma=&amp;quot;, suma)&lt;br /&gt;
be_indeksų_suma(skaičiai)&lt;br /&gt;
skaičiai.append(7)&lt;br /&gt;
be_indeksų_suma(skaičiai)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Rezultatai tokie patys kaip ir su indeksais &amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
===Savarankiškas darbas===&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiama paprasta užduotis:&amp;lt;br&amp;gt;&lt;br /&gt;
DUOTA: krepšinio komandos žaidėjų pelnytų taškų sąrašas&amp;lt;br&amp;gt;&lt;br /&gt;
taškai = [8, 2, 11, 15, 5, 0, 21, 12, 1]&amp;lt;br&amp;gt;&lt;br /&gt;
* parašykite funkciją, kuri pagal surinktus krepšinio rungtynių taškus rastų &lt;br /&gt;
* kiek yra silpnų, vidutinių ir gerų žaidėjų: &lt;br /&gt;
* silpni &amp;lt; 5 tšk, vidutiniai &amp;lt; 12, geri &amp;gt;= 12&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4448</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4448"/>
		<updated>2022-09-29T10:43:15Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Sąrašo analizė be indeksų */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Sąrašas gali būti užrašomas tiesiogiai programoje, elementus išvardijant tarp laužtinių skliaustų. Pažvelkite į šį pavyzdį:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
skaičiai = [11, 8, 10, 6]&lt;br /&gt;
# indeksai   0  1   2  3  -&amp;gt; len=4&lt;br /&gt;
komandos = [&amp;quot;Žalgiris&amp;quot;, &amp;quot;Galiūnas&amp;quot;, &amp;quot;Atletas&amp;quot;, &amp;quot;Vilkai&amp;quot;, &amp;quot;Neptūnas&amp;quot;]&lt;br /&gt;
# indeksai      0           1           2         3         4       -&amp;gt; len=5&lt;br /&gt;
&lt;br /&gt;
def demo_indeksai(sąr):&lt;br /&gt;
    print(&amp;quot;Duota-&amp;gt;&amp;quot;, sąr, &amp;quot;ilgis=&amp;quot;, len(sąr))&lt;br /&gt;
    print(sąr[0], sąr[1], sąr[2])    # pradžia&lt;br /&gt;
    print(sąr[-1], sąr[-2], sąr[-3]) # pabaiga - atvirkščiai&lt;br /&gt;
#=== def end &lt;br /&gt;
demo_indeksai(skaičiai)&lt;br /&gt;
demo_indeksai(komandos)&lt;br /&gt;
demo_indeksai([10, 11, 12, 13, 14, 15, 16])&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai&lt;br /&gt;
Duota-&amp;gt; [11, 8, 10, 6] ilgis= 4&lt;br /&gt;
11 8 10&lt;br /&gt;
6 10 8&lt;br /&gt;
Duota-&amp;gt; ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] ilgis= 5&lt;br /&gt;
Žalgiris Galiūnas Atletas&lt;br /&gt;
Neptūnas Vilkai Atletas&lt;br /&gt;
Duota-&amp;gt; [10, 11, 12, 13, 14, 15, 16] ilgis= 7&lt;br /&gt;
10 11 12&lt;br /&gt;
16 15 14&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Demonstracinė funkcija rodo šias savybes:&lt;br /&gt;
* sąrašą galima spausdinti tiesiogiai kaip vientisą objektą;&lt;br /&gt;
* parodo kaip pasiekiami pirmieji trys elementai.&lt;br /&gt;
* parodo kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą, tai yra naujovė, lyginant su C++ šeimos kalbomis.&lt;br /&gt;
&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos '''len(sąr)''' pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija '''sum(sąr)''' grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą. Todėl jei sąrašo elementai prieš sumavimą yra nežinomo tipo, reikia patikrinti ar jie yra '''int''' tipo. Matome ir kitas naudingas funkcijas, skirtas mažiausių ir didžiausių reikšmių radimui, rikiavimui.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def demo_funkcijos(sąr):&lt;br /&gt;
    print(&amp;quot;visas sąrašas:&amp;quot;, sąr)&lt;br /&gt;
    print(&amp;quot;sąrašo ilgis: &amp;quot;, len(sąr))&lt;br /&gt;
    if isinstance(sąr[0], int):  # sumuoti galima tik skaičius&lt;br /&gt;
        print(&amp;quot;sąrašo suma:  &amp;quot;, sum(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo min:   &amp;quot;, min(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo max:   &amp;quot;, max(sąr))&lt;br /&gt;
    print(&amp;quot;Rikiuotas sąr:&amp;quot;, sorted(sąr))&lt;br /&gt;
    print(&amp;quot;Galutinis sąr:&amp;quot;, sąr, &amp;quot;\n---------&amp;quot;)&lt;br /&gt;
demo_funkcijos(skaičiai)&lt;br /&gt;
demo_funkcijos(komandos)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
visas sąrašas: [11, 8, 10, 6]&lt;br /&gt;
sąrašo ilgis:  4&lt;br /&gt;
sąrašo suma:   35&lt;br /&gt;
sąrašo min:    6&lt;br /&gt;
sąrašo max:    11&lt;br /&gt;
Rikiuotas sąr: [6, 8, 10, 11]&lt;br /&gt;
Galutinis sąr: [11, 8, 10, 6] &lt;br /&gt;
---------&lt;br /&gt;
visas sąrašas: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas']&lt;br /&gt;
sąrašo ilgis:  5&lt;br /&gt;
sąrašo min:    Atletas&lt;br /&gt;
sąrašo max:    Žalgiris&lt;br /&gt;
Rikiuotas sąr: ['Atletas', 'Galiūnas', 'Neptūnas', 'Vilkai', 'Žalgiris']&lt;br /&gt;
Galutinis sąr: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] &lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Analizuojant sąrašus galima naudoti klasikinius ciklus su indeksais, panašiai kaip senosios C kalbos atveju. &amp;lt;br&amp;gt;Naudojant '''for i in range(len(sąr)):''' gausime iteraciją per visus galimus sąrašo indeksus.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def su_indeksais_suma(sąr):&lt;br /&gt;
    print(&amp;quot;Pradinis:&amp;quot;, sąr)&lt;br /&gt;
    suma = 0                  # kaupiama suma&lt;br /&gt;
    for i in range(len(sąr)):&lt;br /&gt;
        suma += sąr[i]        # pridedame eilinį narį&lt;br /&gt;
        print(&amp;quot;sąr[&amp;quot;+str(i)+&amp;quot;]=&amp;quot;, sąr[i], &amp;quot;\t∑=&amp;quot;, suma)&lt;br /&gt;
    print(&amp;quot;Galutinė suma=&amp;quot;, suma)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
skaičiai.append(7)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
Pradinis: [11, 8, 10, 6]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
Galutinė suma= 35&lt;br /&gt;
Pradinis: [11, 8, 10, 6, 7]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
sąr[4]= 7 	∑= 42&lt;br /&gt;
Galutinė suma= 42&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją '''sąr.append(sk)''', kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas '''for sk in sąr:''' dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba '''for each'''). Panagrinėjus šiuos du atvejus detaliau matyti, kad ''atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti'', todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def be_indeksų_suma(sąr):&lt;br /&gt;
 suma = 0&lt;br /&gt;
 for sk in sąr:&lt;br /&gt;
    suma += sk&lt;br /&gt;
    print(sk, &amp;quot;\t∑=&amp;quot;, suma)&lt;br /&gt;
 print(&amp;quot;Galutinė suma=&amp;quot;, suma)&lt;br /&gt;
be_indeksų_suma(skaičiai)&lt;br /&gt;
skaičiai.append(7)&lt;br /&gt;
be_indeksų_suma(skaičiai)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Rezultatai tokie patys kaip ir su indeksais &amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
===Savarankiškas darbas===&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiama paprasta užduotis:&amp;lt;br&amp;gt;&lt;br /&gt;
DUOTA: krepšinio komandos žaidėjų pelnytų taškų sąrašas&amp;lt;br&amp;gt;&lt;br /&gt;
taškai = [8, 2, 11, 15, 5, 0, 21, 12, 1]&amp;lt;br&amp;gt;&lt;br /&gt;
* parašykite funkciją, kuri pagal surinktus krepšinio rungtynių taškus rastų &lt;br /&gt;
* kiek yra silpnų, vidutinių ir gerų žaidėjų: &lt;br /&gt;
* silpni &amp;lt; 5 tšk, vidutiniai &amp;lt; 12, geri &amp;gt;= 12&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4447</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4447"/>
		<updated>2022-09-29T10:42:32Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Sąrašo analizė be indeksų */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Sąrašas gali būti užrašomas tiesiogiai programoje, elementus išvardijant tarp laužtinių skliaustų. Pažvelkite į šį pavyzdį:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
skaičiai = [11, 8, 10, 6]&lt;br /&gt;
# indeksai   0  1   2  3  -&amp;gt; len=4&lt;br /&gt;
komandos = [&amp;quot;Žalgiris&amp;quot;, &amp;quot;Galiūnas&amp;quot;, &amp;quot;Atletas&amp;quot;, &amp;quot;Vilkai&amp;quot;, &amp;quot;Neptūnas&amp;quot;]&lt;br /&gt;
# indeksai      0           1           2         3         4       -&amp;gt; len=5&lt;br /&gt;
&lt;br /&gt;
def demo_indeksai(sąr):&lt;br /&gt;
    print(&amp;quot;Duota-&amp;gt;&amp;quot;, sąr, &amp;quot;ilgis=&amp;quot;, len(sąr))&lt;br /&gt;
    print(sąr[0], sąr[1], sąr[2])    # pradžia&lt;br /&gt;
    print(sąr[-1], sąr[-2], sąr[-3]) # pabaiga - atvirkščiai&lt;br /&gt;
#=== def end &lt;br /&gt;
demo_indeksai(skaičiai)&lt;br /&gt;
demo_indeksai(komandos)&lt;br /&gt;
demo_indeksai([10, 11, 12, 13, 14, 15, 16])&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai&lt;br /&gt;
Duota-&amp;gt; [11, 8, 10, 6] ilgis= 4&lt;br /&gt;
11 8 10&lt;br /&gt;
6 10 8&lt;br /&gt;
Duota-&amp;gt; ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] ilgis= 5&lt;br /&gt;
Žalgiris Galiūnas Atletas&lt;br /&gt;
Neptūnas Vilkai Atletas&lt;br /&gt;
Duota-&amp;gt; [10, 11, 12, 13, 14, 15, 16] ilgis= 7&lt;br /&gt;
10 11 12&lt;br /&gt;
16 15 14&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Demonstracinė funkcija rodo šias savybes:&lt;br /&gt;
* sąrašą galima spausdinti tiesiogiai kaip vientisą objektą;&lt;br /&gt;
* parodo kaip pasiekiami pirmieji trys elementai.&lt;br /&gt;
* parodo kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą, tai yra naujovė, lyginant su C++ šeimos kalbomis.&lt;br /&gt;
&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos '''len(sąr)''' pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija '''sum(sąr)''' grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą. Todėl jei sąrašo elementai prieš sumavimą yra nežinomo tipo, reikia patikrinti ar jie yra '''int''' tipo. Matome ir kitas naudingas funkcijas, skirtas mažiausių ir didžiausių reikšmių radimui, rikiavimui.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def demo_funkcijos(sąr):&lt;br /&gt;
    print(&amp;quot;visas sąrašas:&amp;quot;, sąr)&lt;br /&gt;
    print(&amp;quot;sąrašo ilgis: &amp;quot;, len(sąr))&lt;br /&gt;
    if isinstance(sąr[0], int):  # sumuoti galima tik skaičius&lt;br /&gt;
        print(&amp;quot;sąrašo suma:  &amp;quot;, sum(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo min:   &amp;quot;, min(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo max:   &amp;quot;, max(sąr))&lt;br /&gt;
    print(&amp;quot;Rikiuotas sąr:&amp;quot;, sorted(sąr))&lt;br /&gt;
    print(&amp;quot;Galutinis sąr:&amp;quot;, sąr, &amp;quot;\n---------&amp;quot;)&lt;br /&gt;
demo_funkcijos(skaičiai)&lt;br /&gt;
demo_funkcijos(komandos)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
visas sąrašas: [11, 8, 10, 6]&lt;br /&gt;
sąrašo ilgis:  4&lt;br /&gt;
sąrašo suma:   35&lt;br /&gt;
sąrašo min:    6&lt;br /&gt;
sąrašo max:    11&lt;br /&gt;
Rikiuotas sąr: [6, 8, 10, 11]&lt;br /&gt;
Galutinis sąr: [11, 8, 10, 6] &lt;br /&gt;
---------&lt;br /&gt;
visas sąrašas: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas']&lt;br /&gt;
sąrašo ilgis:  5&lt;br /&gt;
sąrašo min:    Atletas&lt;br /&gt;
sąrašo max:    Žalgiris&lt;br /&gt;
Rikiuotas sąr: ['Atletas', 'Galiūnas', 'Neptūnas', 'Vilkai', 'Žalgiris']&lt;br /&gt;
Galutinis sąr: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] &lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Analizuojant sąrašus galima naudoti klasikinius ciklus su indeksais, panašiai kaip senosios C kalbos atveju. &amp;lt;br&amp;gt;Naudojant '''for i in range(len(sąr)):''' gausime iteraciją per visus galimus sąrašo indeksus.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def su_indeksais_suma(sąr):&lt;br /&gt;
    print(&amp;quot;Pradinis:&amp;quot;, sąr)&lt;br /&gt;
    suma = 0                  # kaupiama suma&lt;br /&gt;
    for i in range(len(sąr)):&lt;br /&gt;
        suma += sąr[i]        # pridedame eilinį narį&lt;br /&gt;
        print(&amp;quot;sąr[&amp;quot;+str(i)+&amp;quot;]=&amp;quot;, sąr[i], &amp;quot;\t∑=&amp;quot;, suma)&lt;br /&gt;
    print(&amp;quot;Galutinė suma=&amp;quot;, suma)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
skaičiai.append(7)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
Pradinis: [11, 8, 10, 6]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
Galutinė suma= 35&lt;br /&gt;
Pradinis: [11, 8, 10, 6, 7]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
sąr[4]= 7 	∑= 42&lt;br /&gt;
Galutinė suma= 42&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją '''sąr.append(sk)''', kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas '''for sk in sąr:''' dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba '''for each'''). Panagrinėjus šiuos du atvejus detaliau matyti, kad ''atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti'', todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def be_indeksų_suma(sąr):&lt;br /&gt;
 suma = 0&lt;br /&gt;
 for sk in sąr:&lt;br /&gt;
    suma += sk&lt;br /&gt;
    print(sk, &amp;quot;\t∑=&amp;quot;, suma)&lt;br /&gt;
 print(&amp;quot;Galutinė suma=&amp;quot;, suma)&lt;br /&gt;
be_indeksų_suma(skaičiai)&lt;br /&gt;
skaičiai.append(7)&lt;br /&gt;
be_indeksų_suma(skaičiai)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Rezultatai tokie patys kaip ir su indeksais &amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiama paprasta užduotis:&amp;lt;br&amp;gt;&lt;br /&gt;
DUOTA: krepšinio komandos žaidėjų pelnytų taškų sąrašas&amp;lt;br&amp;gt;&lt;br /&gt;
taškai = [8, 2, 11, 15, 5, 0, 21, 12, 1]&amp;lt;br&amp;gt;&lt;br /&gt;
* parašykite funkciją, kuri pagal surinktus krepšinio rungtynių taškus rastų &lt;br /&gt;
* kiek yra silpnų, vidutinių ir gerų žaidėjų: &lt;br /&gt;
* silpni &amp;lt; 5 tšk, vidutiniai &amp;lt; 12, geri &amp;gt;= 12&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4446</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4446"/>
		<updated>2022-09-29T09:43:34Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Sąrašo analizė be indeksų */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Sąrašas gali būti užrašomas tiesiogiai programoje, elementus išvardijant tarp laužtinių skliaustų. Pažvelkite į šį pavyzdį:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
skaičiai = [11, 8, 10, 6]&lt;br /&gt;
# indeksai   0  1   2  3  -&amp;gt; len=4&lt;br /&gt;
komandos = [&amp;quot;Žalgiris&amp;quot;, &amp;quot;Galiūnas&amp;quot;, &amp;quot;Atletas&amp;quot;, &amp;quot;Vilkai&amp;quot;, &amp;quot;Neptūnas&amp;quot;]&lt;br /&gt;
# indeksai      0           1           2         3         4       -&amp;gt; len=5&lt;br /&gt;
&lt;br /&gt;
def demo_indeksai(sąr):&lt;br /&gt;
    print(&amp;quot;Duota-&amp;gt;&amp;quot;, sąr, &amp;quot;ilgis=&amp;quot;, len(sąr))&lt;br /&gt;
    print(sąr[0], sąr[1], sąr[2])    # pradžia&lt;br /&gt;
    print(sąr[-1], sąr[-2], sąr[-3]) # pabaiga - atvirkščiai&lt;br /&gt;
#=== def end &lt;br /&gt;
demo_indeksai(skaičiai)&lt;br /&gt;
demo_indeksai(komandos)&lt;br /&gt;
demo_indeksai([10, 11, 12, 13, 14, 15, 16])&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai&lt;br /&gt;
Duota-&amp;gt; [11, 8, 10, 6] ilgis= 4&lt;br /&gt;
11 8 10&lt;br /&gt;
6 10 8&lt;br /&gt;
Duota-&amp;gt; ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] ilgis= 5&lt;br /&gt;
Žalgiris Galiūnas Atletas&lt;br /&gt;
Neptūnas Vilkai Atletas&lt;br /&gt;
Duota-&amp;gt; [10, 11, 12, 13, 14, 15, 16] ilgis= 7&lt;br /&gt;
10 11 12&lt;br /&gt;
16 15 14&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Demonstracinė funkcija rodo šias savybes:&lt;br /&gt;
* sąrašą galima spausdinti tiesiogiai kaip vientisą objektą;&lt;br /&gt;
* parodo kaip pasiekiami pirmieji trys elementai.&lt;br /&gt;
* parodo kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą, tai yra naujovė, lyginant su C++ šeimos kalbomis.&lt;br /&gt;
&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos '''len(sąr)''' pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija '''sum(sąr)''' grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą. Todėl jei sąrašo elementai prieš sumavimą yra nežinomo tipo, reikia patikrinti ar jie yra '''int''' tipo. Matome ir kitas naudingas funkcijas, skirtas mažiausių ir didžiausių reikšmių radimui, rikiavimui.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def demo_funkcijos(sąr):&lt;br /&gt;
    print(&amp;quot;visas sąrašas:&amp;quot;, sąr)&lt;br /&gt;
    print(&amp;quot;sąrašo ilgis: &amp;quot;, len(sąr))&lt;br /&gt;
    if isinstance(sąr[0], int):  # sumuoti galima tik skaičius&lt;br /&gt;
        print(&amp;quot;sąrašo suma:  &amp;quot;, sum(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo min:   &amp;quot;, min(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo max:   &amp;quot;, max(sąr))&lt;br /&gt;
    print(&amp;quot;Rikiuotas sąr:&amp;quot;, sorted(sąr))&lt;br /&gt;
    print(&amp;quot;Galutinis sąr:&amp;quot;, sąr, &amp;quot;\n---------&amp;quot;)&lt;br /&gt;
demo_funkcijos(skaičiai)&lt;br /&gt;
demo_funkcijos(komandos)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
visas sąrašas: [11, 8, 10, 6]&lt;br /&gt;
sąrašo ilgis:  4&lt;br /&gt;
sąrašo suma:   35&lt;br /&gt;
sąrašo min:    6&lt;br /&gt;
sąrašo max:    11&lt;br /&gt;
Rikiuotas sąr: [6, 8, 10, 11]&lt;br /&gt;
Galutinis sąr: [11, 8, 10, 6] &lt;br /&gt;
---------&lt;br /&gt;
visas sąrašas: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas']&lt;br /&gt;
sąrašo ilgis:  5&lt;br /&gt;
sąrašo min:    Atletas&lt;br /&gt;
sąrašo max:    Žalgiris&lt;br /&gt;
Rikiuotas sąr: ['Atletas', 'Galiūnas', 'Neptūnas', 'Vilkai', 'Žalgiris']&lt;br /&gt;
Galutinis sąr: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] &lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Analizuojant sąrašus galima naudoti klasikinius ciklus su indeksais, panašiai kaip senosios C kalbos atveju. &amp;lt;br&amp;gt;Naudojant '''for i in range(len(sąr)):''' gausime iteraciją per visus galimus sąrašo indeksus.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def su_indeksais_suma(sąr):&lt;br /&gt;
    print(&amp;quot;Pradinis:&amp;quot;, sąr)&lt;br /&gt;
    suma = 0                  # kaupiama suma&lt;br /&gt;
    for i in range(len(sąr)):&lt;br /&gt;
        suma += sąr[i]        # pridedame eilinį narį&lt;br /&gt;
        print(&amp;quot;sąr[&amp;quot;+str(i)+&amp;quot;]=&amp;quot;, sąr[i], &amp;quot;\t∑=&amp;quot;, suma)&lt;br /&gt;
    print(&amp;quot;Galutinė suma=&amp;quot;, suma)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
skaičiai.append(7)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
Pradinis: [11, 8, 10, 6]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
Galutinė suma= 35&lt;br /&gt;
Pradinis: [11, 8, 10, 6, 7]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
sąr[4]= 7 	∑= 42&lt;br /&gt;
Galutinė suma= 42&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją '''sąr.append(sk)''', kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas '''for sk in sąr:''' dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba '''for each'''). Panagrinėjus šiuos du atvejus detaliau matyti, kad ''atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti'', todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def be_indeksų_suma(sąr):&lt;br /&gt;
 suma = 0&lt;br /&gt;
 for sk in sąr:&lt;br /&gt;
    suma += sk&lt;br /&gt;
    print(sk, &amp;quot;\t∑=&amp;quot;, suma)&lt;br /&gt;
 print(&amp;quot;Galutinė suma=&amp;quot;, suma)&lt;br /&gt;
be_indeksų_suma(skaičiai)&lt;br /&gt;
skaičiai.append(7)&lt;br /&gt;
be_indeksų_suma(skaičiai)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Rezultatai tokie patys kaip ir su indeksais&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiamos kelios užduotys.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4445</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4445"/>
		<updated>2022-09-29T09:25:54Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Sąrašo analizė su indeksais */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Sąrašas gali būti užrašomas tiesiogiai programoje, elementus išvardijant tarp laužtinių skliaustų. Pažvelkite į šį pavyzdį:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
skaičiai = [11, 8, 10, 6]&lt;br /&gt;
# indeksai   0  1   2  3  -&amp;gt; len=4&lt;br /&gt;
komandos = [&amp;quot;Žalgiris&amp;quot;, &amp;quot;Galiūnas&amp;quot;, &amp;quot;Atletas&amp;quot;, &amp;quot;Vilkai&amp;quot;, &amp;quot;Neptūnas&amp;quot;]&lt;br /&gt;
# indeksai      0           1           2         3         4       -&amp;gt; len=5&lt;br /&gt;
&lt;br /&gt;
def demo_indeksai(sąr):&lt;br /&gt;
    print(&amp;quot;Duota-&amp;gt;&amp;quot;, sąr, &amp;quot;ilgis=&amp;quot;, len(sąr))&lt;br /&gt;
    print(sąr[0], sąr[1], sąr[2])    # pradžia&lt;br /&gt;
    print(sąr[-1], sąr[-2], sąr[-3]) # pabaiga - atvirkščiai&lt;br /&gt;
#=== def end &lt;br /&gt;
demo_indeksai(skaičiai)&lt;br /&gt;
demo_indeksai(komandos)&lt;br /&gt;
demo_indeksai([10, 11, 12, 13, 14, 15, 16])&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai&lt;br /&gt;
Duota-&amp;gt; [11, 8, 10, 6] ilgis= 4&lt;br /&gt;
11 8 10&lt;br /&gt;
6 10 8&lt;br /&gt;
Duota-&amp;gt; ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] ilgis= 5&lt;br /&gt;
Žalgiris Galiūnas Atletas&lt;br /&gt;
Neptūnas Vilkai Atletas&lt;br /&gt;
Duota-&amp;gt; [10, 11, 12, 13, 14, 15, 16] ilgis= 7&lt;br /&gt;
10 11 12&lt;br /&gt;
16 15 14&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Demonstracinė funkcija rodo šias savybes:&lt;br /&gt;
* sąrašą galima spausdinti tiesiogiai kaip vientisą objektą;&lt;br /&gt;
* parodo kaip pasiekiami pirmieji trys elementai.&lt;br /&gt;
* parodo kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą, tai yra naujovė, lyginant su C++ šeimos kalbomis.&lt;br /&gt;
&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos '''len(sąr)''' pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija '''sum(sąr)''' grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą. Todėl jei sąrašo elementai prieš sumavimą yra nežinomo tipo, reikia patikrinti ar jie yra '''int''' tipo. Matome ir kitas naudingas funkcijas, skirtas mažiausių ir didžiausių reikšmių radimui, rikiavimui.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def demo_funkcijos(sąr):&lt;br /&gt;
    print(&amp;quot;visas sąrašas:&amp;quot;, sąr)&lt;br /&gt;
    print(&amp;quot;sąrašo ilgis: &amp;quot;, len(sąr))&lt;br /&gt;
    if isinstance(sąr[0], int):  # sumuoti galima tik skaičius&lt;br /&gt;
        print(&amp;quot;sąrašo suma:  &amp;quot;, sum(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo min:   &amp;quot;, min(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo max:   &amp;quot;, max(sąr))&lt;br /&gt;
    print(&amp;quot;Rikiuotas sąr:&amp;quot;, sorted(sąr))&lt;br /&gt;
    print(&amp;quot;Galutinis sąr:&amp;quot;, sąr, &amp;quot;\n---------&amp;quot;)&lt;br /&gt;
demo_funkcijos(skaičiai)&lt;br /&gt;
demo_funkcijos(komandos)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
visas sąrašas: [11, 8, 10, 6]&lt;br /&gt;
sąrašo ilgis:  4&lt;br /&gt;
sąrašo suma:   35&lt;br /&gt;
sąrašo min:    6&lt;br /&gt;
sąrašo max:    11&lt;br /&gt;
Rikiuotas sąr: [6, 8, 10, 11]&lt;br /&gt;
Galutinis sąr: [11, 8, 10, 6] &lt;br /&gt;
---------&lt;br /&gt;
visas sąrašas: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas']&lt;br /&gt;
sąrašo ilgis:  5&lt;br /&gt;
sąrašo min:    Atletas&lt;br /&gt;
sąrašo max:    Žalgiris&lt;br /&gt;
Rikiuotas sąr: ['Atletas', 'Galiūnas', 'Neptūnas', 'Vilkai', 'Žalgiris']&lt;br /&gt;
Galutinis sąr: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] &lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Analizuojant sąrašus galima naudoti klasikinius ciklus su indeksais, panašiai kaip senosios C kalbos atveju. &amp;lt;br&amp;gt;Naudojant '''for i in range(len(sąr)):''' gausime iteraciją per visus galimus sąrašo indeksus.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def su_indeksais_suma(sąr):&lt;br /&gt;
    print(&amp;quot;Pradinis:&amp;quot;, sąr)&lt;br /&gt;
    suma = 0                  # kaupiama suma&lt;br /&gt;
    for i in range(len(sąr)):&lt;br /&gt;
        suma += sąr[i]        # pridedame eilinį narį&lt;br /&gt;
        print(&amp;quot;sąr[&amp;quot;+str(i)+&amp;quot;]=&amp;quot;, sąr[i], &amp;quot;\t∑=&amp;quot;, suma)&lt;br /&gt;
    print(&amp;quot;Galutinė suma=&amp;quot;, suma)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
skaičiai.append(7)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
Pradinis: [11, 8, 10, 6]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
Galutinė suma= 35&lt;br /&gt;
Pradinis: [11, 8, 10, 6, 7]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
sąr[4]= 7 	∑= 42&lt;br /&gt;
Galutinė suma= 42&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją '''sąr.append(sk)''', kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas '''for sk in sąr:''' dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba '''for each'''). Panagrinėjus šiuos du atvejus detaliau matyti, kad ''atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti'', todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiamos kelios užduotys.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4444</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4444"/>
		<updated>2022-09-29T09:25:04Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Sąrašo analizė su indeksais */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Sąrašas gali būti užrašomas tiesiogiai programoje, elementus išvardijant tarp laužtinių skliaustų. Pažvelkite į šį pavyzdį:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
skaičiai = [11, 8, 10, 6]&lt;br /&gt;
# indeksai   0  1   2  3  -&amp;gt; len=4&lt;br /&gt;
komandos = [&amp;quot;Žalgiris&amp;quot;, &amp;quot;Galiūnas&amp;quot;, &amp;quot;Atletas&amp;quot;, &amp;quot;Vilkai&amp;quot;, &amp;quot;Neptūnas&amp;quot;]&lt;br /&gt;
# indeksai      0           1           2         3         4       -&amp;gt; len=5&lt;br /&gt;
&lt;br /&gt;
def demo_indeksai(sąr):&lt;br /&gt;
    print(&amp;quot;Duota-&amp;gt;&amp;quot;, sąr, &amp;quot;ilgis=&amp;quot;, len(sąr))&lt;br /&gt;
    print(sąr[0], sąr[1], sąr[2])    # pradžia&lt;br /&gt;
    print(sąr[-1], sąr[-2], sąr[-3]) # pabaiga - atvirkščiai&lt;br /&gt;
#=== def end &lt;br /&gt;
demo_indeksai(skaičiai)&lt;br /&gt;
demo_indeksai(komandos)&lt;br /&gt;
demo_indeksai([10, 11, 12, 13, 14, 15, 16])&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai&lt;br /&gt;
Duota-&amp;gt; [11, 8, 10, 6] ilgis= 4&lt;br /&gt;
11 8 10&lt;br /&gt;
6 10 8&lt;br /&gt;
Duota-&amp;gt; ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] ilgis= 5&lt;br /&gt;
Žalgiris Galiūnas Atletas&lt;br /&gt;
Neptūnas Vilkai Atletas&lt;br /&gt;
Duota-&amp;gt; [10, 11, 12, 13, 14, 15, 16] ilgis= 7&lt;br /&gt;
10 11 12&lt;br /&gt;
16 15 14&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Demonstracinė funkcija rodo šias savybes:&lt;br /&gt;
* sąrašą galima spausdinti tiesiogiai kaip vientisą objektą;&lt;br /&gt;
* parodo kaip pasiekiami pirmieji trys elementai.&lt;br /&gt;
* parodo kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą, tai yra naujovė, lyginant su C++ šeimos kalbomis.&lt;br /&gt;
&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos '''len(sąr)''' pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija '''sum(sąr)''' grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą. Todėl jei sąrašo elementai prieš sumavimą yra nežinomo tipo, reikia patikrinti ar jie yra '''int''' tipo. Matome ir kitas naudingas funkcijas, skirtas mažiausių ir didžiausių reikšmių radimui, rikiavimui.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def demo_funkcijos(sąr):&lt;br /&gt;
    print(&amp;quot;visas sąrašas:&amp;quot;, sąr)&lt;br /&gt;
    print(&amp;quot;sąrašo ilgis: &amp;quot;, len(sąr))&lt;br /&gt;
    if isinstance(sąr[0], int):  # sumuoti galima tik skaičius&lt;br /&gt;
        print(&amp;quot;sąrašo suma:  &amp;quot;, sum(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo min:   &amp;quot;, min(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo max:   &amp;quot;, max(sąr))&lt;br /&gt;
    print(&amp;quot;Rikiuotas sąr:&amp;quot;, sorted(sąr))&lt;br /&gt;
    print(&amp;quot;Galutinis sąr:&amp;quot;, sąr, &amp;quot;\n---------&amp;quot;)&lt;br /&gt;
demo_funkcijos(skaičiai)&lt;br /&gt;
demo_funkcijos(komandos)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
visas sąrašas: [11, 8, 10, 6]&lt;br /&gt;
sąrašo ilgis:  4&lt;br /&gt;
sąrašo suma:   35&lt;br /&gt;
sąrašo min:    6&lt;br /&gt;
sąrašo max:    11&lt;br /&gt;
Rikiuotas sąr: [6, 8, 10, 11]&lt;br /&gt;
Galutinis sąr: [11, 8, 10, 6] &lt;br /&gt;
---------&lt;br /&gt;
visas sąrašas: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas']&lt;br /&gt;
sąrašo ilgis:  5&lt;br /&gt;
sąrašo min:    Atletas&lt;br /&gt;
sąrašo max:    Žalgiris&lt;br /&gt;
Rikiuotas sąr: ['Atletas', 'Galiūnas', 'Neptūnas', 'Vilkai', 'Žalgiris']&lt;br /&gt;
Galutinis sąr: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] &lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Analizuojant sąrašus galima naudoti klasikinius ciklus su indeksais, panašiai kaip senosios C kalbos atveju. Naudojant '''for i in range(len(sąr)):''' gausime iteraciją per visus galimus sąrašo indeksus.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def su_indeksais_suma(sąr):&lt;br /&gt;
    print(&amp;quot;Pradinis:&amp;quot;, sąr)&lt;br /&gt;
    suma = 0                  # kaupiama suma&lt;br /&gt;
    for i in range(len(sąr)):&lt;br /&gt;
        suma += sąr[i]        # pridedame eilinį narį&lt;br /&gt;
        print(&amp;quot;sąr[&amp;quot;+str(i)+&amp;quot;]=&amp;quot;, sąr[i], &amp;quot;\t∑=&amp;quot;, suma)&lt;br /&gt;
    print(&amp;quot;Galutinė suma=&amp;quot;, suma)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
skaičiai.append(7)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
Pradinis: [11, 8, 10, 6]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
Galutinė suma= 35&lt;br /&gt;
Pradinis: [11, 8, 10, 6, 7]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
sąr[4]= 7 	∑= 42&lt;br /&gt;
Galutinė suma= 42&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją '''sąr.append(sk)''', kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas '''for sk in sąr:''' dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba '''for each'''). Panagrinėjus šiuos du atvejus detaliau matyti, kad ''atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti'', todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiamos kelios užduotys.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4443</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4443"/>
		<updated>2022-09-29T09:07:15Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Sąrašams skirtos funkcijos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Sąrašas gali būti užrašomas tiesiogiai programoje, elementus išvardijant tarp laužtinių skliaustų. Pažvelkite į šį pavyzdį:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
skaičiai = [11, 8, 10, 6]&lt;br /&gt;
# indeksai   0  1   2  3  -&amp;gt; len=4&lt;br /&gt;
komandos = [&amp;quot;Žalgiris&amp;quot;, &amp;quot;Galiūnas&amp;quot;, &amp;quot;Atletas&amp;quot;, &amp;quot;Vilkai&amp;quot;, &amp;quot;Neptūnas&amp;quot;]&lt;br /&gt;
# indeksai      0           1           2         3         4       -&amp;gt; len=5&lt;br /&gt;
&lt;br /&gt;
def demo_indeksai(sąr):&lt;br /&gt;
    print(&amp;quot;Duota-&amp;gt;&amp;quot;, sąr, &amp;quot;ilgis=&amp;quot;, len(sąr))&lt;br /&gt;
    print(sąr[0], sąr[1], sąr[2])    # pradžia&lt;br /&gt;
    print(sąr[-1], sąr[-2], sąr[-3]) # pabaiga - atvirkščiai&lt;br /&gt;
#=== def end &lt;br /&gt;
demo_indeksai(skaičiai)&lt;br /&gt;
demo_indeksai(komandos)&lt;br /&gt;
demo_indeksai([10, 11, 12, 13, 14, 15, 16])&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai&lt;br /&gt;
Duota-&amp;gt; [11, 8, 10, 6] ilgis= 4&lt;br /&gt;
11 8 10&lt;br /&gt;
6 10 8&lt;br /&gt;
Duota-&amp;gt; ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] ilgis= 5&lt;br /&gt;
Žalgiris Galiūnas Atletas&lt;br /&gt;
Neptūnas Vilkai Atletas&lt;br /&gt;
Duota-&amp;gt; [10, 11, 12, 13, 14, 15, 16] ilgis= 7&lt;br /&gt;
10 11 12&lt;br /&gt;
16 15 14&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Demonstracinė funkcija rodo šias savybes:&lt;br /&gt;
* sąrašą galima spausdinti tiesiogiai kaip vientisą objektą;&lt;br /&gt;
* parodo kaip pasiekiami pirmieji trys elementai.&lt;br /&gt;
* parodo kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą, tai yra naujovė, lyginant su C++ šeimos kalbomis.&lt;br /&gt;
&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos '''len(sąr)''' pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija '''sum(sąr)''' grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą. Todėl jei sąrašo elementai prieš sumavimą yra nežinomo tipo, reikia patikrinti ar jie yra '''int''' tipo. Matome ir kitas naudingas funkcijas, skirtas mažiausių ir didžiausių reikšmių radimui, rikiavimui.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def demo_funkcijos(sąr):&lt;br /&gt;
    print(&amp;quot;visas sąrašas:&amp;quot;, sąr)&lt;br /&gt;
    print(&amp;quot;sąrašo ilgis: &amp;quot;, len(sąr))&lt;br /&gt;
    if isinstance(sąr[0], int):  # sumuoti galima tik skaičius&lt;br /&gt;
        print(&amp;quot;sąrašo suma:  &amp;quot;, sum(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo min:   &amp;quot;, min(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo max:   &amp;quot;, max(sąr))&lt;br /&gt;
    print(&amp;quot;Rikiuotas sąr:&amp;quot;, sorted(sąr))&lt;br /&gt;
    print(&amp;quot;Galutinis sąr:&amp;quot;, sąr, &amp;quot;\n---------&amp;quot;)&lt;br /&gt;
demo_funkcijos(skaičiai)&lt;br /&gt;
demo_funkcijos(komandos)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
visas sąrašas: [11, 8, 10, 6]&lt;br /&gt;
sąrašo ilgis:  4&lt;br /&gt;
sąrašo suma:   35&lt;br /&gt;
sąrašo min:    6&lt;br /&gt;
sąrašo max:    11&lt;br /&gt;
Rikiuotas sąr: [6, 8, 10, 11]&lt;br /&gt;
Galutinis sąr: [11, 8, 10, 6] &lt;br /&gt;
---------&lt;br /&gt;
visas sąrašas: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas']&lt;br /&gt;
sąrašo ilgis:  5&lt;br /&gt;
sąrašo min:    Atletas&lt;br /&gt;
sąrašo max:    Žalgiris&lt;br /&gt;
Rikiuotas sąr: ['Atletas', 'Galiūnas', 'Neptūnas', 'Vilkai', 'Žalgiris']&lt;br /&gt;
Galutinis sąr: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] &lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def su_indeksais_suma(sąr):&lt;br /&gt;
    print(&amp;quot;Pradinis:&amp;quot;, sąr)&lt;br /&gt;
    suma = 0                  # kaupiama suma&lt;br /&gt;
    for i in range(len(sąr)):&lt;br /&gt;
        suma += sąr[i]        # pridedame eilinį narį&lt;br /&gt;
        print(&amp;quot;sąr[&amp;quot;+str(i)+&amp;quot;]=&amp;quot;, sąr[i], &amp;quot;\t∑=&amp;quot;, suma)&lt;br /&gt;
    print(&amp;quot;Galutinė suma=&amp;quot;, suma)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
skaičiai.append(7)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
Pradinis: [11, 8, 10, 6]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
Galutinė suma= 35&lt;br /&gt;
Pradinis: [11, 8, 10, 6, 7]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
sąr[4]= 7 	∑= 42&lt;br /&gt;
Galutinė suma= 42&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją '''sąr.append(sk)''', kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas '''for sk in sąr:''' dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba '''for each'''). Panagrinėjus šiuos du atvejus detaliau matyti, kad ''atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti'', todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiamos kelios užduotys.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4442</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4442"/>
		<updated>2022-09-29T09:05:13Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Sąrašo analizė su indeksais */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Sąrašas gali būti užrašomas tiesiogiai programoje, elementus išvardijant tarp laužtinių skliaustų. Pažvelkite į šį pavyzdį:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
skaičiai = [11, 8, 10, 6]&lt;br /&gt;
# indeksai   0  1   2  3  -&amp;gt; len=4&lt;br /&gt;
komandos = [&amp;quot;Žalgiris&amp;quot;, &amp;quot;Galiūnas&amp;quot;, &amp;quot;Atletas&amp;quot;, &amp;quot;Vilkai&amp;quot;, &amp;quot;Neptūnas&amp;quot;]&lt;br /&gt;
# indeksai      0           1           2         3         4       -&amp;gt; len=5&lt;br /&gt;
&lt;br /&gt;
def demo_indeksai(sąr):&lt;br /&gt;
    print(&amp;quot;Duota-&amp;gt;&amp;quot;, sąr, &amp;quot;ilgis=&amp;quot;, len(sąr))&lt;br /&gt;
    print(sąr[0], sąr[1], sąr[2])    # pradžia&lt;br /&gt;
    print(sąr[-1], sąr[-2], sąr[-3]) # pabaiga - atvirkščiai&lt;br /&gt;
#=== def end &lt;br /&gt;
demo_indeksai(skaičiai)&lt;br /&gt;
demo_indeksai(komandos)&lt;br /&gt;
demo_indeksai([10, 11, 12, 13, 14, 15, 16])&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai&lt;br /&gt;
Duota-&amp;gt; [11, 8, 10, 6] ilgis= 4&lt;br /&gt;
11 8 10&lt;br /&gt;
6 10 8&lt;br /&gt;
Duota-&amp;gt; ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] ilgis= 5&lt;br /&gt;
Žalgiris Galiūnas Atletas&lt;br /&gt;
Neptūnas Vilkai Atletas&lt;br /&gt;
Duota-&amp;gt; [10, 11, 12, 13, 14, 15, 16] ilgis= 7&lt;br /&gt;
10 11 12&lt;br /&gt;
16 15 14&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Demonstracinė funkcija rodo šias savybes:&lt;br /&gt;
* sąrašą galima spausdinti tiesiogiai kaip vientisą objektą;&lt;br /&gt;
* parodo kaip pasiekiami pirmieji trys elementai.&lt;br /&gt;
* parodo kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą, tai yra naujovė, lyginant su C++ šeimos kalbomis.&lt;br /&gt;
&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos '''len(sąr)''' pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija '''sum(sąr)''' grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą. Todėl jei sąrašo elementai yra prieš sumavimą yra nežinomo tipo, reikia patikrinti ar jie yra '''int''' tipo. Matome ir kitas naudingas funkcijas, skirtas mažiausių ir didžiausių reikšmių radimui, rikiavimui.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def demo_funkcijos(sąr):&lt;br /&gt;
    print(&amp;quot;visas sąrašas:&amp;quot;, sąr)&lt;br /&gt;
    print(&amp;quot;sąrašo ilgis: &amp;quot;, len(sąr))&lt;br /&gt;
    if isinstance(sąr[0], int):  # sumuoti galima tik skaičius&lt;br /&gt;
        print(&amp;quot;sąrašo suma:  &amp;quot;, sum(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo min:   &amp;quot;, min(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo max:   &amp;quot;, max(sąr))&lt;br /&gt;
    print(&amp;quot;Rikiuotas sąr:&amp;quot;, sorted(sąr))&lt;br /&gt;
    print(&amp;quot;Galutinis sąr:&amp;quot;, sąr, &amp;quot;\n---------&amp;quot;)&lt;br /&gt;
demo_funkcijos(skaičiai)&lt;br /&gt;
demo_funkcijos(komandos)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
visas sąrašas: [11, 8, 10, 6]&lt;br /&gt;
sąrašo ilgis:  4&lt;br /&gt;
sąrašo suma:   35&lt;br /&gt;
sąrašo min:    6&lt;br /&gt;
sąrašo max:    11&lt;br /&gt;
Rikiuotas sąr: [6, 8, 10, 11]&lt;br /&gt;
Galutinis sąr: [11, 8, 10, 6] &lt;br /&gt;
---------&lt;br /&gt;
visas sąrašas: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas']&lt;br /&gt;
sąrašo ilgis:  5&lt;br /&gt;
sąrašo min:    Atletas&lt;br /&gt;
sąrašo max:    Žalgiris&lt;br /&gt;
Rikiuotas sąr: ['Atletas', 'Galiūnas', 'Neptūnas', 'Vilkai', 'Žalgiris']&lt;br /&gt;
Galutinis sąr: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] &lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def su_indeksais_suma(sąr):&lt;br /&gt;
    print(&amp;quot;Pradinis:&amp;quot;, sąr)&lt;br /&gt;
    suma = 0                  # kaupiama suma&lt;br /&gt;
    for i in range(len(sąr)):&lt;br /&gt;
        suma += sąr[i]        # pridedame eilinį narį&lt;br /&gt;
        print(&amp;quot;sąr[&amp;quot;+str(i)+&amp;quot;]=&amp;quot;, sąr[i], &amp;quot;\t∑=&amp;quot;, suma)&lt;br /&gt;
    print(&amp;quot;Galutinė suma=&amp;quot;, suma)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
skaičiai.append(7)&lt;br /&gt;
su_indeksais_suma(skaičiai)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
Pradinis: [11, 8, 10, 6]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
Galutinė suma= 35&lt;br /&gt;
Pradinis: [11, 8, 10, 6, 7]&lt;br /&gt;
sąr[0]= 11 	∑= 11&lt;br /&gt;
sąr[1]= 8 	∑= 19&lt;br /&gt;
sąr[2]= 10 	∑= 29&lt;br /&gt;
sąr[3]= 6 	∑= 35&lt;br /&gt;
sąr[4]= 7 	∑= 42&lt;br /&gt;
Galutinė suma= 42&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją '''sąr.append(sk)''', kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas '''for sk in sąr:''' dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba '''for each'''). Panagrinėjus šiuos du atvejus detaliau matyti, kad ''atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti'', todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiamos kelios užduotys.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4441</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4441"/>
		<updated>2022-09-29T08:47:09Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Sąrašo analizė be indeksų */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Sąrašas gali būti užrašomas tiesiogiai programoje, elementus išvardijant tarp laužtinių skliaustų. Pažvelkite į šį pavyzdį:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
skaičiai = [11, 8, 10, 6]&lt;br /&gt;
# indeksai   0  1   2  3  -&amp;gt; len=4&lt;br /&gt;
komandos = [&amp;quot;Žalgiris&amp;quot;, &amp;quot;Galiūnas&amp;quot;, &amp;quot;Atletas&amp;quot;, &amp;quot;Vilkai&amp;quot;, &amp;quot;Neptūnas&amp;quot;]&lt;br /&gt;
# indeksai      0           1           2         3         4       -&amp;gt; len=5&lt;br /&gt;
&lt;br /&gt;
def demo_indeksai(sąr):&lt;br /&gt;
    print(&amp;quot;Duota-&amp;gt;&amp;quot;, sąr, &amp;quot;ilgis=&amp;quot;, len(sąr))&lt;br /&gt;
    print(sąr[0], sąr[1], sąr[2])    # pradžia&lt;br /&gt;
    print(sąr[-1], sąr[-2], sąr[-3]) # pabaiga - atvirkščiai&lt;br /&gt;
#=== def end &lt;br /&gt;
demo_indeksai(skaičiai)&lt;br /&gt;
demo_indeksai(komandos)&lt;br /&gt;
demo_indeksai([10, 11, 12, 13, 14, 15, 16])&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai&lt;br /&gt;
Duota-&amp;gt; [11, 8, 10, 6] ilgis= 4&lt;br /&gt;
11 8 10&lt;br /&gt;
6 10 8&lt;br /&gt;
Duota-&amp;gt; ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] ilgis= 5&lt;br /&gt;
Žalgiris Galiūnas Atletas&lt;br /&gt;
Neptūnas Vilkai Atletas&lt;br /&gt;
Duota-&amp;gt; [10, 11, 12, 13, 14, 15, 16] ilgis= 7&lt;br /&gt;
10 11 12&lt;br /&gt;
16 15 14&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Demonstracinė funkcija rodo šias savybes:&lt;br /&gt;
* sąrašą galima spausdinti tiesiogiai kaip vientisą objektą;&lt;br /&gt;
* parodo kaip pasiekiami pirmieji trys elementai.&lt;br /&gt;
* parodo kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą, tai yra naujovė, lyginant su C++ šeimos kalbomis.&lt;br /&gt;
&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos '''len(sąr)''' pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija '''sum(sąr)''' grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą. Todėl jei sąrašo elementai yra prieš sumavimą yra nežinomo tipo, reikia patikrinti ar jie yra '''int''' tipo. Matome ir kitas naudingas funkcijas, skirtas mažiausių ir didžiausių reikšmių radimui, rikiavimui.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def demo_funkcijos(sąr):&lt;br /&gt;
    print(&amp;quot;visas sąrašas:&amp;quot;, sąr)&lt;br /&gt;
    print(&amp;quot;sąrašo ilgis: &amp;quot;, len(sąr))&lt;br /&gt;
    if isinstance(sąr[0], int):  # sumuoti galima tik skaičius&lt;br /&gt;
        print(&amp;quot;sąrašo suma:  &amp;quot;, sum(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo min:   &amp;quot;, min(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo max:   &amp;quot;, max(sąr))&lt;br /&gt;
    print(&amp;quot;Rikiuotas sąr:&amp;quot;, sorted(sąr))&lt;br /&gt;
    print(&amp;quot;Galutinis sąr:&amp;quot;, sąr, &amp;quot;\n---------&amp;quot;)&lt;br /&gt;
demo_funkcijos(skaičiai)&lt;br /&gt;
demo_funkcijos(komandos)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
visas sąrašas: [11, 8, 10, 6]&lt;br /&gt;
sąrašo ilgis:  4&lt;br /&gt;
sąrašo suma:   35&lt;br /&gt;
sąrašo min:    6&lt;br /&gt;
sąrašo max:    11&lt;br /&gt;
Rikiuotas sąr: [6, 8, 10, 11]&lt;br /&gt;
Galutinis sąr: [11, 8, 10, 6] &lt;br /&gt;
---------&lt;br /&gt;
visas sąrašas: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas']&lt;br /&gt;
sąrašo ilgis:  5&lt;br /&gt;
sąrašo min:    Atletas&lt;br /&gt;
sąrašo max:    Žalgiris&lt;br /&gt;
Rikiuotas sąr: ['Atletas', 'Galiūnas', 'Neptūnas', 'Vilkai', 'Žalgiris']&lt;br /&gt;
Galutinis sąr: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] &lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją '''sąr.append(sk)''', kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas '''for sk in sąr:''' dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba '''for each'''). Panagrinėjus šiuos du atvejus detaliau matyti, kad ''atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti'', todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiamos kelios užduotys.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4440</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4440"/>
		<updated>2022-09-29T08:46:03Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Sąrašo analizė su indeksais */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Sąrašas gali būti užrašomas tiesiogiai programoje, elementus išvardijant tarp laužtinių skliaustų. Pažvelkite į šį pavyzdį:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
skaičiai = [11, 8, 10, 6]&lt;br /&gt;
# indeksai   0  1   2  3  -&amp;gt; len=4&lt;br /&gt;
komandos = [&amp;quot;Žalgiris&amp;quot;, &amp;quot;Galiūnas&amp;quot;, &amp;quot;Atletas&amp;quot;, &amp;quot;Vilkai&amp;quot;, &amp;quot;Neptūnas&amp;quot;]&lt;br /&gt;
# indeksai      0           1           2         3         4       -&amp;gt; len=5&lt;br /&gt;
&lt;br /&gt;
def demo_indeksai(sąr):&lt;br /&gt;
    print(&amp;quot;Duota-&amp;gt;&amp;quot;, sąr, &amp;quot;ilgis=&amp;quot;, len(sąr))&lt;br /&gt;
    print(sąr[0], sąr[1], sąr[2])    # pradžia&lt;br /&gt;
    print(sąr[-1], sąr[-2], sąr[-3]) # pabaiga - atvirkščiai&lt;br /&gt;
#=== def end &lt;br /&gt;
demo_indeksai(skaičiai)&lt;br /&gt;
demo_indeksai(komandos)&lt;br /&gt;
demo_indeksai([10, 11, 12, 13, 14, 15, 16])&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai&lt;br /&gt;
Duota-&amp;gt; [11, 8, 10, 6] ilgis= 4&lt;br /&gt;
11 8 10&lt;br /&gt;
6 10 8&lt;br /&gt;
Duota-&amp;gt; ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] ilgis= 5&lt;br /&gt;
Žalgiris Galiūnas Atletas&lt;br /&gt;
Neptūnas Vilkai Atletas&lt;br /&gt;
Duota-&amp;gt; [10, 11, 12, 13, 14, 15, 16] ilgis= 7&lt;br /&gt;
10 11 12&lt;br /&gt;
16 15 14&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Demonstracinė funkcija rodo šias savybes:&lt;br /&gt;
* sąrašą galima spausdinti tiesiogiai kaip vientisą objektą;&lt;br /&gt;
* parodo kaip pasiekiami pirmieji trys elementai.&lt;br /&gt;
* parodo kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą, tai yra naujovė, lyginant su C++ šeimos kalbomis.&lt;br /&gt;
&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos '''len(sąr)''' pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija '''sum(sąr)''' grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą. Todėl jei sąrašo elementai yra prieš sumavimą yra nežinomo tipo, reikia patikrinti ar jie yra '''int''' tipo. Matome ir kitas naudingas funkcijas, skirtas mažiausių ir didžiausių reikšmių radimui, rikiavimui.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def demo_funkcijos(sąr):&lt;br /&gt;
    print(&amp;quot;visas sąrašas:&amp;quot;, sąr)&lt;br /&gt;
    print(&amp;quot;sąrašo ilgis: &amp;quot;, len(sąr))&lt;br /&gt;
    if isinstance(sąr[0], int):  # sumuoti galima tik skaičius&lt;br /&gt;
        print(&amp;quot;sąrašo suma:  &amp;quot;, sum(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo min:   &amp;quot;, min(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo max:   &amp;quot;, max(sąr))&lt;br /&gt;
    print(&amp;quot;Rikiuotas sąr:&amp;quot;, sorted(sąr))&lt;br /&gt;
    print(&amp;quot;Galutinis sąr:&amp;quot;, sąr, &amp;quot;\n---------&amp;quot;)&lt;br /&gt;
demo_funkcijos(skaičiai)&lt;br /&gt;
demo_funkcijos(komandos)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
visas sąrašas: [11, 8, 10, 6]&lt;br /&gt;
sąrašo ilgis:  4&lt;br /&gt;
sąrašo suma:   35&lt;br /&gt;
sąrašo min:    6&lt;br /&gt;
sąrašo max:    11&lt;br /&gt;
Rikiuotas sąr: [6, 8, 10, 11]&lt;br /&gt;
Galutinis sąr: [11, 8, 10, 6] &lt;br /&gt;
---------&lt;br /&gt;
visas sąrašas: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas']&lt;br /&gt;
sąrašo ilgis:  5&lt;br /&gt;
sąrašo min:    Atletas&lt;br /&gt;
sąrašo max:    Žalgiris&lt;br /&gt;
Rikiuotas sąr: ['Atletas', 'Galiūnas', 'Neptūnas', 'Vilkai', 'Žalgiris']&lt;br /&gt;
Galutinis sąr: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] &lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją '''sąr.append(sk)''', kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas for sk in sąr: dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba for each). Panagrinėjus šiuos du atvejus detaliau matyti, kad atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti, todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiamos kelios užduotys.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4439</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4439"/>
		<updated>2022-09-29T08:44:16Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Sąrašams skirtos funkcijos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Sąrašas gali būti užrašomas tiesiogiai programoje, elementus išvardijant tarp laužtinių skliaustų. Pažvelkite į šį pavyzdį:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
skaičiai = [11, 8, 10, 6]&lt;br /&gt;
# indeksai   0  1   2  3  -&amp;gt; len=4&lt;br /&gt;
komandos = [&amp;quot;Žalgiris&amp;quot;, &amp;quot;Galiūnas&amp;quot;, &amp;quot;Atletas&amp;quot;, &amp;quot;Vilkai&amp;quot;, &amp;quot;Neptūnas&amp;quot;]&lt;br /&gt;
# indeksai      0           1           2         3         4       -&amp;gt; len=5&lt;br /&gt;
&lt;br /&gt;
def demo_indeksai(sąr):&lt;br /&gt;
    print(&amp;quot;Duota-&amp;gt;&amp;quot;, sąr, &amp;quot;ilgis=&amp;quot;, len(sąr))&lt;br /&gt;
    print(sąr[0], sąr[1], sąr[2])    # pradžia&lt;br /&gt;
    print(sąr[-1], sąr[-2], sąr[-3]) # pabaiga - atvirkščiai&lt;br /&gt;
#=== def end &lt;br /&gt;
demo_indeksai(skaičiai)&lt;br /&gt;
demo_indeksai(komandos)&lt;br /&gt;
demo_indeksai([10, 11, 12, 13, 14, 15, 16])&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai&lt;br /&gt;
Duota-&amp;gt; [11, 8, 10, 6] ilgis= 4&lt;br /&gt;
11 8 10&lt;br /&gt;
6 10 8&lt;br /&gt;
Duota-&amp;gt; ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] ilgis= 5&lt;br /&gt;
Žalgiris Galiūnas Atletas&lt;br /&gt;
Neptūnas Vilkai Atletas&lt;br /&gt;
Duota-&amp;gt; [10, 11, 12, 13, 14, 15, 16] ilgis= 7&lt;br /&gt;
10 11 12&lt;br /&gt;
16 15 14&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Demonstracinė funkcija rodo šias savybes:&lt;br /&gt;
* sąrašą galima spausdinti tiesiogiai kaip vientisą objektą;&lt;br /&gt;
* parodo kaip pasiekiami pirmieji trys elementai.&lt;br /&gt;
* parodo kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą, tai yra naujovė, lyginant su C++ šeimos kalbomis.&lt;br /&gt;
&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos '''len(sąr)''' pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija '''sum(sąr)''' grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą. Todėl jei sąrašo elementai yra prieš sumavimą yra nežinomo tipo, reikia patikrinti ar jie yra '''int''' tipo. Matome ir kitas naudingas funkcijas, skirtas mažiausių ir didžiausių reikšmių radimui, rikiavimui.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def demo_funkcijos(sąr):&lt;br /&gt;
    print(&amp;quot;visas sąrašas:&amp;quot;, sąr)&lt;br /&gt;
    print(&amp;quot;sąrašo ilgis: &amp;quot;, len(sąr))&lt;br /&gt;
    if isinstance(sąr[0], int):  # sumuoti galima tik skaičius&lt;br /&gt;
        print(&amp;quot;sąrašo suma:  &amp;quot;, sum(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo min:   &amp;quot;, min(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo max:   &amp;quot;, max(sąr))&lt;br /&gt;
    print(&amp;quot;Rikiuotas sąr:&amp;quot;, sorted(sąr))&lt;br /&gt;
    print(&amp;quot;Galutinis sąr:&amp;quot;, sąr, &amp;quot;\n---------&amp;quot;)&lt;br /&gt;
demo_funkcijos(skaičiai)&lt;br /&gt;
demo_funkcijos(komandos)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
visas sąrašas: [11, 8, 10, 6]&lt;br /&gt;
sąrašo ilgis:  4&lt;br /&gt;
sąrašo suma:   35&lt;br /&gt;
sąrašo min:    6&lt;br /&gt;
sąrašo max:    11&lt;br /&gt;
Rikiuotas sąr: [6, 8, 10, 11]&lt;br /&gt;
Galutinis sąr: [11, 8, 10, 6] &lt;br /&gt;
---------&lt;br /&gt;
visas sąrašas: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas']&lt;br /&gt;
sąrašo ilgis:  5&lt;br /&gt;
sąrašo min:    Atletas&lt;br /&gt;
sąrašo max:    Žalgiris&lt;br /&gt;
Rikiuotas sąr: ['Atletas', 'Galiūnas', 'Neptūnas', 'Vilkai', 'Žalgiris']&lt;br /&gt;
Galutinis sąr: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] &lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją sąr.append(sk), kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas for sk in sąr: dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba for each). Panagrinėjus šiuos du atvejus detaliau matyti, kad atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti, todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiamos kelios užduotys.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4438</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4438"/>
		<updated>2022-09-29T08:39:04Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Sąrašams skirtos funkcijos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Sąrašas gali būti užrašomas tiesiogiai programoje, elementus išvardijant tarp laužtinių skliaustų. Pažvelkite į šį pavyzdį:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
skaičiai = [11, 8, 10, 6]&lt;br /&gt;
# indeksai   0  1   2  3  -&amp;gt; len=4&lt;br /&gt;
komandos = [&amp;quot;Žalgiris&amp;quot;, &amp;quot;Galiūnas&amp;quot;, &amp;quot;Atletas&amp;quot;, &amp;quot;Vilkai&amp;quot;, &amp;quot;Neptūnas&amp;quot;]&lt;br /&gt;
# indeksai      0           1           2         3         4       -&amp;gt; len=5&lt;br /&gt;
&lt;br /&gt;
def demo_indeksai(sąr):&lt;br /&gt;
    print(&amp;quot;Duota-&amp;gt;&amp;quot;, sąr, &amp;quot;ilgis=&amp;quot;, len(sąr))&lt;br /&gt;
    print(sąr[0], sąr[1], sąr[2])    # pradžia&lt;br /&gt;
    print(sąr[-1], sąr[-2], sąr[-3]) # pabaiga - atvirkščiai&lt;br /&gt;
#=== def end &lt;br /&gt;
demo_indeksai(skaičiai)&lt;br /&gt;
demo_indeksai(komandos)&lt;br /&gt;
demo_indeksai([10, 11, 12, 13, 14, 15, 16])&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai&lt;br /&gt;
Duota-&amp;gt; [11, 8, 10, 6] ilgis= 4&lt;br /&gt;
11 8 10&lt;br /&gt;
6 10 8&lt;br /&gt;
Duota-&amp;gt; ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] ilgis= 5&lt;br /&gt;
Žalgiris Galiūnas Atletas&lt;br /&gt;
Neptūnas Vilkai Atletas&lt;br /&gt;
Duota-&amp;gt; [10, 11, 12, 13, 14, 15, 16] ilgis= 7&lt;br /&gt;
10 11 12&lt;br /&gt;
16 15 14&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Demonstracinė funkcija rodo šias savybes:&lt;br /&gt;
* sąrašą galima spausdinti tiesiogiai kaip vientisą objektą;&lt;br /&gt;
* parodo kaip pasiekiami pirmieji trys elementai.&lt;br /&gt;
* parodo kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą, tai yra naujovė, lyginant su C++ šeimos kalbomis.&lt;br /&gt;
&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos len(sąr) pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija sum(sąr) grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def demo_funkcijos(sąr):&lt;br /&gt;
    print(&amp;quot;visas sąrašas:&amp;quot;, sąr)&lt;br /&gt;
    print(&amp;quot;sąrašo ilgis: &amp;quot;, len(sąr))&lt;br /&gt;
    if isinstance(sąr[0], int):  # sumuoti galima tik skaičius&lt;br /&gt;
        print(&amp;quot;sąrašo suma:  &amp;quot;, sum(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo min:   &amp;quot;, min(sąr))&lt;br /&gt;
    print(&amp;quot;sąrašo max:   &amp;quot;, max(sąr))&lt;br /&gt;
    print(&amp;quot;Rikiuotas sąr:&amp;quot;, sorted(sąr))&lt;br /&gt;
    print(&amp;quot;Galutinis sąr:&amp;quot;, sąr, &amp;quot;\n---------&amp;quot;)&lt;br /&gt;
demo_funkcijos(skaičiai)&lt;br /&gt;
demo_funkcijos(komandos)&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai:&lt;br /&gt;
visas sąrašas: [11, 8, 10, 6]&lt;br /&gt;
sąrašo ilgis:  4&lt;br /&gt;
sąrašo suma:   35&lt;br /&gt;
sąrašo min:    6&lt;br /&gt;
sąrašo max:    11&lt;br /&gt;
Rikiuotas sąr: [6, 8, 10, 11]&lt;br /&gt;
Galutinis sąr: [11, 8, 10, 6] &lt;br /&gt;
---------&lt;br /&gt;
visas sąrašas: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas']&lt;br /&gt;
sąrašo ilgis:  5&lt;br /&gt;
sąrašo min:    Atletas&lt;br /&gt;
sąrašo max:    Žalgiris&lt;br /&gt;
Rikiuotas sąr: ['Atletas', 'Galiūnas', 'Neptūnas', 'Vilkai', 'Žalgiris']&lt;br /&gt;
Galutinis sąr: ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] &lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją sąr.append(sk), kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas for sk in sąr: dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba for each). Panagrinėjus šiuos du atvejus detaliau matyti, kad atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti, todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiamos kelios užduotys.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4437</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4437"/>
		<updated>2022-09-29T08:19:05Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Sąrašai yra indeksuojami */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Sąrašas gali būti užrašomas tiesiogiai programoje, elementus išvardijant tarp laužtinių skliaustų. Pažvelkite į šį pavyzdį:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
skaičiai = [11, 8, 10, 6]&lt;br /&gt;
# indeksai   0  1   2  3  -&amp;gt; len=4&lt;br /&gt;
komandos = [&amp;quot;Žalgiris&amp;quot;, &amp;quot;Galiūnas&amp;quot;, &amp;quot;Atletas&amp;quot;, &amp;quot;Vilkai&amp;quot;, &amp;quot;Neptūnas&amp;quot;]&lt;br /&gt;
# indeksai      0           1           2         3         4       -&amp;gt; len=5&lt;br /&gt;
&lt;br /&gt;
def demo_indeksai(sąr):&lt;br /&gt;
    print(&amp;quot;Duota-&amp;gt;&amp;quot;, sąr, &amp;quot;ilgis=&amp;quot;, len(sąr))&lt;br /&gt;
    print(sąr[0], sąr[1], sąr[2])    # pradžia&lt;br /&gt;
    print(sąr[-1], sąr[-2], sąr[-3]) # pabaiga - atvirkščiai&lt;br /&gt;
#=== def end &lt;br /&gt;
demo_indeksai(skaičiai)&lt;br /&gt;
demo_indeksai(komandos)&lt;br /&gt;
demo_indeksai([10, 11, 12, 13, 14, 15, 16])&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai&lt;br /&gt;
Duota-&amp;gt; [11, 8, 10, 6] ilgis= 4&lt;br /&gt;
11 8 10&lt;br /&gt;
6 10 8&lt;br /&gt;
Duota-&amp;gt; ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] ilgis= 5&lt;br /&gt;
Žalgiris Galiūnas Atletas&lt;br /&gt;
Neptūnas Vilkai Atletas&lt;br /&gt;
Duota-&amp;gt; [10, 11, 12, 13, 14, 15, 16] ilgis= 7&lt;br /&gt;
10 11 12&lt;br /&gt;
16 15 14&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Demonstracinė funkcija rodo šias savybes:&lt;br /&gt;
* sąrašą galima spausdinti tiesiogiai kaip vientisą objektą;&lt;br /&gt;
* parodo kaip pasiekiami pirmieji trys elementai.&lt;br /&gt;
* parodo kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą, tai yra naujovė, lyginant su C++ šeimos kalbomis.&lt;br /&gt;
&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos len(sąr) pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija sum(sąr) grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą.&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją sąr.append(sk), kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas for sk in sąr: dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba for each). Panagrinėjus šiuos du atvejus detaliau matyti, kad atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti, todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiamos kelios užduotys.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4436</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4436"/>
		<updated>2022-09-29T08:17:45Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Sąrašai yra indeksuojami */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Sąrašas gali būti užrašomas tiesiogiai programoje, elementus išvardijant tarp laužtinių skliaustų. Pažvelkite į šį pavyzdį:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
skaičiai = [11, 8, 10, 6]&lt;br /&gt;
# indeksai   0  1   2  3  -&amp;gt; len=4&lt;br /&gt;
komandos = [&amp;quot;Žalgiris&amp;quot;, &amp;quot;Galiūnas&amp;quot;, &amp;quot;Atletas&amp;quot;, &amp;quot;Vilkai&amp;quot;, &amp;quot;Neptūnas&amp;quot;]&lt;br /&gt;
# indeksai      0           1           2         3         4       -&amp;gt; len=5&lt;br /&gt;
&lt;br /&gt;
def demo_indeksai(sąr):&lt;br /&gt;
    print(&amp;quot;Duota-&amp;gt;&amp;quot;, sąr, &amp;quot;ilgis=&amp;quot;, len(sąr))&lt;br /&gt;
    print(sąr[0], sąr[1], sąr[2])    # pradžia&lt;br /&gt;
    print(sąr[-1], sąr[-2], sąr[-3]) # pabaiga - atvirkščiai&lt;br /&gt;
#=== def end &lt;br /&gt;
demo_indeksai(skaičiai)&lt;br /&gt;
demo_indeksai(komandos)&lt;br /&gt;
demo_indeksai([10, 11, 12, 13, 14, 15, 16])&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai&lt;br /&gt;
Duota-&amp;gt; [11, 8, 10, 6] ilgis= 4&lt;br /&gt;
11 8 10&lt;br /&gt;
6 10 8&lt;br /&gt;
Duota-&amp;gt; ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] ilgis= 5&lt;br /&gt;
Žalgiris Galiūnas Atletas&lt;br /&gt;
Neptūnas Vilkai Atletas&lt;br /&gt;
Duota-&amp;gt; [10, 11, 12, 13, 14, 15, 16] ilgis= 7&lt;br /&gt;
10 11 12&lt;br /&gt;
16 15 14&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Demonstracinė funkcija rodo šias pagrindines savybes:&lt;br /&gt;
 1 sąrašą galima spausdinti tiesiogiai kaip vientisą objektą;&lt;br /&gt;
 2 parodo kaip pasiekiami pirmieji trys elementai.&lt;br /&gt;
 3 parodo kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą, tai yra naujovė, lyginant su C++ šeimos kalbomis.&lt;br /&gt;
&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos len(sąr) pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija sum(sąr) grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą.&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją sąr.append(sk), kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas for sk in sąr: dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba for each). Panagrinėjus šiuos du atvejus detaliau matyti, kad atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti, todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiamos kelios užduotys.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4435</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4435"/>
		<updated>2022-09-29T08:02:01Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Sąrašai yra indeksuojami */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Naujovė, lyginant su C++ šeimos kalbomis, yra tai, kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
skaičiai = [11, 8, 10, 6]&lt;br /&gt;
# indeksai   0  1   2  3  -&amp;gt; len=4&lt;br /&gt;
komandos = [&amp;quot;Žalgiris&amp;quot;, &amp;quot;Galiūnas&amp;quot;, &amp;quot;Atletas&amp;quot;, &amp;quot;Vilkai&amp;quot;, &amp;quot;Neptūnas&amp;quot;]&lt;br /&gt;
# indeksai      0           1           2         3         4       -&amp;gt; len=5&lt;br /&gt;
&lt;br /&gt;
def demo_indeksai(sąr):&lt;br /&gt;
    print(&amp;quot;Duota-&amp;gt;&amp;quot;, sąr, &amp;quot;ilgis=&amp;quot;, len(sąr))&lt;br /&gt;
    print(sąr[0], sąr[1], sąr[2])    # pradžia&lt;br /&gt;
    print(sąr[-1], sąr[-2], sąr[-3]) # pabaiga - atvirkščiai&lt;br /&gt;
#=== def end &lt;br /&gt;
demo_indeksai(skaičiai)&lt;br /&gt;
demo_indeksai(komandos)&lt;br /&gt;
demo_indeksai([10, 11, 12, 13, 14, 15, 16])&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Gaunami rezultatai&lt;br /&gt;
Duota-&amp;gt; [11, 8, 10, 6] ilgis= 4&lt;br /&gt;
11 8 10&lt;br /&gt;
6 10 8&lt;br /&gt;
Duota-&amp;gt; ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] ilgis= 5&lt;br /&gt;
Žalgiris Galiūnas Atletas&lt;br /&gt;
Neptūnas Vilkai Atletas&lt;br /&gt;
Duota-&amp;gt; [10, 11, 12, 13, 14, 15, 16] ilgis= 7&lt;br /&gt;
10 11 12&lt;br /&gt;
16 15 14&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos len(sąr) pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija sum(sąr) grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą.&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją sąr.append(sk), kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas for sk in sąr: dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba for each). Panagrinėjus šiuos du atvejus detaliau matyti, kad atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti, todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiamos kelios užduotys.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4434</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4434"/>
		<updated>2022-09-29T08:00:57Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Sąrašai yra indeksuojami */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Naujovė, lyginant su C++ šeimos kalbomis, yra tai, kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
skaičiai = [11, 8, 10, 6]&lt;br /&gt;
# indeksai   0  1   2  3  -&amp;gt; len=4&lt;br /&gt;
komandos = [&amp;quot;Žalgiris&amp;quot;, &amp;quot;Galiūnas&amp;quot;, &amp;quot;Atletas&amp;quot;, &amp;quot;Vilkai&amp;quot;, &amp;quot;Neptūnas&amp;quot;]&lt;br /&gt;
# indeksai      0           1           2         3         4       -&amp;gt; len=5&lt;br /&gt;
&lt;br /&gt;
def demo_indeksai(sąr):&lt;br /&gt;
    print(&amp;quot;Duota-&amp;gt;&amp;quot;, sąr, &amp;quot;ilgis=&amp;quot;, len(sąr))&lt;br /&gt;
    print(sąr[0], sąr[1], sąr[2])    # pradžia&lt;br /&gt;
    print(sąr[-1], sąr[-2], sąr[-3]) # pabaiga - atvirkščiai&lt;br /&gt;
#=== def end &lt;br /&gt;
demo_indeksai(skaičiai)&lt;br /&gt;
demo_indeksai(komandos)&lt;br /&gt;
demo_indeksai([10, 11, 12, 13, 14, 15, 16])&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot; Rezultatai&lt;br /&gt;
Duota-&amp;gt; [11, 8, 10, 6] ilgis= 4&lt;br /&gt;
11 8 10&lt;br /&gt;
6 10 8&lt;br /&gt;
Duota-&amp;gt; ['Žalgiris', 'Galiūnas', 'Atletas', 'Vilkai', 'Neptūnas'] ilgis= 5&lt;br /&gt;
Žalgiris Galiūnas Atletas&lt;br /&gt;
Neptūnas Vilkai Atletas&lt;br /&gt;
Duota-&amp;gt; [10, 11, 12, 13, 14, 15, 16] ilgis= 7&lt;br /&gt;
10 11 12&lt;br /&gt;
16 15 14&lt;br /&gt;
&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos len(sąr) pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija sum(sąr) grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą.&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją sąr.append(sk), kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas for sk in sąr: dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba for each). Panagrinėjus šiuos du atvejus detaliau matyti, kad atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti, todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiamos kelios užduotys.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Pvz&amp;diff=4433</id>
		<title>Ap/Pvz</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Pvz&amp;diff=4433"/>
		<updated>2022-09-29T06:19:07Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Ciklai kol==&lt;br /&gt;
Šiame skyriuje susipažinsi su ciklu &amp;lt;code&amp;gt;while&amp;lt;/code&amp;gt;(liet. kol). &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
a = 0&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Expression - reiškinys False - Melas Feature - ypatybė&lt;br /&gt;
&lt;br /&gt;
== Begaliniai ciklai ==&lt;br /&gt;
Dabar, kai jau išsiaiškinome, kas yra ciklas &amp;lt;code&amp;gt;while&amp;lt;/code&amp;gt;, pasižiūrėkime kaip atrodo niekada nesibaigiantys ciklai, kaip kad ir šis.&lt;br /&gt;
&lt;br /&gt;
== Fibonačio skaičių seka ==&lt;br /&gt;
Fibonačio skaičių seka – sveikųjų skaičių seka. Seka prasideda šiais skaičiais: 0, 1, 1, 2.&lt;br /&gt;
Expression - reiškinys&lt;br /&gt;
False - Melas&lt;br /&gt;
&lt;br /&gt;
== Begaliniai ciklai2 ==&lt;br /&gt;
Dabar, kai jau išsiaiškinome, kas yra ciklas &amp;lt;code&amp;gt;while&amp;lt;/code&amp;gt;, pasižiūrėkime kaip atrodo niekada nesibaigiantys ciklai, kaip kad ir šis. Expression - reiškinys&lt;br /&gt;
&lt;br /&gt;
Edukologijos tyrimai rodo, kad mokymasis yra efektyvesnis, kai&lt;br /&gt;
studentai aktyviai dalyvauja [3,8]. Perdavimas į vieną pusę&lt;br /&gt;
žinios paskaitose lemia prastą mokymąsi. Van der Vleuten&lt;br /&gt;
[13] cituoja JAV mokslininką Balesą, vaizduojantį santykius&lt;br /&gt;
tarp aktyvaus studentų įsitraukimo ir išlaikymo&lt;br /&gt;
atitinkamos žinios piramidės pavidalu (žr. 1 pav.)&lt;br /&gt;
Akivaizdu, kad efektyvi mokymosi aplinka turėtų skatinti&lt;br /&gt;
mokiniai patys ieško informacijos, o ne turi&lt;br /&gt;
jie gauna pasyviai iš anksto apdorotą informaciją. Apie&lt;br /&gt;
Žinoma, tai priklauso nuo konkrečios situacijos, kaip geriausia užsiimti&lt;br /&gt;
studentai. Nepaisant to, tokios edukacinės sąvokos kaip „atradimas“.&lt;br /&gt;
mokymasis“, „mokymasis darant“. „mokymasis patirtimi“ ir „studentas“.&lt;br /&gt;
sutelktas mokymasis“ siūlo išnaudoti tokias žmogaus savybes kaip smalsumas,&lt;br /&gt;
iššūkis ir apsisprendimas [9].&lt;br /&gt;
&lt;br /&gt;
The Same But Different&lt;br /&gt;
Students’ Understandings of Primitive and Object Variables&lt;br /&gt;
Juha Sorva&lt;br /&gt;
Department of Computer Science and Engineering&lt;br /&gt;
Helsinki University of Technology&lt;br /&gt;
Espoo, Finland&lt;br /&gt;
jsorva@cs.hut.fi&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Pvz&amp;diff=4432</id>
		<title>Ap/Pvz</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Pvz&amp;diff=4432"/>
		<updated>2022-09-27T06:00:56Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Begaliniai ciklai2 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Ciklai kol==&lt;br /&gt;
Šiame skyriuje susipažinsi su ciklu &amp;lt;code&amp;gt;while&amp;lt;/code&amp;gt;(liet. kol). &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
a = 0&lt;br /&gt;
# Python program for implementation of MergeSort&lt;br /&gt;
# https://www.geeksforgeeks.org/merge-sort/&lt;br /&gt;
def mergeSort(arr):&lt;br /&gt;
⎧ if len(arr) &amp;lt; 2: return&lt;br /&gt;
⎪ mid = len(arr)//2  # Finding the mid of the array&lt;br /&gt;
⎪ L = arr[:mid]      # Dividing the array elements&lt;br /&gt;
⎪ R = arr[mid:]      # into 2 halves&lt;br /&gt;
⎪ &lt;br /&gt;
⎪ mergeSort(L)       # Sorting the first half &lt;br /&gt;
⎪ mergeSort(R)       # Sorting the second half&lt;br /&gt;
⎪ &lt;br /&gt;
⎪ i = j = k = 0&lt;br /&gt;
⎪ # Copy data to temp arrays L[] and R[]&lt;br /&gt;
⎪ while i &amp;lt; len(L) and j &amp;lt; len(R):&lt;br /&gt;
⎪ ⎧ if L[i] &amp;lt;= R[j]:&lt;br /&gt;
⎪ ⎪ ⎧ arr[k] = L[i]&lt;br /&gt;
⎪ ⎪ ⎩ i += 1&lt;br /&gt;
⎪ ⎪ else:&lt;br /&gt;
⎪ ⎪ ⎧ arr[k] = R[j]&lt;br /&gt;
⎪ ⎪ ⎪ j += 1&lt;br /&gt;
⎪ ⎩ ⎩ k += 1&lt;br /&gt;
⎪ &lt;br /&gt;
⎪ # Checking if any element was left&lt;br /&gt;
⎪ while i &amp;lt; len(L):&lt;br /&gt;
⎪ ⎧ arr[k] = L[i]&lt;br /&gt;
⎪ ⎪ i += 1&lt;br /&gt;
⎪ ⎩ k += 1&lt;br /&gt;
⎪ while j &amp;lt; len(R):&lt;br /&gt;
⎪ ⎧ arr[k] = R[j]&lt;br /&gt;
⎪ ⎪ j += 1&lt;br /&gt;
⎩ ⎩ k += 1&lt;br /&gt;
 &lt;br /&gt;
# Code to print the list&lt;br /&gt;
def printList(arr):&lt;br /&gt;
⎧ for i in range(len(arr)):&lt;br /&gt;
⎪ ⎩ print(arr[i], end=&amp;quot; &amp;quot;)&lt;br /&gt;
⎩ print()&lt;br /&gt;
  &lt;br /&gt;
# Driver Code&lt;br /&gt;
if __name__ == '__main__':&lt;br /&gt;
⎧ arr = [12, 11, 13, 5, 6, 7, 15, 14, 2, 17]&lt;br /&gt;
⎪ print(&amp;quot;Given array is&amp;quot;, end=&amp;quot;\n&amp;quot;)&lt;br /&gt;
⎪ printList(arr)&lt;br /&gt;
⎪ mergeSort(arr)&lt;br /&gt;
⎪ print(&amp;quot;Sorted array is: &amp;quot;, end=&amp;quot;\n&amp;quot;)&lt;br /&gt;
⎩ printList(arr)&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Expression - reiškinys False - Melas Feature - ypatybė&lt;br /&gt;
&lt;br /&gt;
== Begaliniai ciklai ==&lt;br /&gt;
Dabar, kai jau išsiaiškinome, kas yra ciklas &amp;lt;code&amp;gt;while&amp;lt;/code&amp;gt;, pasižiūrėkime kaip atrodo niekada nesibaigiantys ciklai, kaip kad ir šis.&lt;br /&gt;
&lt;br /&gt;
== Fibonačio skaičių seka ==&lt;br /&gt;
Fibonačio skaičių seka – sveikųjų skaičių seka. Seka prasideda šiais skaičiais: 0, 1, 1, 2.&lt;br /&gt;
Expression - reiškinys&lt;br /&gt;
False - Melas&lt;br /&gt;
&lt;br /&gt;
== Begaliniai ciklai2 ==&lt;br /&gt;
Dabar, kai jau išsiaiškinome, kas yra ciklas &amp;lt;code&amp;gt;while&amp;lt;/code&amp;gt;, pasižiūrėkime kaip atrodo niekada nesibaigiantys ciklai, kaip kad ir šis. Expression - reiškinys&lt;br /&gt;
&lt;br /&gt;
Edukologijos tyrimai rodo, kad mokymasis yra efektyvesnis, kai&lt;br /&gt;
studentai aktyviai dalyvauja [3,8]. Perdavimas į vieną pusę&lt;br /&gt;
žinios paskaitose lemia prastą mokymąsi. Van der Vleuten&lt;br /&gt;
[13] cituoja JAV mokslininką Balesą, vaizduojantį santykius&lt;br /&gt;
tarp aktyvaus studentų įsitraukimo ir išlaikymo&lt;br /&gt;
atitinkamos žinios piramidės pavidalu (žr. 1 pav.)&lt;br /&gt;
Akivaizdu, kad efektyvi mokymosi aplinka turėtų skatinti&lt;br /&gt;
mokiniai patys ieško informacijos, o ne turi&lt;br /&gt;
jie gauna pasyviai iš anksto apdorotą informaciją. Apie&lt;br /&gt;
Žinoma, tai priklauso nuo konkrečios situacijos, kaip geriausia užsiimti&lt;br /&gt;
studentai. Nepaisant to, tokios edukacinės sąvokos kaip „atradimas“.&lt;br /&gt;
mokymasis“, „mokymasis darant“. „mokymasis patirtimi“ ir „studentas“.&lt;br /&gt;
sutelktas mokymasis“ siūlo išnaudoti tokias žmogaus savybes kaip smalsumas,&lt;br /&gt;
iššūkis ir apsisprendimas [9].&lt;br /&gt;
&lt;br /&gt;
The Same But Different&lt;br /&gt;
Students’ Understandings of Primitive and Object Variables&lt;br /&gt;
Juha Sorva&lt;br /&gt;
Department of Computer Science and Engineering&lt;br /&gt;
Helsinki University of Technology&lt;br /&gt;
Espoo, Finland&lt;br /&gt;
jsorva@cs.hut.fi&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Pvz&amp;diff=4431</id>
		<title>Ap/Pvz</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Pvz&amp;diff=4431"/>
		<updated>2022-09-26T20:23:05Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Ciklai kol */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Ciklai kol==&lt;br /&gt;
Šiame skyriuje susipažinsi su ciklu &amp;lt;code&amp;gt;while&amp;lt;/code&amp;gt;(liet. kol). &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
a = 0&lt;br /&gt;
# Python program for implementation of MergeSort&lt;br /&gt;
# https://www.geeksforgeeks.org/merge-sort/&lt;br /&gt;
def mergeSort(arr):&lt;br /&gt;
⎧ if len(arr) &amp;lt; 2: return&lt;br /&gt;
⎪ mid = len(arr)//2  # Finding the mid of the array&lt;br /&gt;
⎪ L = arr[:mid]      # Dividing the array elements&lt;br /&gt;
⎪ R = arr[mid:]      # into 2 halves&lt;br /&gt;
⎪ &lt;br /&gt;
⎪ mergeSort(L)       # Sorting the first half &lt;br /&gt;
⎪ mergeSort(R)       # Sorting the second half&lt;br /&gt;
⎪ &lt;br /&gt;
⎪ i = j = k = 0&lt;br /&gt;
⎪ # Copy data to temp arrays L[] and R[]&lt;br /&gt;
⎪ while i &amp;lt; len(L) and j &amp;lt; len(R):&lt;br /&gt;
⎪ ⎧ if L[i] &amp;lt;= R[j]:&lt;br /&gt;
⎪ ⎪ ⎧ arr[k] = L[i]&lt;br /&gt;
⎪ ⎪ ⎩ i += 1&lt;br /&gt;
⎪ ⎪ else:&lt;br /&gt;
⎪ ⎪ ⎧ arr[k] = R[j]&lt;br /&gt;
⎪ ⎪ ⎪ j += 1&lt;br /&gt;
⎪ ⎩ ⎩ k += 1&lt;br /&gt;
⎪ &lt;br /&gt;
⎪ # Checking if any element was left&lt;br /&gt;
⎪ while i &amp;lt; len(L):&lt;br /&gt;
⎪ ⎧ arr[k] = L[i]&lt;br /&gt;
⎪ ⎪ i += 1&lt;br /&gt;
⎪ ⎩ k += 1&lt;br /&gt;
⎪ while j &amp;lt; len(R):&lt;br /&gt;
⎪ ⎧ arr[k] = R[j]&lt;br /&gt;
⎪ ⎪ j += 1&lt;br /&gt;
⎩ ⎩ k += 1&lt;br /&gt;
 &lt;br /&gt;
# Code to print the list&lt;br /&gt;
def printList(arr):&lt;br /&gt;
⎧ for i in range(len(arr)):&lt;br /&gt;
⎪ ⎩ print(arr[i], end=&amp;quot; &amp;quot;)&lt;br /&gt;
⎩ print()&lt;br /&gt;
  &lt;br /&gt;
# Driver Code&lt;br /&gt;
if __name__ == '__main__':&lt;br /&gt;
⎧ arr = [12, 11, 13, 5, 6, 7, 15, 14, 2, 17]&lt;br /&gt;
⎪ print(&amp;quot;Given array is&amp;quot;, end=&amp;quot;\n&amp;quot;)&lt;br /&gt;
⎪ printList(arr)&lt;br /&gt;
⎪ mergeSort(arr)&lt;br /&gt;
⎪ print(&amp;quot;Sorted array is: &amp;quot;, end=&amp;quot;\n&amp;quot;)&lt;br /&gt;
⎩ printList(arr)&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Expression - reiškinys False - Melas Feature - ypatybė&lt;br /&gt;
&lt;br /&gt;
== Begaliniai ciklai ==&lt;br /&gt;
Dabar, kai jau išsiaiškinome, kas yra ciklas &amp;lt;code&amp;gt;while&amp;lt;/code&amp;gt;, pasižiūrėkime kaip atrodo niekada nesibaigiantys ciklai, kaip kad ir šis.&lt;br /&gt;
&lt;br /&gt;
== Fibonačio skaičių seka ==&lt;br /&gt;
Fibonačio skaičių seka – sveikųjų skaičių seka. Seka prasideda šiais skaičiais: 0, 1, 1, 2.&lt;br /&gt;
Expression - reiškinys&lt;br /&gt;
False - Melas&lt;br /&gt;
&lt;br /&gt;
== Begaliniai ciklai2 ==&lt;br /&gt;
Dabar, kai jau išsiaiškinome, kas yra ciklas &amp;lt;code&amp;gt;while&amp;lt;/code&amp;gt;, pasižiūrėkime kaip atrodo niekada nesibaigiantys ciklai, kaip kad ir šis. Expression - reiškinys&lt;br /&gt;
&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Pvz&amp;diff=4430</id>
		<title>Ap/Pvz</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Pvz&amp;diff=4430"/>
		<updated>2022-09-26T20:22:42Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Ciklai kol */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Ciklai kol==&lt;br /&gt;
Šiame skyriuje susipažinsi su ciklu &amp;lt;code&amp;gt;while&amp;lt;/code&amp;gt;(liet. kol). &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
a = 0&lt;br /&gt;
# Python program for implementation of MergeSort&lt;br /&gt;
# https://www.geeksforgeeks.org/merge-sort/&lt;br /&gt;
def mergeSort(arr):&lt;br /&gt;
⎧ if len(arr) &amp;lt; 2: return&lt;br /&gt;
⎪ mid = len(arr)//2 # Finding the mid of the array&lt;br /&gt;
⎪ L = arr[:mid]      # Dividing the array elements&lt;br /&gt;
⎪ R = arr[mid:]      # into 2 halves&lt;br /&gt;
⎪ &lt;br /&gt;
⎪ mergeSort(L)       # Sorting the first half &lt;br /&gt;
⎪ mergeSort(R)       # Sorting the second half&lt;br /&gt;
⎪ &lt;br /&gt;
⎪ i = j = k = 0&lt;br /&gt;
⎪ # Copy data to temp arrays L[] and R[]&lt;br /&gt;
⎪ while i &amp;lt; len(L) and j &amp;lt; len(R):&lt;br /&gt;
⎪ ⎧ if L[i] &amp;lt;= R[j]:&lt;br /&gt;
⎪ ⎪ ⎧ arr[k] = L[i]&lt;br /&gt;
⎪ ⎪ ⎩ i += 1&lt;br /&gt;
⎪ ⎪ else:&lt;br /&gt;
⎪ ⎪ ⎧ arr[k] = R[j]&lt;br /&gt;
⎪ ⎪ ⎪ j += 1&lt;br /&gt;
⎪ ⎩ ⎩ k += 1&lt;br /&gt;
⎪ &lt;br /&gt;
⎪ # Checking if any element was left&lt;br /&gt;
⎪ while i &amp;lt; len(L):&lt;br /&gt;
⎪ ⎧ arr[k] = L[i]&lt;br /&gt;
⎪ ⎪ i += 1&lt;br /&gt;
⎪ ⎩ k += 1&lt;br /&gt;
⎪ while j &amp;lt; len(R):&lt;br /&gt;
⎪ ⎧ arr[k] = R[j]&lt;br /&gt;
⎪ ⎪ j += 1&lt;br /&gt;
⎩ ⎩ k += 1&lt;br /&gt;
 &lt;br /&gt;
# Code to print the list&lt;br /&gt;
def printList(arr):&lt;br /&gt;
⎧ for i in range(len(arr)):&lt;br /&gt;
⎪ ⎩ print(arr[i], end=&amp;quot; &amp;quot;)&lt;br /&gt;
⎩ print()&lt;br /&gt;
  &lt;br /&gt;
# Driver Code&lt;br /&gt;
if __name__ == '__main__':&lt;br /&gt;
⎧ arr = [12, 11, 13, 5, 6, 7, 15, 14, 2, 17]&lt;br /&gt;
⎪ print(&amp;quot;Given array is&amp;quot;, end=&amp;quot;\n&amp;quot;)&lt;br /&gt;
⎪ printList(arr)&lt;br /&gt;
⎪ mergeSort(arr)&lt;br /&gt;
⎪ print(&amp;quot;Sorted array is: &amp;quot;, end=&amp;quot;\n&amp;quot;)&lt;br /&gt;
⎩ printList(arr)&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Expression - reiškinys False - Melas Feature - ypatybė&lt;br /&gt;
&lt;br /&gt;
== Begaliniai ciklai ==&lt;br /&gt;
Dabar, kai jau išsiaiškinome, kas yra ciklas &amp;lt;code&amp;gt;while&amp;lt;/code&amp;gt;, pasižiūrėkime kaip atrodo niekada nesibaigiantys ciklai, kaip kad ir šis.&lt;br /&gt;
&lt;br /&gt;
== Fibonačio skaičių seka ==&lt;br /&gt;
Fibonačio skaičių seka – sveikųjų skaičių seka. Seka prasideda šiais skaičiais: 0, 1, 1, 2.&lt;br /&gt;
Expression - reiškinys&lt;br /&gt;
False - Melas&lt;br /&gt;
&lt;br /&gt;
== Begaliniai ciklai2 ==&lt;br /&gt;
Dabar, kai jau išsiaiškinome, kas yra ciklas &amp;lt;code&amp;gt;while&amp;lt;/code&amp;gt;, pasižiūrėkime kaip atrodo niekada nesibaigiantys ciklai, kaip kad ir šis. Expression - reiškinys&lt;br /&gt;
&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Pvz&amp;diff=4429</id>
		<title>Ap/Pvz</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Pvz&amp;diff=4429"/>
		<updated>2022-09-26T09:53:09Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Ciklai kol==&lt;br /&gt;
Šiame skyriuje susipažinsi su ciklu &amp;lt;code&amp;gt;while&amp;lt;/code&amp;gt;(liet. kol). &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
a = 0&lt;br /&gt;
# Python program for implementation of MergeSort&lt;br /&gt;
# https://www.geeksforgeeks.org/merge-sort/&lt;br /&gt;
def mergeSort(arr):&lt;br /&gt;
⎧if len(arr) &amp;lt; 2: return&lt;br /&gt;
⎪ mid = len(arr)//2 # Finding the mid of the array&lt;br /&gt;
⎪ L = arr[:mid]      # Dividing the array elements&lt;br /&gt;
⎪ R = arr[mid:]      # into 2 halves&lt;br /&gt;
⎪ &lt;br /&gt;
⎪ mergeSort(L)       # Sorting the first half &lt;br /&gt;
⎪ mergeSort(R)       # Sorting the second half&lt;br /&gt;
⎪ &lt;br /&gt;
⎪ i = j = k = 0&lt;br /&gt;
⎪ # Copy data to temp arrays L[] and R[]&lt;br /&gt;
⎪ while i &amp;lt; len(L) and j &amp;lt; len(R):&lt;br /&gt;
⎪ ⎧ if L[i] &amp;lt;= R[j]:&lt;br /&gt;
⎪ ⎪ ⎧ arr[k] = L[i]&lt;br /&gt;
⎪ ⎪ ⎩ i += 1&lt;br /&gt;
⎪ ⎪ else:&lt;br /&gt;
⎪ ⎪ ⎧ arr[k] = R[j]&lt;br /&gt;
⎪ ⎪ ⎪ j += 1&lt;br /&gt;
⎪ ⎩ ⎩ k += 1&lt;br /&gt;
⎪ &lt;br /&gt;
⎪ # Checking if any element was left&lt;br /&gt;
⎪ while i &amp;lt; len(L):&lt;br /&gt;
⎪ ⎧ arr[k] = L[i]&lt;br /&gt;
⎪ ⎪ i += 1&lt;br /&gt;
⎪ ⎩ k += 1&lt;br /&gt;
⎪ while j &amp;lt; len(R):&lt;br /&gt;
⎪ ⎧ arr[k] = R[j]&lt;br /&gt;
⎪ ⎪ j += 1&lt;br /&gt;
⎩ ⎩ k += 1&lt;br /&gt;
 &lt;br /&gt;
# Code to print the list&lt;br /&gt;
def printList(arr):&lt;br /&gt;
⎧ for i in range(len(arr)):&lt;br /&gt;
⎪ ⎩ print(arr[i], end=&amp;quot; &amp;quot;)&lt;br /&gt;
⎩ print()&lt;br /&gt;
  &lt;br /&gt;
# Driver Code&lt;br /&gt;
if __name__ == '__main__':&lt;br /&gt;
⎧ arr = [12, 11, 13, 5, 6, 7, 15, 14, 2, 17]&lt;br /&gt;
⎪ print(&amp;quot;Given array is&amp;quot;, end=&amp;quot;\n&amp;quot;)&lt;br /&gt;
⎪ printList(arr)&lt;br /&gt;
⎪ mergeSort(arr)&lt;br /&gt;
⎪ print(&amp;quot;Sorted array is: &amp;quot;, end=&amp;quot;\n&amp;quot;)&lt;br /&gt;
⎩ printList(arr)&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Expression - reiškinys False - Melas Feature - ypatybė&lt;br /&gt;
&lt;br /&gt;
== Begaliniai ciklai ==&lt;br /&gt;
Dabar, kai jau išsiaiškinome, kas yra ciklas &amp;lt;code&amp;gt;while&amp;lt;/code&amp;gt;, pasižiūrėkime kaip atrodo niekada nesibaigiantys ciklai, kaip kad ir šis.&lt;br /&gt;
&lt;br /&gt;
== Fibonačio skaičių seka ==&lt;br /&gt;
Fibonačio skaičių seka – sveikųjų skaičių seka. Seka prasideda šiais skaičiais: 0, 1, 1, 2.&lt;br /&gt;
Expression - reiškinys&lt;br /&gt;
False - Melas&lt;br /&gt;
&lt;br /&gt;
== Begaliniai ciklai2 ==&lt;br /&gt;
Dabar, kai jau išsiaiškinome, kas yra ciklas &amp;lt;code&amp;gt;while&amp;lt;/code&amp;gt;, pasižiūrėkime kaip atrodo niekada nesibaigiantys ciklai, kaip kad ir šis. Expression - reiškinys&lt;br /&gt;
&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Tikslas&amp;diff=4428</id>
		<title>Ap/Tikslas</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Tikslas&amp;diff=4428"/>
		<updated>2022-09-22T17:26:24Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pastarieji 2021-22 metai buvo gana ženklių pokyčių Lietuvos vaikų programavimo mokyme metais. 2021 m. pavasarį startavo '''[https://angis.net/ projektas Angis]''', sukurtas ''Vismos'' įmonės entuziastų. Gegužės - birželio mėnesiais Švietimo ministerijos atstovams buvo aktyviai aiškinama, kad į brandos egzaminų programą reikia įtraukti Python programavimo kalbą. Argumentai paveikė ir 2021 metų rudenį Švietimo ministrės įsakymu Python tapo oficialiai pripažinta priemone egzamino laikymui. Iškart buvo pradėti pagreitinti kursai, skirti susipažinti su Python kalbos privalumais. 2022 metų pavasarį abiturientams buvo pateikti ankstesnių VBE programavimo užduočių sprendimai, kuriuos jie galėjo savarankiškai nagrinėti.&lt;br /&gt;
&lt;br /&gt;
Visi šie žingsniai buvo žengti todėl, kad Lietuvos mokyklose pernelyg ilgai dominavo ''&amp;quot;Šiuolaikiško žvilgsnio ...&amp;quot;'' stiliaus vadovėliai, kuriuose pateikiama gerokai senstelėjusi ir dabartiniams mokiniams neaktuali medžiaga. To pasėkoje daug Lietuvos mokytojų ir mokinių savarankiškai rinko mokymo medžiagą, užduotis ir sprendimo pavyzdžius, o kiti apsiribodavo oficialiai apibrėžta programa, kurioje nebuvo tokių patogių ir aiškių  sąvokų kaip sąrašai, žodynai, dvimačiai masyvai. Tuo tarpu netgi VBE užduotyse pradėjo vyrauti tokios tematikos, kurių sprendimui reikia žinoti šias sąvokas.&lt;br /&gt;
&lt;br /&gt;
Šiuo projektu siekiama suteikti Lietuvos moksleiviams aktualių programavimo žinių, aktyviai dirbant su jiems pateiktais programiniais sprendimais.&lt;br /&gt;
&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/Gra%C5%BEinamos_reik%C5%A1m%C4%97s&amp;diff=4427</id>
		<title>Ap/Py/Gražinamos reikšmės</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/Gra%C5%BEinamos_reik%C5%A1m%C4%97s&amp;diff=4427"/>
		<updated>2022-09-18T17:18:12Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Matavimo vienetų keitimo funkcijos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3RpM čia]&lt;br /&gt;
==Kodėl reikia gražinti reikšmes==&lt;br /&gt;
Lig šiol visos mūsų sukurtos funkcijos rezultatus išvedinėjo į ekraną. Šios funkcijos yra skirtos vienos užduoties vykdymui (skaičiavimams) ir rezultatų vaizdavimui. Tuo tarpu kuriant didesnes programas, yra tikslinga atskirti skaičiavimų dalį nuo rezultatų pateikimo. Tada vienos funkcijos atlieka smulkesnius skaičiavimus, kitos - stambesnius, apjungiančius, ir tik pačioj pabaigoje pateikiami galutiniai rezultatai.&lt;br /&gt;
&lt;br /&gt;
Mums dažnai reikia tokių funkcijų kaip '''sin(x)''' ar '''cos(x)''', kurios vykdo skaičiavimus ir nerodo jokių rezultatų, bet gautas reikšmes atiduoda jas kvietusiai programai (ar kitai funkcijai). Tokios funkcijos yra vadinamos grąžinančiomis reikšmes funkcijomis. Jų veikimui yra būtinas sakinys '''return''' su paskaičiuota reikšme. Pirmuose pavyzdžiuose tai bus tiesiog skaitinės reikšmės, t.y. konkrečių figūrų plotai. Gautas reikšmes jau galima naudoti sudėtingesnių figūrų, sudarytų iš trikampių, skaičiavimui.&lt;br /&gt;
==Python funkcijų specifika==&lt;br /&gt;
Tolimesniuose pavyzdžiuose demonstruojama Python savybė, kai galima skaičiuoti ir grąžinti kelias reikšmes, pvz. perimetrą ir plotą. Tokiu atveju grąžinamą reikšmę galima traktuoti kaip vieną, taikant rinkinio sąvoką. Jei kuri nors reikšmė iš grąžinamo rinkinio yra nereikalinga, priimant reikšmes rekomenduojam toje vietoje rašyti pabraukimo ženklą _.&lt;br /&gt;
&lt;br /&gt;
Tuo pačiu reikia atkreipti dėmesį, kad funkcijos parametrai tik perduoda reikšmes į funkcijos vidų, bet negali grąžinti reikšmės į išorę, kaip buvo C++ atveju, naudojant nuorodas, žymimas &amp;amp; ženklu. Reikšmės yra grąžinamos &lt;br /&gt;
tik naudojant sakinį return. Vėliau pamatysite kad galima grąžinti ne tik skaičius, bet ir kitas struktūras, taip kuriant bibliotekas, kurios užtikrina sudėtingų programų kūrimą.&lt;br /&gt;
==Savarankiško darbo užduotys su plotais==&lt;br /&gt;
[[Vaizdas:MatematikaFig.png|500px|center]]&lt;br /&gt;
Pateiktame variante užduotys yra susietos su figūrų perimetro ir ploto skaičiavimo funkcijomis.&amp;lt;br&amp;gt;&lt;br /&gt;
Taip pat tikslinga išplėsti nagrinėjamų funkcijų tematiką, pasinaudojant fizikos sąvokomis, pvz. nuoseklaus ir ir lygiagretaus jungimo varžų skaičiavimo funkcijos.&lt;br /&gt;
&lt;br /&gt;
==Matavimo vienetų keitimo funkcijos==&lt;br /&gt;
Kaip žinoma iš fizikos, yra įvairių matavimo sistemų: temperatūra matuojama Celsijaus ir Farenheito laipsniais, ilgis matuojamas metrais, jardais, coliais; svoris - kilogramais ir pūdais ir panašiai.&amp;lt;br&amp;gt;&lt;br /&gt;
Siūloma savarankiškai užbaigti ir išbandyti šias konvertavimo funkcijas:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def fa_to_ce(fa):&lt;br /&gt;
    return 0.0 # reikia gražinti Farenkeito laipsnius&lt;br /&gt;
def ce_to_fa(ce):&lt;br /&gt;
    return 0.0 # reikia gražinti Farenkeito laipsnius&lt;br /&gt;
    &lt;br /&gt;
def km2mi(km):&lt;br /&gt;
    return 0.0 # reikia kilometrus perskaičiuoti į mylias&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Ši pamoka dar yra tvarkoma :)&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/Gra%C5%BEinamos_reik%C5%A1m%C4%97s&amp;diff=4426</id>
		<title>Ap/Py/Gražinamos reikšmės</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/Gra%C5%BEinamos_reik%C5%A1m%C4%97s&amp;diff=4426"/>
		<updated>2022-09-18T17:10:43Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Savarankiško darbo užduotys su plotais */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3RpM čia]&lt;br /&gt;
==Kodėl reikia gražinti reikšmes==&lt;br /&gt;
Lig šiol visos mūsų sukurtos funkcijos rezultatus išvedinėjo į ekraną. Šios funkcijos yra skirtos vienos užduoties vykdymui (skaičiavimams) ir rezultatų vaizdavimui. Tuo tarpu kuriant didesnes programas, yra tikslinga atskirti skaičiavimų dalį nuo rezultatų pateikimo. Tada vienos funkcijos atlieka smulkesnius skaičiavimus, kitos - stambesnius, apjungiančius, ir tik pačioj pabaigoje pateikiami galutiniai rezultatai.&lt;br /&gt;
&lt;br /&gt;
Mums dažnai reikia tokių funkcijų kaip '''sin(x)''' ar '''cos(x)''', kurios vykdo skaičiavimus ir nerodo jokių rezultatų, bet gautas reikšmes atiduoda jas kvietusiai programai (ar kitai funkcijai). Tokios funkcijos yra vadinamos grąžinančiomis reikšmes funkcijomis. Jų veikimui yra būtinas sakinys '''return''' su paskaičiuota reikšme. Pirmuose pavyzdžiuose tai bus tiesiog skaitinės reikšmės, t.y. konkrečių figūrų plotai. Gautas reikšmes jau galima naudoti sudėtingesnių figūrų, sudarytų iš trikampių, skaičiavimui.&lt;br /&gt;
==Python funkcijų specifika==&lt;br /&gt;
Tolimesniuose pavyzdžiuose demonstruojama Python savybė, kai galima skaičiuoti ir grąžinti kelias reikšmes, pvz. perimetrą ir plotą. Tokiu atveju grąžinamą reikšmę galima traktuoti kaip vieną, taikant rinkinio sąvoką. Jei kuri nors reikšmė iš grąžinamo rinkinio yra nereikalinga, priimant reikšmes rekomenduojam toje vietoje rašyti pabraukimo ženklą _.&lt;br /&gt;
&lt;br /&gt;
Tuo pačiu reikia atkreipti dėmesį, kad funkcijos parametrai tik perduoda reikšmes į funkcijos vidų, bet negali grąžinti reikšmės į išorę, kaip buvo C++ atveju, naudojant nuorodas, žymimas &amp;amp; ženklu. Reikšmės yra grąžinamos &lt;br /&gt;
tik naudojant sakinį return. Vėliau pamatysite kad galima grąžinti ne tik skaičius, bet ir kitas struktūras, taip kuriant bibliotekas, kurios užtikrina sudėtingų programų kūrimą.&lt;br /&gt;
==Savarankiško darbo užduotys su plotais==&lt;br /&gt;
[[Vaizdas:MatematikaFig.png|500px|center]]&lt;br /&gt;
Pateiktame variante užduotys yra susietos su figūrų perimetro ir ploto skaičiavimo funkcijomis.&amp;lt;br&amp;gt;&lt;br /&gt;
Taip pat tikslinga išplėsti nagrinėjamų funkcijų tematiką, pasinaudojant fizikos sąvokomis, pvz. nuoseklaus ir ir lygiagretaus jungimo varžų skaičiavimo funkcijos.&lt;br /&gt;
&lt;br /&gt;
==Matavimo vienetų keitimo funkcijos==&lt;br /&gt;
Kaip žinoma iš fizikos, yra įvairių matavimo sistemų: temperatūra matuojama Celsijaus ir Farenheito laipsniais, ilgis matuojamas metrais, jardais, coliais; svoris - kilogramais ir pūdais ir panašiai.&amp;lt;br&amp;gt;&lt;br /&gt;
Siūloma savarankiškai užbaigti ir išbandyti šias konvertavimo funkcijas:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def fa_to_ce(fa):&lt;br /&gt;
    return 0.0 # reikia gražinti Farenkeito laipsnius&lt;br /&gt;
def ce_to_fa(ce):&lt;br /&gt;
    return 0.0 # reikia gražinti Farenkeito laipsnius&lt;br /&gt;
    &lt;br /&gt;
def km2mi(km):&lt;br /&gt;
    return 0.0 # reikia kilometrus perskaičiuti į mylias&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Ši pamoka dar yra tvarkoma :)&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4425</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4425"/>
		<updated>2022-09-18T09:28:37Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Naujovė, lyginant su C++ šeimos kalbomis, yra tai, kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą.&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos len(sąr) pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija sum(sąr) grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą.&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją sąr.append(sk), kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas for sk in sąr: dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba for each). Panagrinėjus šiuos du atvejus detaliau matyti, kad atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti, todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiamos kelios užduotys.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4424</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4424"/>
		<updated>2022-09-18T09:24:20Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ar yra bandę Vėžliuko grafiką ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Naujovė, lyginant su C++ šeimos kalbomis, yra tai, kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą.&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos len(sąr) pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija sum(sąr) grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą.&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas for sk in sąr: dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba for each). Panagrinėjus šiuos du atvejus detaliau matyti, kad atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti, todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją sąr.append(sk), kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiamos kelios užduotys.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4423</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4423"/>
		<updated>2022-09-16T10:07:42Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]. Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Naujovė, lyginant su C++ šeimos kalbomis, yra tai, kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą.&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos len(sąr) pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija sum(sąr) grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą.&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas for sk in sąr: dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba for each). Panagrinėjus šiuos du atvejus detaliau matyti, kad atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti, todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją sąr.append(sk), kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiamos kelios užduotys.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4422</id>
		<title>Ap/Py/Sąrašų demonstracija</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/S%C4%85ra%C5%A1%C5%B3_demonstracija&amp;diff=4422"/>
		<updated>2022-09-16T10:07:04Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3Ppw čia]&amp;lt;br&amp;gt;&lt;br /&gt;
Tai yra trumpas įvadas, skirtas tiems kas jau žino Pascal ar C++ kalbų masyvus ir nori greitai įgauti supratimą apie darbą su Python sąrašais.&lt;br /&gt;
===Sąrašai yra indeksuojami===&lt;br /&gt;
Sąrašų sąvoka yra glaudžiai susijusi su masyvais, kur prieiga prie atskirų elementų atliekama indeksų pagalba, ką demonstruoja pirmoji šios temos funkcija. Naujovė, lyginant su C++ šeimos kalbomis, yra tai, kad panaudojant neigiamus indeksus patogu nagrinėti sąrašo pabaigą.&lt;br /&gt;
=== Sąrašams skirtos funkcijos===&lt;br /&gt;
Atliekant sąrašo kaip objekto analizę būtina žinoti, kad jo aktualus dydis nustatomas funkcijos len(sąr) pagalba, todėl parametruose nereikia papildomai nurodyti sąrašo dydžio.&lt;br /&gt;
Funkcija sum(sąr) grąžina visų sąraše esančių skaičių sumą. Jei sąraše pasitaiko teksto eilučių, signalizuojama apie klaidą.&lt;br /&gt;
===Sąrašo analizė be indeksų===&lt;br /&gt;
Pilnai sąrašo analizei galimi ciklai panaudojant indeksus ir be jų. Ciklas for sk in sąr: dažnai yra skaitomas taip “kiekvienam sk iš sąr” (anglų kalba for each). Panagrinėjus šiuos du atvejus detaliau matyti, kad atvejis be indeksų yra paprastesnis, mažiau galimybių suklysti, todėl ir yra rekomenduojamas naudoti ten, kur indeksai nebūtini.&lt;br /&gt;
===Sąrašo analizė su indeksais===&lt;br /&gt;
Kita sąrašo ypatybė yra ta, kad sąrašą galima eigoje papildyti naudojant funkciją sąr.append(sk), kas yra svarbu dinamiškai formuojant sąrašus.&lt;br /&gt;
Jei užduotyje yra nagrinėjami sąrašo elementų tarpusavio santykiai (pvz. važiuojama į kalną ar leidžiamasi), tai tokiu atveju geriau naudoti indeksus, kas ir parodyta demo funkcijoje.&lt;br /&gt;
&lt;br /&gt;
Žinių apie sąrašus įtvirtinimui pateikiamos kelios užduotys.&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py&amp;diff=4421</id>
		<title>Ap/Py</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py&amp;diff=4421"/>
		<updated>2022-09-15T10:24:21Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Aktyvių pamokų Python turinys ==&lt;br /&gt;
&lt;br /&gt;
;[[ap/Py/Pamoka_A0|Smagi pradžia - pasidžiaukime]]&lt;br /&gt;
: Pamatysite kaip natūralu, lengva ir smagu su Python &lt;br /&gt;
;[[ap/Py/Pamoka_A1|Labas pasauli - pradedame su funkcijomis]]&lt;br /&gt;
: Pamatysite kaip veikia funkcijos ir ką reiškia parametrai&lt;br /&gt;
;[[ap/Py/Pamoka_A2|Range intervalai - išbandome ciklų jėgą]]&lt;br /&gt;
: Susipažinsite kaip efektyviai užrašyti kartojimus&lt;br /&gt;
;[[ap/Py/Figūrų_konstravimas|Figūrų konstravimas - Simbolių dėlionės]]&lt;br /&gt;
: Ciklų pagalba konstruosime figūras iš spausdinamų simbolių&lt;br /&gt;
;[[ap/Py/Formulės_tapatybės|Matematinės formulės - tiriame tapatybes]]&lt;br /&gt;
: Tikriname kaip mokame rašyti matematines formules&lt;br /&gt;
;[[ap/Py/Gražinamos_reikšmės|Funkcijų galimybė gražinti reikšmes]]&lt;br /&gt;
: Pagrindinė funkcijų savybė yra gražinti suformuotas reikšmes&lt;br /&gt;
;[[ap/Py/Sąrašų_demonstracija|Įžanga į sąrašus - konkretūs pavyzdžiai]]&lt;br /&gt;
: Pavyzdžių pagalba aptarsime kaip konstruoti ir analizuoti sąrašus&lt;br /&gt;
;[[ap/Py/Iškarpų_demonstracija|Iškarpos (slice) - dalinių sąrašų atvejis]]&lt;br /&gt;
: Išsiaiškinsime kaip iškarpų pagalba sudaryti dalinius sąrašų ar eilučių atvejus&lt;br /&gt;
;[[ap/Py/Lyginame_Cpp_Py|Lyginame sprendimus su C++ ir Python]]&lt;br /&gt;
: Tą patį uždavinį sprendžiame su C++ ir Python&lt;br /&gt;
;[[ap/Py/VBE_su_Python|VBE sprendimai su Python]]&lt;br /&gt;
: Pateikiami VBE sprendimai su Python&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/Gra%C5%BEinamos_reik%C5%A1m%C4%97s&amp;diff=4420</id>
		<title>Ap/Py/Gražinamos reikšmės</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/Gra%C5%BEinamos_reik%C5%A1m%C4%97s&amp;diff=4420"/>
		<updated>2022-09-12T16:51:50Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Matavimo vienetų keitimo funkcijos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3RpM čia]&lt;br /&gt;
==Kodėl reikia gražinti reikšmes==&lt;br /&gt;
Lig šiol visos mūsų sukurtos funkcijos rezultatus išvedinėjo į ekraną. Šios funkcijos yra skirtos vienos užduoties vykdymui (skaičiavimams) ir rezultatų vaizdavimui. Tuo tarpu kuriant didesnes programas, yra tikslinga atskirti skaičiavimų dalį nuo rezultatų pateikimo. Tada vienos funkcijos atlieka smulkesnius skaičiavimus, kitos - stambesnius, apjungiančius, ir tik pačioj pabaigoje pateikiami galutiniai rezultatai.&lt;br /&gt;
&lt;br /&gt;
Mums dažnai reikia tokių funkcijų kaip '''sin(x)''' ar '''cos(x)''', kurios vykdo skaičiavimus ir nerodo jokių rezultatų, bet gautas reikšmes atiduoda jas kvietusiai programai (ar kitai funkcijai). Tokios funkcijos yra vadinamos grąžinančiomis reikšmes funkcijomis. Jų veikimui yra būtinas sakinys '''return''' su paskaičiuota reikšme. Pirmuose pavyzdžiuose tai bus tiesiog skaitinės reikšmės, t.y. konkrečių figūrų plotai. Gautas reikšmes jau galima naudoti sudėtingesnių figūrų, sudarytų iš trikampių, skaičiavimui.&lt;br /&gt;
==Python funkcijų specifika==&lt;br /&gt;
Tolimesniuose pavyzdžiuose demonstruojama Python savybė, kai galima skaičiuoti ir grąžinti kelias reikšmes, pvz. perimetrą ir plotą. Tokiu atveju grąžinamą reikšmę galima traktuoti kaip vieną, taikant rinkinio sąvoką. Jei kuri nors reikšmė iš grąžinamo rinkinio yra nereikalinga, priimant reikšmes rekomenduojam toje vietoje rašyti pabraukimo ženklą _.&lt;br /&gt;
&lt;br /&gt;
Tuo pačiu reikia atkreipti dėmesį, kad funkcijos parametrai tik perduoda reikšmes į funkcijos vidų, bet negali grąžinti reikšmės į išorę, kaip buvo C++ atveju, naudojant nuorodas, žymimas &amp;amp; ženklu. Reikšmės yra grąžinamos &lt;br /&gt;
tik naudojant sakinį return. Vėliau pamatysite kad galima grąžinti ne tik skaičius, bet ir kitas struktūras, taip kuriant bibliotekas, kurios užtikrina sudėtingų programų kūrimą.&lt;br /&gt;
==Savarankiško darbo užduotys su plotais==&lt;br /&gt;
[[Vaizdas:MatematikaFig.png|500px|center]]&lt;br /&gt;
Pateiktame variante užduotys yra susietos su figūrų perimetro ir ploto skaičiavimu. Tikslinga išplėsti nagrinėjamų funkcijų tematiką, pasinaudojant fizikos sąvokomis.&lt;br /&gt;
==Matavimo vienetų keitimo funkcijos==&lt;br /&gt;
Kaip žinoma iš fizikos, yra įvairių matavimo sistemų: temperatūra matuojama Celsijaus ir Farenheito laipsniais, ilgis matuojamas metrais, jardais, coliais; svoris - kilogramais ir pūdais ir panašiai.&amp;lt;br&amp;gt;&lt;br /&gt;
Siūloma savarankiškai užbaigti ir išbandyti šias konvertavimo funkcijas:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def fa_to_ce(fa):&lt;br /&gt;
    return 0.0 # reikia gražinti Farenkeito laipsnius&lt;br /&gt;
def ce_to_fa(ce):&lt;br /&gt;
    return 0.0 # reikia gražinti Farenkeito laipsnius&lt;br /&gt;
    &lt;br /&gt;
def km2mi(km):&lt;br /&gt;
    return 0.0 # reikia kilometrus perskaičiuti į mylias&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Ši pamoka dar yra tvarkoma :)&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/Gra%C5%BEinamos_reik%C5%A1m%C4%97s&amp;diff=4419</id>
		<title>Ap/Py/Gražinamos reikšmės</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/Gra%C5%BEinamos_reik%C5%A1m%C4%97s&amp;diff=4419"/>
		<updated>2022-09-12T16:50:57Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3RpM čia]&lt;br /&gt;
==Kodėl reikia gražinti reikšmes==&lt;br /&gt;
Lig šiol visos mūsų sukurtos funkcijos rezultatus išvedinėjo į ekraną. Šios funkcijos yra skirtos vienos užduoties vykdymui (skaičiavimams) ir rezultatų vaizdavimui. Tuo tarpu kuriant didesnes programas, yra tikslinga atskirti skaičiavimų dalį nuo rezultatų pateikimo. Tada vienos funkcijos atlieka smulkesnius skaičiavimus, kitos - stambesnius, apjungiančius, ir tik pačioj pabaigoje pateikiami galutiniai rezultatai.&lt;br /&gt;
&lt;br /&gt;
Mums dažnai reikia tokių funkcijų kaip '''sin(x)''' ar '''cos(x)''', kurios vykdo skaičiavimus ir nerodo jokių rezultatų, bet gautas reikšmes atiduoda jas kvietusiai programai (ar kitai funkcijai). Tokios funkcijos yra vadinamos grąžinančiomis reikšmes funkcijomis. Jų veikimui yra būtinas sakinys '''return''' su paskaičiuota reikšme. Pirmuose pavyzdžiuose tai bus tiesiog skaitinės reikšmės, t.y. konkrečių figūrų plotai. Gautas reikšmes jau galima naudoti sudėtingesnių figūrų, sudarytų iš trikampių, skaičiavimui.&lt;br /&gt;
==Python funkcijų specifika==&lt;br /&gt;
Tolimesniuose pavyzdžiuose demonstruojama Python savybė, kai galima skaičiuoti ir grąžinti kelias reikšmes, pvz. perimetrą ir plotą. Tokiu atveju grąžinamą reikšmę galima traktuoti kaip vieną, taikant rinkinio sąvoką. Jei kuri nors reikšmė iš grąžinamo rinkinio yra nereikalinga, priimant reikšmes rekomenduojam toje vietoje rašyti pabraukimo ženklą _.&lt;br /&gt;
&lt;br /&gt;
Tuo pačiu reikia atkreipti dėmesį, kad funkcijos parametrai tik perduoda reikšmes į funkcijos vidų, bet negali grąžinti reikšmės į išorę, kaip buvo C++ atveju, naudojant nuorodas, žymimas &amp;amp; ženklu. Reikšmės yra grąžinamos &lt;br /&gt;
tik naudojant sakinį return. Vėliau pamatysite kad galima grąžinti ne tik skaičius, bet ir kitas struktūras, taip kuriant bibliotekas, kurios užtikrina sudėtingų programų kūrimą.&lt;br /&gt;
==Savarankiško darbo užduotys su plotais==&lt;br /&gt;
[[Vaizdas:MatematikaFig.png|500px|center]]&lt;br /&gt;
Pateiktame variante užduotys yra susietos su figūrų perimetro ir ploto skaičiavimu. Tikslinga išplėsti nagrinėjamų funkcijų tematiką, pasinaudojant fizikos sąvokomis.&lt;br /&gt;
==Matavimo vienetų keitimo funkcijos==&lt;br /&gt;
Kaip žinoma iš fizikos, yra įvairių matavimo sistemų: temperatūra matuojama Celsijaus ir Farenheito laipsniais, ilgis matuojamas metrais, jardais, coliais; svoris - kilogramais ir pūdais ir panašiai.&amp;lt;br&amp;gt;&lt;br /&gt;
Siūloma savarankiškai užbaigti ir išbandyti šias konvertavimo funkcijas:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def fa_to_ce(fa):&lt;br /&gt;
    return 0.0 # reikia gražinti Farenkeito laipsnius&lt;br /&gt;
def ce_to_fa(ce):&lt;br /&gt;
    return 0.0 # reikia gražinti Farenkeito laipsnius&lt;br /&gt;
    &lt;br /&gt;
def km2mi(km):&lt;br /&gt;
    return 0.0 # reikia kilometrus perskaičiuti į mylias&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/Gra%C5%BEinamos_reik%C5%A1m%C4%97s&amp;diff=4418</id>
		<title>Ap/Py/Gražinamos reikšmės</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/Gra%C5%BEinamos_reik%C5%A1m%C4%97s&amp;diff=4418"/>
		<updated>2022-09-12T14:30:46Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Matavimo vienetų keitimo funkcijos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3RpM čia]&lt;br /&gt;
==Kodėl reikia gražinti reikšmes==&lt;br /&gt;
Lig šiol visos mūsų sukurtos funkcijos rezultatus išvedinėjo į ekraną. Šios funkcijos yra skirtos vienos užduoties vykdymui (skaičiavimams) ir rezultatų vaizdavimui. Tuo tarpu kuriant didesnes programas, yra tikslinga atskirti skaičiavimų dalį nuo rezultatų pateikimo. Tada vienos funkcijos atlieka smulkesnius skaičiavimus, kitos - stambesnius, apjungiančius, ir tik pačioj pabaigoje pateikiami galutiniai rezultatai.&lt;br /&gt;
&lt;br /&gt;
Mums dažnai reikia tokių funkcijų kaip '''sin(x)''' ar '''cos(x)''', kurios vykdo skaičiavimus ir nerodo jokių rezultatų, bet gautas reikšmes atiduoda jas kvietusiai programai (ar kitai funkcijai). Tokios funkcijos yra vadinamos grąžinančiomis reikšmes funkcijomis. Jų veikimui yra būtinas sakinys '''return''' su paskaičiuota reikšme. Pirmuose pavyzdžiuose tai bus tiesiog skaitinės reikšmės, t.y. konkrečių figūrų plotai. Gautas reikšmes jau galima naudoti sudėtingesnių figūrų, sudarytų iš trikampių, skaičiavimui.&lt;br /&gt;
&lt;br /&gt;
Tolimesniuose pavyzdžiuose demonstruojama Python savybė, kai galima skaičiuoti ir grąžinti kelias reikšmes, pvz. perimetrą ir plotą. Tokiu atveju grąžinamą reikšmę galima traktuoti kaip vieną, taikant rinkinio sąvoką. Jei kuri nors reikšmė iš grąžinamo rinkinio yra nereikalinga, priimant reikšmes rekomenduojam toje vietoje rašyti pabraukimo ženklą _.&lt;br /&gt;
==Python funkcijų specifika==&lt;br /&gt;
Tuo pačiu reikia atkreipti dėmesį, kad funkcijos parametrai tik perduoda reikšmes į funkcijos vidų, bet negali grąžinti reikšmės į išorę, kaip buvo C++ atveju, naudojant nuorodas, žymimas &amp;amp; ženklu. Reikšmės yra grąžinamos &lt;br /&gt;
tik naudojant sakinį return. Vėliau pamatysite kad galima grąžinti ne tik skaičius, bet ir kitas struktūras, taip kuriant bibliotekas, kurios užtikrina sudėtingų programų kūrimą.&lt;br /&gt;
==Savarankiško darbo užduotys su plotais==&lt;br /&gt;
[[Vaizdas:MatematikaFig.png|500px|center]]&lt;br /&gt;
Pateiktame variante užduotys yra susietos su figūrų perimetro ir ploto skaičiavimu. Tikslinga išplėsti nagrinėjamų funkcijų tematiką, pasinaudojant fizikos sąvokomis.&lt;br /&gt;
==Matavimo vienetų keitimo funkcijos==&lt;br /&gt;
Kaip žinoma iš fizikos, yra įvairių matavimo sistemų: temperatūra matuojama Celsijaus ir Farenheito laipsniais, ilgis matuojamas metrais, jardais, coliais; svoris - kilogramais ir pūdais ir panašiai.&amp;lt;br&amp;gt;&lt;br /&gt;
Siūloma savarankiškai užbaigti ir išbandyti šias konvertavimo funkcijas:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def fa_to_ce(fa):&lt;br /&gt;
    return 0.0 # reikia gražinti Farenkeito laipsnius&lt;br /&gt;
def ce_to_fa(ce):&lt;br /&gt;
    return 0.0 # reikia gražinti Farenkeito laipsnius&lt;br /&gt;
    &lt;br /&gt;
def km2mi(km):&lt;br /&gt;
    return 0.0 # reikia kilometrus perskaičiuti į mylias&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/Gra%C5%BEinamos_reik%C5%A1m%C4%97s&amp;diff=4417</id>
		<title>Ap/Py/Gražinamos reikšmės</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/Gra%C5%BEinamos_reik%C5%A1m%C4%97s&amp;diff=4417"/>
		<updated>2022-09-12T14:21:05Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Matavimo vienetų keitimo funkcijos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3RpM čia]&lt;br /&gt;
==Kodėl reikia gražinti reikšmes==&lt;br /&gt;
Lig šiol visos mūsų sukurtos funkcijos rezultatus išvedinėjo į ekraną. Šios funkcijos yra skirtos vienos užduoties vykdymui (skaičiavimams) ir rezultatų vaizdavimui. Tuo tarpu kuriant didesnes programas, yra tikslinga atskirti skaičiavimų dalį nuo rezultatų pateikimo. Tada vienos funkcijos atlieka smulkesnius skaičiavimus, kitos - stambesnius, apjungiančius, ir tik pačioj pabaigoje pateikiami galutiniai rezultatai.&lt;br /&gt;
&lt;br /&gt;
Mums dažnai reikia tokių funkcijų kaip '''sin(x)''' ar '''cos(x)''', kurios vykdo skaičiavimus ir nerodo jokių rezultatų, bet gautas reikšmes atiduoda jas kvietusiai programai (ar kitai funkcijai). Tokios funkcijos yra vadinamos grąžinančiomis reikšmes funkcijomis. Jų veikimui yra būtinas sakinys '''return''' su paskaičiuota reikšme. Pirmuose pavyzdžiuose tai bus tiesiog skaitinės reikšmės, t.y. konkrečių figūrų plotai. Gautas reikšmes jau galima naudoti sudėtingesnių figūrų, sudarytų iš trikampių, skaičiavimui.&lt;br /&gt;
&lt;br /&gt;
Tolimesniuose pavyzdžiuose demonstruojama Python savybė, kai galima skaičiuoti ir grąžinti kelias reikšmes, pvz. perimetrą ir plotą. Tokiu atveju grąžinamą reikšmę galima traktuoti kaip vieną, taikant rinkinio sąvoką. Jei kuri nors reikšmė iš grąžinamo rinkinio yra nereikalinga, priimant reikšmes rekomenduojam toje vietoje rašyti pabraukimo ženklą _.&lt;br /&gt;
==Python funkcijų specifika==&lt;br /&gt;
Tuo pačiu reikia atkreipti dėmesį, kad funkcijos parametrai tik perduoda reikšmes į funkcijos vidų, bet negali grąžinti reikšmės į išorę, kaip buvo C++ atveju, naudojant nuorodas, žymimas &amp;amp; ženklu. Reikšmės yra grąžinamos &lt;br /&gt;
tik naudojant sakinį return. Vėliau pamatysite kad galima grąžinti ne tik skaičius, bet ir kitas struktūras, taip kuriant bibliotekas, kurios užtikrina sudėtingų programų kūrimą.&lt;br /&gt;
==Savarankiško darbo užduotys su plotais==&lt;br /&gt;
[[Vaizdas:MatematikaFig.png|500px|center]]&lt;br /&gt;
Pateiktame variante užduotys yra susietos su figūrų perimetro ir ploto skaičiavimu. Tikslinga išplėsti nagrinėjamų funkcijų tematiką, pasinaudojant fizikos sąvokomis.&lt;br /&gt;
==Matavimo vienetų keitimo funkcijos==&lt;br /&gt;
Kaip žinoma iš fizikos, yra įvairių matavimo sistemų: temperatūra matuojama Celsijaus ir Farenheito laipsniais, ilgis matuojamas metrais, jardais, coliais; svoris - kilogramais ir pūdais ir panašiai.&amp;lt;br&amp;gt;&lt;br /&gt;
Siūloma savarankiškai užbaigti ir išbandyti šias konvertavimo funkcijas:&lt;br /&gt;
&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/Gra%C5%BEinamos_reik%C5%A1m%C4%97s&amp;diff=4416</id>
		<title>Ap/Py/Gražinamos reikšmės</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/Gra%C5%BEinamos_reik%C5%A1m%C4%97s&amp;diff=4416"/>
		<updated>2022-09-12T12:51:24Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3RpM čia]&lt;br /&gt;
==Kodėl reikia gražinti reikšmes==&lt;br /&gt;
Lig šiol visos mūsų sukurtos funkcijos rezultatus išvedinėjo į ekraną. Šios funkcijos yra skirtos vienos užduoties vykdymui (skaičiavimams) ir rezultatų vaizdavimui. Tuo tarpu kuriant didesnes programas, yra tikslinga atskirti skaičiavimų dalį nuo rezultatų pateikimo. Tada vienos funkcijos atlieka smulkesnius skaičiavimus, kitos - stambesnius, apjungiančius, ir tik pačioj pabaigoje pateikiami galutiniai rezultatai.&lt;br /&gt;
&lt;br /&gt;
Mums dažnai reikia tokių funkcijų kaip '''sin(x)''' ar '''cos(x)''', kurios vykdo skaičiavimus ir nerodo jokių rezultatų, bet gautas reikšmes atiduoda jas kvietusiai programai (ar kitai funkcijai). Tokios funkcijos yra vadinamos grąžinančiomis reikšmes funkcijomis. Jų veikimui yra būtinas sakinys '''return''' su paskaičiuota reikšme. Pirmuose pavyzdžiuose tai bus tiesiog skaitinės reikšmės, t.y. konkrečių figūrų plotai. Gautas reikšmes jau galima naudoti sudėtingesnių figūrų, sudarytų iš trikampių, skaičiavimui.&lt;br /&gt;
&lt;br /&gt;
Tolimesniuose pavyzdžiuose demonstruojama Python savybė, kai galima skaičiuoti ir grąžinti kelias reikšmes, pvz. perimetrą ir plotą. Tokiu atveju grąžinamą reikšmę galima traktuoti kaip vieną, taikant rinkinio sąvoką. Jei kuri nors reikšmė iš grąžinamo rinkinio yra nereikalinga, priimant reikšmes rekomenduojam toje vietoje rašyti pabraukimo ženklą _.&lt;br /&gt;
==Python funkcijų specifika==&lt;br /&gt;
Tuo pačiu reikia atkreipti dėmesį, kad funkcijos parametrai tik perduoda reikšmes į funkcijos vidų, bet negali grąžinti reikšmės į išorę, kaip buvo C++ atveju, naudojant nuorodas, žymimas &amp;amp; ženklu. Reikšmės yra grąžinamos &lt;br /&gt;
tik naudojant sakinį return. Vėliau pamatysite kad galima grąžinti ne tik skaičius, bet ir kitas struktūras, taip kuriant bibliotekas, kurios užtikrina sudėtingų programų kūrimą.&lt;br /&gt;
==Savarankiško darbo užduotys su plotais==&lt;br /&gt;
[[Vaizdas:MatematikaFig.png|500px|center]]&lt;br /&gt;
Pateiktame variante užduotys yra susietos su figūrų perimetro ir ploto skaičiavimu. Tikslinga išplėsti nagrinėjamų funkcijų tematiką, pasinaudojant fizikos sąvokomis.&lt;br /&gt;
==Matavimo vienetų keitimo funkcijos==&lt;br /&gt;
Celsijus -&amp;gt; Farenheitas&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Ap/Py/Gra%C5%BEinamos_reik%C5%A1m%C4%97s&amp;diff=4415</id>
		<title>Ap/Py/Gražinamos reikšmės</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Ap/Py/Gra%C5%BEinamos_reik%C5%A1m%C4%97s&amp;diff=4415"/>
		<updated>2022-09-12T12:50:00Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: /* Kodėl reikia gražinti reikšmes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pilnas šios treniruotės Python kodas yra [https://www.jdoodle.com/a/3RpM čia]&lt;br /&gt;
==Kodėl reikia gražinti reikšmes==&lt;br /&gt;
Lig šiol visos mūsų sukurtos funkcijos rezultatus išvedinėjo į ekraną. Šios funkcijos yra skirtos vienos užduoties vykdymui (skaičiavimams) ir rezultatų vaizdavimui. Tuo tarpu kuriant didesnes programas, yra tikslinga atskirti skaičiavimų dalį nuo rezultatų pateikimo. Tada vienos funkcijos atlieka smulkesnius skaičiavimus, kitos - stambesnius, apjungiančius, ir tik pačioj pabaigoje pateikiami galutiniai rezultatai.&lt;br /&gt;
&lt;br /&gt;
Mums dažnai reikia tokių funkcijų kaip sin() ar cos(), kurios vykdo skaičiavimus ir nerodo jokių rezultatų, bet gautas reikšmes atiduoda jas kvietusiai programai (ar kitai funkcijai). Tokios funkcijos yra vadinamos grąžinančiomis reikšmes funkcijomis. Jų veikimui yra būtinas sakinys '''return''' su paskaičiuota reikšme. Pirmuose pavyzdžiuose tai bus tiesiog skaitinės reikšmės, t.y. konkrečių figūrų plotai. Gautas reikšmes jau galima naudoti sudėtingesnių figūrų, sudarytų iš trikampių, skaičiavimui.&lt;br /&gt;
&lt;br /&gt;
Tolimesniuose pavyzdžiuose demonstruojama Python savybė, kai galima skaičiuoti ir grąžinti kelias reikšmes, pvz. perimetrą ir plotą. Tokiu atveju grąžinamą reikšmę galima traktuoti kaip vieną, taikant rinkinio sąvoką. Jei kuri nors reikšmė iš grąžinamo rinkinio yra nereikalinga, priimant reikšmes rekomenduojam toje vietoje rašyti pabraukimo ženklą _.&lt;br /&gt;
==Python funkcijų specifika==&lt;br /&gt;
Tuo pačiu reikia atkreipti dėmesį, kad funkcijos parametrai tik perduoda reikšmes į funkcijos vidų, bet negali grąžinti reikšmės į išorę, kaip buvo C++ atveju, naudojant nuorodas, žymimas &amp;amp; ženklu. Reikšmės yra grąžinamos &lt;br /&gt;
tik naudojant sakinį return. Vėliau pamatysite kad galima grąžinti ne tik skaičius, bet ir kitas struktūras, taip kuriant bibliotekas, kurios užtikrina sudėtingų programų kūrimą.&lt;br /&gt;
==Savarankiško darbo užduotys su plotais==&lt;br /&gt;
[[Vaizdas:MatematikaFig.png|500px|center]]&lt;br /&gt;
Pateiktame variante užduotys yra susietos su figūrų perimetro ir ploto skaičiavimu. Tikslinga išplėsti nagrinėjamų funkcijų tematiką, pasinaudojant fizikos sąvokomis.&lt;br /&gt;
==Matavimo vienetų keitimo funkcijos==&lt;br /&gt;
Celsijus -&amp;gt; Farenheitas&lt;br /&gt;
{{navigation |previous=BEGINNING |next=END}}&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
	<entry>
		<id>https://wiki.angis.net/index.php?title=Vaizdas:MatematikaFig.png&amp;diff=4414</id>
		<title>Vaizdas:MatematikaFig.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.angis.net/index.php?title=Vaizdas:MatematikaFig.png&amp;diff=4414"/>
		<updated>2022-09-12T12:18:52Z</updated>

		<summary type="html">&lt;p&gt;Eimutis: Eimutis įkėlė naują Vaizdas:MatematikaFig.png versiją&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Eimutis</name></author>
	</entry>
</feed>