Chaînes de caractères

Voyelles ou Consonnes.

  1. Ecrire un programme en Python qui demande de saisir une chaîne de caractères et d’afficher le nombre de voyelles dans cette chaîne de caractères.
  2. Résolution de l'exercice "Nombre de voyelles".

    #Ce programme permet de compter le nombre de voyelles dans un mot
    voyelles = "aeiouy"
    nombre = 0
    mot = input("Entrez un mot : ")
    for lettre in mot :
        if lettre in voyelles:
            nombre = nombre + 1   
    print("Le nombre de voyelles dans ", mot, "est ", nombre)
  3. Modifier ce programme pour qu’il affiche le nombre de consonnes.
  4. Résolution de l'exercice "Nombre de consonnes".

    #Ce programme permet de compter le nombre de consonnes dans un mot
    from math import *
    from random import *
    voyelles = "aeiouy"
    nombre = 0
    mot = input("Entrez un mot : ")
    for lettre in mot :
        if lettre not in voyelles:
            nombre = nombre + 1   
    print("Le nombre de consonnes dans ", mot, "est ", nombre)

Présence d'un caractère dans un mot.

    Ecrire un programme qui fait les tâches suivantes :

  • Le joueur 1 entre un mot dans le programme.
  • Le joueur 2 propose une lettre.
  • L’ordinateur indique alors si cette lettre est présente ou non dans le mot. Si oui, il précise combien de fois elle apparaît.

Résolution de l'exercice "Présence d'un caractère dans un mots".

"""
•   Le joueur 1 entre un mot dans le programme.
•   Le joueur 2 propose une lettre.
•   L’ordinateur indique alors si cette lettre est présente ou non dans le mot. Si oui, il précise combien de fois elle apparaît.
"""
mot = input("Entrez un mot : ")
lettre = input("Proposez une lettre : ")
n=0
for i in mot :
    if i == lettre:
        n+=1
#n = mot.count(lettre)
if n == 0:
    print("la lettre ", lettre, "n'apparaît pas dans le mot", mot)
else :
    print("la lettre ", lettre, "apparaît", n, " fois dans le mot \"", mot,"\"")

Une autre solution

"""
•   Le joueur 1 entre un mot dans le programme.
•   Le joueur 2 propose une lettre.
•   L’ordinateur indique alors si cette lettre est présente ou non dans le mot. Si oui, il précise combien de fois elle apparaît.
"""
mot = input("Entrez un mot : ")
lettre = input("Proposez une lettre : ")
n = mot.count(lettre)
if n == 0:
    print("la lettre ", lettre, "n'apparaît pas dans le mot", mot)
else :
    print("la lettre ", lettre, "apparaît", n, " fois dans le mot \"", mot,"\"")

Mélanger les caractères d'un mot.

  1. Ecrire un programme qui demande un mot et l’ordinateur mélange les lettres d’une façon aléatoire et affiche le mot constitué par les lettres mélangées.
  2. Résolution de l'exercice "melanger les caractères d'un mot".

    """
    Ce programme permet de proposer un mot et de mélanger les lettres du mot
    entre elles.
    """
    from random import *
    mot = input("joueur 1 : Entrez un mot : ")
    melange = mot
    for i in range(len(mot)):
        m = randint(0,len(mot)-1)
        n = randint(0,len(mot)-1)
        nouveau = ""
        for j in range(len(melange)):
            if j == m:
                nouveau = nouveau + melange[n]
            elif j == n:
                nouveau = nouveau + melange[m]
            else :
                nouveau = nouveau + melange[j]
        melange = nouveau
    print("Voici le mot mélangé :", melange)
  3. Réaliser un programme dans lequel le joueur1 entre un mot, l’ordinateur mélange les lettres, affiche le mot constitué par les lettres mélangées. Le joueur2 doit alors retrouver le mot initial.
  4. Résolution de l'exercice "Retrouver le mot initial".

    """
    Ce programme permet au premier joueur de proposer un mot, mélanger les lettres
    entre elles et demander au second joueur de trouver le mot proposé au départ
    """
    from random import *
    mot = input("joueur 1 : Entrez un mot : ")
    melange = mot
    for i in range(len(mot)):
        m = randint(0,len(mot)-1)
        n = randint(0,len(mot)-1)
        nouveau = ""
        for j in range(len(melange)):
            if j == m:
                nouveau = nouveau + melange[n]
            elif j == n:
                nouveau = nouveau + melange[m]
            else :
                nouveau = nouveau + melange[j]
        melange = nouveau
    print("Voici le mot mélangé :", melange)
    prop = "&&&"
    while prop != "":
        prop = input("joueur 2 : Entrez une proposition :")
        if prop == mot :
            print("Bravo, vous avez trouvé le mot ")
            prop = ""
        else :
            print("Non, vous n'avez pas trouvé le mot exact ")

