2X: Daugiau pratimų

Šioje pamokoje rasite papildomų užduočių. Kai kurios iš jų yra sunkesnės, tačiau nepanikuokite, galite bet kada jas praleisti ir sugrįžti kai labiau pasitikėsite savo jėgomis. Visas užduotis galite peržiūrėti puslapyje Mano progresas.

Pradėsime nuo klaidų taisymo. Pirmoji programa bando suskaičiuoti populiacijos augimą, tačiau naudoja netinkamą formulę.

Programavimo pratimas: Populiacijos augimas
Ištaisykite klaidą šioje programoje: ji turi suskaičiuoti šalies populiacijos augimą per tris metus. Tarkime, kad pradedame skaičiuoti nuo 1000 guventojų 2012-tais m., o gyventojų skaičius padidėja 10% kasmet. Galite pakeisti tik tris simbolius.
Užuomina.

Kitose šios pamokos užduotyse prisiminsime min ir max funkcijas.

Sudėtingų išraiškų supaprastinimas

Pasirinkimo užduotis: Supaprastinimas
Kaip supaprastinti šią išraišką?

max(x - 3, min(x + 10, x + 5))
Teisingai! Kadangi x + 5 yra mažiau nei x + 10, mes galime pakeisti min(x + 10, x + 5) į x + 5. Tada, visa išraiška atrodo taip max(x - 3, x + 5). Kadangi x + 5 visada yra daugiau nei x - 3, naudodami šią formuluotę, gausime teisingą atsakymą.

Užrašykite formuluotę painiau

Programavimo pratimas: Užrašymas painiau
Tarkime, kad programa sukuria du kintamuosius A ir B. Parašykite programą kuri atspausdins reikšmę

min(A, B)
Tačiau, jūs negalite naudoti min funkcijos. Vietoje jos naudokite max funkciją. Kurią, gudraudami, galite priversti elgtis panašiai kaip min. Pirma užuominaAntra užuomina

Mokesčių skaičiuoklė

Programavimo pratimas: Mokesčių skaičiuoklė
Kreditinių kortelių kompanija skaičiuoja kliento mokestį pagal tam tikras taisykles. Mokestis turi būti 10 € arba 2.1% nuo kliento sąskaitoje esančios sumos.  Jei mokestis yra didesnis nei sąskaitos likutis, tuomet mokamas tik likutis. Naudodami min ir max funkcijas, parašykite programą, kuri atspausdina, kiek reikia sumokėti. Tarkime, sąskaitos dydis yra kintamajame balance. Valiutos ženklo spausdinti nereikia.
Pirmas pavyzdys: jei jūsų sąskaitoje yra 1000, programa turėtų atspausdinti 21.
Antras pavyzdys: jei Jūsų sąskaitoje yra 600, programa turėtų atspausdinti 12.6.
Trečias pavyzdys: jei sąskaitoje yra 25, programa turi atspausdinti 10.
Ketvirtas pavyzdys: jei sąskaitoje  8, programa turi atspausdinti 8.
Užuomina

Rikiavimas

Paskutinis uždavinys yra daauuuug sunkesnis! Turėsime surikiuoti skaičius, tačiau labai keistai. Yra daug paprastesnių ir greitesnių rikiavimo algoritmų, apie juos galite sužinoti čia.
Nebijokite praleisti šio uždavinio, jei jis pasirodys pernelyg sunkus. Visada galite sugrįžti, nes matysite neatliktą „Mano progresas“ puslapyje.

Sumaišytų eilučių užduotis: Rikiavimo galvosūkis
Sudėliokite kodo eilutes taip, kad programa x, y ir z išrikiuotų didėjimo tvarka.
. Užuomina.
  • tmp = max(x, y)
  • tmp = max(y, z)
  • y = tmp
  • z = tmp
  • x = min(x, y)
  • y = tmp
  • y = min(y, z)
  • tmp = max(x, y)
  • x = min(x, y)

Šauniai padirbėjai! :)