Izmenjujoči se soglasniki in samoglasniki
Izmenjujoči se soglasniki in samoglasniki
Pozdravljeni,
ponovno se vam oglašam in posim za pomoč pri naslednjem makroju!
Napiši funkcijo, ki za dano besedo ugotovi, ali je sestavljena iz izmejujočih se soglasnikov in samoglasnikov. Beseda se sme začeti s soglasnikom ali soglasnikom.
primer: beseda -ok
funkcija- ni ok
Hvala, Missy.
ponovno se vam oglašam in posim za pomoč pri naslednjem makroju!
Napiši funkcijo, ki za dano besedo ugotovi, ali je sestavljena iz izmejujočih se soglasnikov in samoglasnikov. Beseda se sme začeti s soglasnikom ali soglasnikom.
primer: beseda -ok
funkcija- ni ok
Hvala, Missy.
Pozdravljeni,
Algoritem je sledeč:
1. Pripravite niz1, ki je sestavljen iz vseh samoglasnikov (niz1="aeiou") in niz2, ki je sestavljen iz vseh soglasnikov (niz2="bc.....")
2. Vzamite prv črko besed in preverite v katerem nizu se nahaja. Če se nahaja med samoglasniki postavite neko spremenljivko niz=1, če se nahaja med soglasniki pa niz=2
3. V zaniki se sprehodite skozi vse preostale črke besede in pri vsaki črki določite kam spada. Če črka spada v niz1 in je prejšnja bila v nizu2 potem je OK ali obratno in zato nadaljujete z zanko. Če ni OK, pa zanko prekinete in rečete, da beseda ne ustreza.
4. Če ste prišli do konca zanke potem beseda ustreza.
Algoritem je sledeč:
1. Pripravite niz1, ki je sestavljen iz vseh samoglasnikov (niz1="aeiou") in niz2, ki je sestavljen iz vseh soglasnikov (niz2="bc.....")
2. Vzamite prv črko besed in preverite v katerem nizu se nahaja. Če se nahaja med samoglasniki postavite neko spremenljivko niz=1, če se nahaja med soglasniki pa niz=2
3. V zaniki se sprehodite skozi vse preostale črke besede in pri vsaki črki določite kam spada. Če črka spada v niz1 in je prejšnja bila v nizu2 potem je OK ali obratno in zato nadaljujete z zanko. Če ni OK, pa zanko prekinete in rečete, da beseda ne ustreza.
4. Če ste prišli do konca zanke potem beseda ustreza.
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator
Pozdravljeni,
nekaj sem poskušala spacati skupaj, pa nimam velikega uspeha! Spodaj sem vam zapisala kodo, ki mi ne dela seveda, ker ne vem če sem sploh na pravi poti! Prosila bi vas če mi lahko malo pomagate!
Lp, Missy.
nekaj sem poskušala spacati skupaj, pa nimam velikega uspeha! Spodaj sem vam zapisala kodo, ki mi ne dela seveda, ker ne vem če sem sploh na pravi poti! Prosila bi vas če mi lahko malo pomagate!
Koda: Izberi vse
Sub preveri()
niz1 = "aeiou"
niz2 = "bcdfghjklmnprsštvzž"
beseda = InputBox("Vnesi besedo za preverjanje!")
If ActiveDocument.Characters.First = niz1 Then
niz = 1
Else
niz = 2
End If
For i = 2 To ActiveDocument.Characters.Last
If ActiveDocument.Characters(i) = niz1 Then
niz = 1
Else
niz = 2
End If
If ActiveDocument.Characters(i) = niz1 And ActiveDocument.Characters(i - 1) = niz2 Or ActiveDocument.Characters(i) = niz2 And ActiveDocument.Characters(i - 1) = niz1 Then
MsgBox ("Beseda je ok!")
Else
MsgBox ("Beseda ni ok!")
End If
Next
End Sub
Pozdravljeni,
Preden sploh nadaljujeva..... Kakšno zvezo ima spodnji IF stavek z besedo, ki ste jo vnesli?
Vi ste vnesli neko besedo v spremenljivko beseda in potem te spremenljivke nikjer več ne uporabljate!!!!!!!
Potrebno bo torej uporabiti funkcije mid (ali left) ter instr!
Preden sploh nadaljujeva..... Kakšno zvezo ima spodnji IF stavek z besedo, ki ste jo vnesli?
Koda: Izberi vse
If ActiveDocument.Characters.First = niz1 Then
Koda: Izberi vse
Ali se prve črka besede nahaja v niz1? To je pravi if stavek!
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator
Hm,
mislim, da ne bo šlo!
Ne vem kako naj uporabim funkcijo instr!
Lp, missy.
mislim, da ne bo šlo!
Koda: Izberi vse
Sub preveri()
niz1 = "aeiou"
niz2 = "bcdfghjklmnprsštvzž"
beseda = InputBox("Vnesi besedo za preverjanje!")
If Left(beseda, 1) = niz1 Then
niz = 1
Else
niz = 2
End If
........
Lp, missy.
Pozdravljeni,
Začetek kode bo takšenle:
Ostanek pa je zelo podoben, le da v for zanki... Uporabili pa boste funkcije InStr ter Mid!
Začetek kode bo takšenle:
Koda: Izberi vse
Sub preveri()
niz1 = "aeiou"
niz2 = "bcdfghjklmnprsštvzž"
beseda = InputBox("Vnesi besedo za preverjanje!")
If InStr(niz1, Left(beseda, 1)) Then
niz = 1
Else
niz = 2
End If
........
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator