Bolyais C++ kurzus

Download Report

Transcript Bolyais C++ kurzus

Bolyais C++ kurzus
Nyelvi alapok II.
Mit tudunk eddig?
• Programkód felépítése, fordítása
• Egyszerű IO
 cin, cout
• Változó, konstans
• Beépített típusok
 char, int, double, bool, unsigned, …
• Kifejezések, operátorok
 aritmetikai, logikai, relációs, értekadó (*=, /=), léptető (++, --)
• Alapvető vezérlési szerkezetek
 elágazás (if-then-else, switch-case), ciklus (while, do-while, for)
Bemelegítés: Feladatok 0.
1. Két egyenes metszéspontja (y=a1∙x+b1, y=a2∙x+b2
egyenletű egyenesek, a1, b1, a2, b2 adottak)
2. Kamat számítása (adott a kezdeti pénzösszeg és a
kamatláb)
3. Oszthatóság vizsgálata (adott két egész szám:
osztandó és osztó)
4. Síkidomok területének számítása (sugarával adott kör,
oldalaival, csúcspontjaival adott téglalap, háromszög)
5. Fahrenheit – Celsius átváltás
6. Euklidészi algoritmus legnagyobb közös osztó
meghatározására
7. Hatványozás Legendre-módszerrel
Feladatok I.
1. Olvass be egy pozitív egész számot, és
i. írasd ki az osztóit
ii. írasd ki a nála kisebb 2-hatványokat
2.
Olvass be két pozitív egész számot, és írasd ki azokat a pozitív
egészeket, melyik egyiknek osztói, a másiknak nem.
3. Olvass be egész számokat, amíg
i. 0-t olvasol, és írd ki, hogy hányszor olvastál
ii. 0-nál nagyobbat olvasol, és írd ki az
átlagukat, a minimumot, és a maximumot
4. Másodfokú egyenlet-megoldó
Ismerkedés…
• Egyszerű alprogram
• Összetett típusok
 struct, typedef
• Statikus tömbök
• STL tárolók
 vector, list, deque, string
• C library
 matematikai, stb. (math.h, stdlib.h, exit, rand, …)
• IO
 getline, egyszerű fájlkezelés
• Globális, lokális változó, láthatóság
Feladatok II.
0
Véletlen input generálás a feladatokhoz. (rand)
1.
2.
3.
4.
5.
Palindrom-e a beolvasott szöveg? (string)
Hány szóból áll a beolvasott sor? (getline)
Adott a hónap, milyen évszak van? (string, tömb)
Egész hatványkitevőre emelés függvény
Faktoriálist kiszámító függvény
(rekurzív és iteratív)
6. Hanoi tornyai (rekurzió)
7. Eratoszthenészi szita (vector)
8. Prímtényezőkre bontás
Feladatok II.
9. Az év 365 napjára adott a napi átlaghőmérséklet.
i.
ii.
iii.
iv.
Az év melyik napján volt először magasabb a napi
átlaghőmérséklet 15°C-nál?
Hány nap volt a napi átlaghőmérséklet az éves átlag felett?
… Írjuk is ki ezeket a napokat, a darabszám után!
Leghidegebb és legmelegebb nap.
10. Adott pontszámok egy sorozata, rendezzük sorba!
i.
ii.
Név-pontszám párok adottak, készítsünk rangsort!
… Keressünk 10 pontot elért versenyzőt! (logaritmikus keresés)
11. Adott síkbeli pontok egy halmaza. (struct)
i.
ii.
iii.
Keressük meg az origóhoz legközelebb eső pontot.
Hány pont van az 1 sugarú körön kívül?
Illesszünk egyenest a pontokra!