Etape 3 : Calcul de la structure d’un atome (épisode 2)

Notions abordées

  • Tests

  • Initialisation et concaténation de chaînes de caractères

  • Conversion de type

  • types de variables (int, float, string, list)

  • Listes

Références pyspc

Consigne :

Etudier le programme ci-dessous puis effectuer la mise en situation présentée dans la dernière cellule.


Télécharger le pdf | Télécharger le notebook | Lancer le notebook sur binder (lent)

[1]:
# programme calculant la structure de l'atome

# Liste non modifiable (ou tuple) des éléments
# chimiques de la classification périodique

elements = [
"Hydrogène H",
"Hélium He",
"Lithium Li",
"Béryllium Be",
"Bore B",
"Carbone C",
"Azote N",
"Oxygène O",
"Fluor F",
"Néon Ne",
"Sodium Na",
"Magnésium Mg",
"Aluminium Al",
"Silicium Si",
"Phosphore P",
"Soufre S",
"Chlore Cl",
"Argon Ar",
"Potassium K",
"Calcium Ca",
"Scandium Sc",
"Titane Ti",
"Vanadium V",
"Chrome Cr",
"Manganèse Mn",
"Fer Fe",
"Cobalt Co",
"Nickel Ni",
"Cuivre Cu",
"Zinc Zn",
"Gallium Ga",
"Germanium Ge",
"Arsenic As",
"Sélénium Se",
"Brome Br",
"Krypton Kr",
"Rubidium Rb",
"Strontium Sr",
"Yttrium Y",
"Zirconium Zr",
"Niobium Nb",
"Molybdène Mo",
"Technétium Tc",
"Ruthénium Ru",
"Rhodium Rh",
"Palladium Pd",
"Argent Ag",
"Cadmium Cd",
"Indium In",
"Étain Sn",
"Antimoine Sb",
"Tellure Te",
"Iode I",
"Xénon Xe",
"Césium Cs",
"Baryum Ba",
"Lanthane La",
"Cérium Ce",
"Praséodyme Pr",
"Néodyme Nd",
"Prométhium Pm",
"Samarium Sm",
"Europium Eu",
"Gadolinium Gd",
"Terbium Tb",
"Dysprosium Dy",
"Holmium Ho",
"Erbium Er",
"Thulium Tm",
"Ytterbium Yb",
"Lutécium Lu",
"Hafnium Hf",
"Tantale Ta",
"Tungstène W",
"Rhénium Re",
"Osmium Os",
"Iridium Ir",
"Platine Pt",
"Or Au",
"Mercure Hg",
"Thallium Tl",
"Plomb Pb",
"Bismuth Bi",
"Polonium Po",
"Astate At",
"Radon Rn",
"Francium Fr",
"Radium Ra",
"Actinium Ac",
"Thorium Th",
"Protactinium Pa",
"Uranium U",
"Neptunium Np",
"Plutonium Pu",
"Américium Am",
"Curium Cm",
"Berkélium Bk",
"Californium Cf",
"Einsteinium Es",
"Fermium Fm",
"Mendélévium Md",
"Nobélium No",
"Lawrencium Lr",
"Rutherfordium Rf",
"Dubnium Db",
"Seaborgium Sg",
"Bohrium Bh",
"Hassium Hs",
"Meitnérium Mt",
"Darmstadtium Ds",
"Roentgenium Rg",
"Ununbium Uub",
"Ununtrium Uut",
"Ununquadium Uuq",
"Ununpentium Uup",
"Ununhexium Uuh",
"Ununseptium Uus",
"Ununoctium Uuo"]

# Entrées
Z = 17
A = 35

# Détermination de la configuration électronique
# (concaténation de chaines de caractères)

if Z <= 2:
    configuration = "1s" + str(Z)
elif Z <=4:
    configuration = "1s" + str(2) + " 2s" + str(Z-2)
elif Z <= 10:
    configuration = ("1s" + str(2) + " 2s" + str(2) +
                     " 2p" + str(Z-4))
elif Z <= 12:
    configuration = ("1s" + str(2) + " 2s" + str(2) +
                     " 2p" + str(6) + " 3s" + str(Z-10))
elif Z <= 18:
    configuration = ("1s" + str(2) + " 2s" + str(2) +
                     " 2p" + str(6) + " 3s" + str(2) +
                     " 3p" + str(Z-12))
else :
    configuration = ("Impossible car limité à des numéros "
                     "atomiques inférieurs ou égal à 18")



# Impression des résultats
print ("\nRESULTATS")
# Impression de l'élément et de son symbole
print('{:35}'.format("Il s'agit de l'élément "), elements[Z-1])
# Impression de la structure de l'atome
print('{:35}'.format('Le nombre de protons est: '), Z )
print('{:35}'.format('Le nombre de neutrons est: '), A - Z)
print('{:35}'.format("Le nombre d'électrons est: "), Z)
print("")
# Impression de la configuration électronique
print('{:65}'.format("Le remplissage des sous-couches électroniques "
                     "donne la configuration électronique : ")
      , configuration)


RESULTATS
Il s'agit de l'élément              Chlore Cl
Le nombre de protons est:           17
Le nombre de neutrons est:          18
Le nombre d'électrons est:          17

Le remplissage des sous-couches électroniques donne la configuration électronique :  1s2 2s2 2p6 3s2 3p5

Mise en situation

Modifier le programme précédent (calcul de la vitesse d’une voiture) afin d’indiquer à l’utilisateur si le conducteur est en infraction en ville.