Exemplo n.º 1
0
def lire_matrice():
    chaine = Gene.lire("Probleme013")
    i = 0
    mat = "mat = ["
    while i < 50 * 100:
        if i % 50 == 0 and not i == 0:
            mat += "," + str(int(chaine[i:i + 50]))
        else:
            mat += str(int(chaine[i:i + 50]))
        i += 50
    mat += "]"
    print(mat)
Exemplo n.º 2
0
def lister():
    contenu = Gene.lire("Probleme022")
    contenu = contenu[1:] + ",\"*\","

    virgule = contenu.index(',')
    mot = contenu[:virgule - 1]
    noms = []
    while mot[0] != "*":
        noms.append(mot)
        contenu = contenu[virgule + 2:]
        virgule = contenu.index(',')
        mot = contenu[:virgule - 1]
    return noms
Exemplo n.º 3
0
def lire_matrice():
    chaine = Gene.lire("Probleme011")
    i = 0
    mat = "mat = ["
    while i < 20 * 20 * 3:
        if (i // 3) % 20 == 0:
            mat += "[" + str(int(chaine[i:i + 2]))
        elif (i // 3) % 20 == 19 and (i // 3) // 20 == 19:
            mat += "," + str(int(chaine[i:i + 2])) + "]]"
        elif (i // 3) % 20 == 19:
            mat += "," + str(int(chaine[i:i + 2])) + "],"
        else:
            mat += "," + str(int(chaine[i:i + 2]))
        i += 3
    print(mat)
Exemplo n.º 4
0
def lire_mat():
    nombre = Gene.lire("Probleme067")
    mat = "mat = ["
    i = 0
    while i < taille:
        if i != 0:
            mat += ",["
        else:
            mat += "["
        j = 0
        while j <= i:
            pos = (i * (i + 1)) // 2 * 3 + j * 3
            if j != i:
                mat += str(int(nombre[pos:pos + 2])) + ", "
            else:
                mat += str(int(nombre[pos:pos + 2]))
            j += 1
        mat += "]"
        i += 1
    mat += "]"
    print(mat)
Exemplo n.º 5
0
import time

from Utilitaire import Gene

# Résumé : Parcours la chaine de caratères en incrémentant la multiplication de 13 nombres
# à la fois en conservant le plus grand produit. Si l'itérateur arrive sur un 0,
# il passe tous les produits possibles contenant ce dernier.
if __name__ == '__main__':
    temps_debut = time.time()

    taille_produit = 13
    chaine_nombre = Gene.lire("Probleme008")
    produit_max = 0
    i = 0

    while i < len(chaine_nombre) - (taille_produit - 1):

        produit_temporaire = 1
        j = 0
        presence_zero = False

        while j < taille_produit and not presence_zero:
            if produit_temporaire == 0:
                presence_zero = True  # sort de la boucle si croise un 0
                i += 2 * taille_produit - 2  # passe la section où il y a un 0
            else:
                produit_temporaire *= int(chaine_nombre[i + j])  # sinon continue sa recherche de 0
                j += 1

        if produit_max < produit_temporaire:
            produit_max = produit_temporaire  # si trouve un plus grand produit
Exemplo n.º 6
0
    somme = 0
    for i in range(0, len(mot)):
        somme += correspondance(mot[i])
    return somme


def correspondance(char):
    alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    return alphabet.index(char) + 1


# Résumé : On parcourt tous les mots, s'ils sont triangulaires, on ajoute 1 au compteur.
if __name__ == '__main__':
    temps_debut = time.time()

    contenu = Gene.lire("Probleme042")
    contenu = contenu[1:] + ",\"*\","
    cmpt = 0

    virgule = contenu.index(',')
    mot = contenu[:virgule - 1]
    while mot[0] != "*":

        if Nb.triangulaire(nombre_mot(mot)):
            cmpt += 1
        contenu = contenu[virgule + 2:]

        virgule = contenu.index(',')
        mot = contenu[:virgule - 1]

    temps_fin = time.time()