Scrabble.

Le Scrabble est un jeu de société dont l’objectif est de cumuler des points : On place dans une chaîne 7 lettres correspondant au tirage du jeu d’un joueur de scrabble.

1 point EAINORSTUL
2 points DMG
3 points BCP
4 points FHV
8 pointsJQ
10 pointsKWXYZ

Remarque

Pas de répétition de lettres, c’est-à-dire, si on appelle jeu les 7 lettres du joueur et mot le mot que l’on veut écrire avec ces lettres, il faut que pour chaque caractère du mot, le nombre d’apparitions soit supérieur ou égal au nombre d’apparitions de ce même caractère dans le jeu.

  1. Réaliser un programme qui demande au joueur un mot et lui dit s’il peut en effet le former avec ses 7 lettres.
  2. Résolution de l'exercice "Mot de sept lettres".

    """
    Ce programme consiste à placer dans une chaîne 7 lettres correspondant
    au tirage du jeu d'un joueur de scrable, demander au joueur le mot et
    vérifier s'il peut le former avec ses 7 lettres 
    """
    from random import *
    jeu = input("entrer les 7 lettres de votre jeu : ")
    while len(jeu) != 7 :
        jeu = input("entrer les 7 lettres de votre jeu : ")
    mot = input("Entrez un mot que vous voulez érire : ")
    jeu, mot = jeu.upper(), mot.upper()
    possible = True
    for lettre in mot:
        if jeu.count(lettre) < mot.count(lettre):
            possible = False
    if possible:
        print("On peut écrire ", mot, "avec ", jeu)
    else :
        print("On ne peut pas écrire ", mot, "avec ", jeu)
  3. Réaliser un programme qui compte le nombre de points que rapporte un mot au scrabble.
  4. Résolution de l'exercice "Le nombre de points".

    """
    Ce programme consiste à placer dans une chaîne 7 lettres correspondant
    au tirage du jeu d'un joueur de scrable, demander au joueur le mot et
    vérifier s'il peut le former avec ses 7 lettres et de compter le nombre
    de points que rapporte un mot au scrabble. 
    """
    from random import *
    jeu = input("entrer les 7 lettres de votre jeu").upper()
    mot = input("Entrez un mot que vous voulez érire : ").upper()
    possible = True
    for lettre in mot:
        if jeu.count(lettre) < mot.count(lettre):
            possible = False
    if possible:
        print("On peut écrire ", mot, "avec ", jeu)
        points = 0
        for lettre in mot :
            if lettre in 'EAINORSTUL':
                points = points + 1
            if lettre in 'DMG':
                points = points + 2
            if lettre in 'BCP':
                points = points + 3
            if lettre in 'FHV':
                points = points + 4
            if lettre in 'JQ':
                points = points + 8
            if lettre in 'KWXYZ':
                points = points + 10
        print("le mot ", mot, "rapporte ", points, "points.")         
    else :
        print("On ne peut pas écrire ", mot, "avec ", jeu)