theUser
23-06-2008, 00:32
mi sono praticamente bloccato su questo...
Esercizio: riscrivi la funzione ContaLettera in modo che invece di
elaborare completamente la stringa faccia uso della versione a tre
parametri di Trova.
trova ricerca una lettera in una stringa
def Trova(Stringa, Carattere, Inizio):
if Inizio<len(Stringa):
Indice = Inizio
while Indice < len(Stringa):
if Stringa[Indice] == Carattere:
return Indice
Indice = Indice + 1
return -1
ContaLettere invece conta quante volte una lettera è presente in una stringa
def ContaLettera(stringa,lettera):
i = 0
for lettera in stringa:
if lettera == 'a':
i=i + 1
print i
Il mio problema sta nel fatto che devo modificare ContaLettere...avevo pensato di inserire una variablile globale, ma non so se sia "corretto"...
questo è quello che sono riuscito a fare fino ad ora
def Trova(Stringa, Carattere, Inizio):
if Inizio<len(Stringa):
Indice = Inizio
while Indice < len(Stringa):
if Stringa[Indice] == Carattere:
return Indice
Indice = Indice + 1
return -1
def ContaLettera(stringa,lettera):
i = 0
conta=0
while i<len(stringa):
Trova(stringa,lettera,i)
conta=?
i=i+1
print conta
Esercizio: riscrivi la funzione ContaLettera in modo che invece di
elaborare completamente la stringa faccia uso della versione a tre
parametri di Trova.
trova ricerca una lettera in una stringa
def Trova(Stringa, Carattere, Inizio):
if Inizio<len(Stringa):
Indice = Inizio
while Indice < len(Stringa):
if Stringa[Indice] == Carattere:
return Indice
Indice = Indice + 1
return -1
ContaLettere invece conta quante volte una lettera è presente in una stringa
def ContaLettera(stringa,lettera):
i = 0
for lettera in stringa:
if lettera == 'a':
i=i + 1
print i
Il mio problema sta nel fatto che devo modificare ContaLettere...avevo pensato di inserire una variablile globale, ma non so se sia "corretto"...
questo è quello che sono riuscito a fare fino ad ora
def Trova(Stringa, Carattere, Inizio):
if Inizio<len(Stringa):
Indice = Inizio
while Indice < len(Stringa):
if Stringa[Indice] == Carattere:
return Indice
Indice = Indice + 1
return -1
def ContaLettera(stringa,lettera):
i = 0
conta=0
while i<len(stringa):
Trova(stringa,lettera,i)
conta=?
i=i+1
print conta