Menu


1NSI

Les exercices python à connaître

programme de première
E1:listes
E2:listes
E3:listes
E4:tri par insertion
E5:tri par séléction
E6:dictionnaires / string
E7:tuple
E8:boucle / booléen / liste
E9:string
E10:dictionnaire / fonctions
E11:booléens / listes
récursivité
E1:somme d'entiers
E2:chiffres romains
E3:factorielle
E4:rendu de monnaie
POO
E1:la classe Chien
E2:carrés semi-magiques
E3:filtre sur une pile
E4:durées en POO
Arbres
E1: Hauteur et taille d'un arbre
E2: parcours 1
E3: parcours 2
E4: Recherche dans un ABR
E5: Arbre binaire additif
E6: Arbre binaire de recherche
Diviser pour régner
E1:sommet d'un tableau
E2:Indice d'une panne
E3:calcul d'une puissance
Sécurisation des communications
E1:code César
E2:Vigenre
programmation dynamique
E1:Nombres de Delannoy
E2:Communication des acacias
E2:Mineur (le meilleur filon)

carrés semi-magiques

Nous travaillons dans cet exercice sur des tableaux carrés d'entiers positifs.
Nous appelons « carré d'ordre n » un tableau de n lignes et n colonnes dont chaque case contient un entier positif.
Un carré est dit « semi-magique » lorsque les sommes des éléments situés sur chaque ligne, chaque colonne sont égales. Cette somme est appelée constante magique ou densité du carré semi-magique.

1 7
7 1
Ce carré est semi-magique car la somme de chaque ligne et de chaque colonne est égale à 8.
3 4 5
4 4 4
5 4 3
Ce carré est semi-magique car la somme de chaque ligne et de chaque colonne est égale à 12.
2 9 4
7 0 3
6 1 8
Ce carré n'est pas semi-magique car la somme de la première ligne est égale à 15 alors que celle de la deuxième ligne est égale à 10.

La classe Carre ci-après contient des méthodes qui permettent de manipuler des carrés.

  • La méthode __init__ permet de créer un carré sous forme d'un tableau à deux dimensions à partir d'un p-uplet d'entiers nombres. Nous remarquons que l'ordre du carré créé est la racine carrée de la longueur du p-uplet passé en paramètre. Par exemple avec un p-uplet de taille 4, on crée un carré d'ordre 2, avec un de taille 9, un carré d'ordre 3.
    par exemple le derneir carré de l'exemple sera créer à partie du tuple (2, 9, 4, 7, 0, 3, 6, 1, 8)
  • La méthode affiche permet d'afficher le carré créé.
  • La méthode somme_ligne prend en paramètre un entier i et renvoie la somme des éléments de la ligne i du carré.
  • La méthode somme_colonne prend en paramètre un entier j et renvoie la somme des éléments de la colonne j du carré.
  • La méthode est_semi_magique renvoie True si le carré est semi magique, False sinon.

Compléter le code ci-dessous

source : https://codex.forge.apps.education.fr