0104 - Eliminare Perechi Vocale

De la Universitas MediaWiki

Cerinţa

Să se scrie un program care citeşte de la tastatură un şir de caractere şi elimină din şir toate perechile de vocale consecutive.

Date de intrare

Programul citeşte de la tastatură un şir de cel mult 255 caractere.

Date de ieșire

Programul afişează pe ecran şirul obţinut prin eliminarea perechilor de vocale consecutive.

Restricţii şi precizări

  • se consideră vocale caracterele din mulțimea {a,e,i,o,u}
  • şirul de caractere citit este alcătuit din litere mici ale alfabetului englez şi spaţii


Exemplul 1

Intrare
aceasta familie are doua case 
Iesire
Datele de intrare corespund restrictiilor impuse
acsta famil are d case

Exemplu 2

Intrare
ACEASTAFAMILIEAREDOUACASE
Iesire
Datele de intrare nu corespund restrictiilor impuse


Rezolvare

def main():
    # Citirea șirului de caractere
    sir = input("Introduceti sirul de caractere: ")

    # Verificarea lungimii șirului
    if len(sir) > 255:
        print("Datele de intrare nu corespund restrictiilor impuse")
        return

    # Inițializarea șirului de ieșire
    sir_iesire = ""

    # Inițializarea setului de vocale
    vocale = set("aeiou")

    # Iterarea prin șirul de intrare și eliminarea perechilor de vocale consecutive
    for i in range(len(sir)):
        if i > 0 and sir[i-1] in vocale and sir[i] in vocale:
            continue
        sir_iesire += sir[i]

    print("Datele de intrare corespund restrictiilor impuse")
    print(sir_iesire)


if __name__ == "__main__":
    main()