Seminarska naloga-Programiranje-2.naloga

Seminarska naloga-Programiranje-2.naloga

Avtor: Martina Nemec

Besedilo naloge

Napiši funkcijski podprogram, ki za dano besedo vrne število zlogov v njej. Besedo vedno sestavlja vsaj en zlog. Vsak samoglasnik določa svoj zlog. Črko r, ki jo obdajatadva soglasnika, štejemo kot samoglasnik.

Primeri:

Stej('matematika')=5

Stej('z ')=1

Stej('Prstan')=2

Malo bolj problematični so primeri, ko se beseda začne na r, temu pa sledi soglasnik. Na primer, rjast ima dva zloga in ne enega, rjavolas pa verjetno tri in ne štiri. Tvoj podprogram naj tak r-je razglasi ali za samoglasnike ali pa za soglasnike, kakor se ti zdi pač bolj prikladno.

Naloga

Pri tej nalogi moramo paziti predvsem na besede, ki se začnejo na črko r. Ker pri zlogovanju besed ni nekega določenega pravila bomo privzeli, da obstajajo izjeme. Se pravi, da program ne bo deloval za vse besede.

Uporabili bomo pravilo:

  • kolikor samoglasnikov je v besedi, toliko zlogov ima beseda.
  • če je prva črka r in druga soglasnik potem ima beseda en zlog več
  • če je druga črka r ter prva in tretja soglasnik, potem ima beseda en zlog več.

Definirajmo neko metodo, ki ima kot parameter podano besedo, ki jo vpišemo.

Metoda a.lower() nam spremeni niz a v majhne črke, s tem se izognemo velikim črkam, ki bi lahko nastopale v kateri besedi.

Definiramo še niz, ki vsebuje samoglasnike in števec, ki nam bo štel zloge.

(slika1.jpg)

S pomočjo for zanke pogledamo črke v besedi. Če je katera črka iz niza, ki vsebuje samoglasnike potem števec povečamo za 1.

(slika2.jpg)

Sedaj pa definiramo še posebna primera. Pomagamo si z if stavkom.

  • Če je prva črka r in druga soglasnik(zapisali smo vse ostale črke, ki niso samo glasniki), potem števec spet povečamo za 1.
  • Če je druga črka r ter prva in tretja soglasnik, potem števec spet povečamo za 1.
(slika3.jpg)

Moramo paziti, da če beseda vsebuje samo eno črko, to črko štejemo kot zlog. Spet si pomagamo z if stavkom: Če po vseh korakih, ki smo jih do sedaj izvedli števec ostane 0, potem nam naj program vrne 1.

Program nam na koncu mora vrniti števec.

Program

(slika4.jpg)

Preizkus programa

Tesntni primer prikazan s filmom:

0%
0%