Masyvai
Masyvai
Šis skyrius skirtas susipažinti su masyvais C++ programavimo kalboje.
Kas yra masyvas?
Dažnai rašant programas gali pasidaryti labai nepatogu kiekvienai įvedamai reikšmei rašyti po atskirą kintamąjį - kas, jei tokių kintamųjų yra šimtas ar milijonas? Norint nuskaityti tiek kintamųjų reikšmių reiktų rašyti tokį kodą:
Akivaizdu, kad tai nėra nei patogu, nei greita. Tokiose situacijose mums gali padėti masyvai. Masyvas - tai tipas, gebantis savyje laikyti daugiau nei vieną reikšmę. Visos reikšmės, esančios masyvuose, yra indeksuojamos, tai yra, turi tam tikrą joms priskirtą numerį. Reikšmės masyvuose indeksuojamos nuo nulio, tad pirmo elemento numeris (arba indeksas) yra lygus 0, antro elemento - 1 ir taip toliau.
Masyvo sukūrimas
Masyvai visada būna fiksuoto dydžio, tad norint sukurti masyvą, visų pirma reikia žinoti, kiek elementų mes jame norėtume sutalpinti. Šį skaičių kuriant masyvą galima nurodyti ir didesnį, negu iš tikro reikia, tačiau tada bus naudojama daugiau atminties. Masyvą sukurti galima taip:
Šis kodas sukurs masyvą, kuris galės laikyti iki šimto sveikųjų skaičių.
Masyvo elementams, turintiems tam tikrą indeksą, galima priskirti reikšmes bei jas nuskaityti. Tai daroma taip:
Dabar masyvas
pirmos trys reikšmės bus lygios 10, 20 ir 60 atitinkamai, o visos kitos kol kas neaiškios (jei masyvą parašytume kaip globalų kintamąjį, visos kitos reikšmės būtų lygios nuliui).
Įvesties nuskaitymas į masyvą
Spręsdami uždavinius dažnai susidursite su situacija, kuomet reikės nuskaityti vartotojo įvestus duomenis ir išsaugoti juos masyve. Tai galima padaryti taip:
Dabar su šiais duomenimis galima dirbti. Tarkime, norime kiekvieną įvestą skaičių padauginti iš dviejų. Tai būtų galima padaryti taip:
Po to galime duomenis ir išvesti. Pabandykime išvesti juos atvirkščia tvarka:
Taigi, jei šiai programai įvesime tokius duomenis:
Programa išves:
Dvimačiai masyvai
Tai, ką dabar nagrinėjome, yra vadinama vienmačiais masyvais. C++ programavimo kalboje galima kurit ir dvimačius, trimačius, keturmačius ir t.t. masyvus. Šiame poskyryje panagrinėkime, kaip sukurti ir dirbti su dvimačiu masyvu. Toks masyvas kuriamas taip:
Taip sukursime dvimatį masyvą, kuris laikys simbolius ir bus 100x50 dydžio. Šį masyvą galime įsivaizduoti kaip lentelę, turinčią 100 eilučių ir 50 stulpelių. Pabandykime nuskaityti duomenų į šį masyvą:
Jei norime išspausdinti reikšmę, esančią 2-oje eilutėje ir 10-ame stulpelyje, rašytume taip:
Indeksai nėra 2 ir 10, nes juk masyvai numeruojami nuo nulio!
Dar verta pastebėti, kad eilutė su indeksu 0 yra pati viršutinė, su indeksu 1 yra žemiau ir taip toliau.