Python pour le calcul scientifique/Premiers programmes

Premier programme

modifier

Écrivons un programme qui effectue les opérations suivantes :

  • affiche un texte demandant de saisir un nombre entier ;
  • saisie d'une valeur par l'utilisateur et affectation à une variable ;
  • vérification que c'est bien un nombre entier qui a été saisi ;
  • le cas échéant, affichage du résultat d'un calcul simple (ajouter 5 au nombre saisi), sinon affiche un message d'erreur ;
  • affiche un message de fin.
a = input("Entrez un nombre\n")
if a.isdigit():
    print("Résultat : ", float(a)+5, ".\n")
else:
    print("Ce n'est pas un nombre.\n")
print("Fin.")

Exemple :

Entrez un nombre
5
Résultat :  10.0 .

Fin.

Entrez un nombre
a
Ce n'est pas un nombre.

Fin.


Nous avons les commandes suivantes :

  • variable = valeur (opérateur « égal ») : affectation d'une valeur à une variable ;
  • input(chaîne) : affiche la chaîne et permet de saisir une chaîne de caractère ;
  • variable.isdigit() : fonction indiquant si la variable ne contient que des chiffres (valeur booléenne vraie, True) ou pas (False) ;
  • if booléen: […] else: (structure de contrôle) : teste le booléen après if,
    • s'il est vrai, exécute le bloc d'instructions qui suit,
    • s'il est faux, exécute le bloc d'instructions qui suit else ;
  • float(expression) : transforme l'expression en un nombre décimal à virgule flottante ;
  • nombre + nombre (opérateur « plus » entre deux nombres) : addition ;
  • print(expression) : affiche l'expression ; la chaîne de caractères \n provoque un retour à la ligne.

Dans la structure de contrôle if […] else, un bloc d'instruction est la série de lignes :

  • qui suit le deux-points « : » ;
  • qui commence par l'indentation de quatre espaces.

Les espaces en début de ligne sont donc importants.

On peut rédiger le même programme « à la sauce » C :

def main() -> None:
    a = input("Entrez un nombre\n")
    if a.isdigit():
        print("Résultat : ", float(a)+5, ".\n")
    else:
        print("Ce n'est pas un nombre.\n")
    print("Fin.")

main()

On commence par définir une fonction principale appelée main() puis on appelle cette fonction. La définition de la fonction est de la forme : def nomDeFonction:<bloc d'instructions>. Ici encore, le bloc d'instructions est la série de commandes qui suit le deux-points et commence par une indentation. Le bloc d'instruction se termine à la première ligne qui n'a pas d'indentation ; il contient lui-même des blocs d'instructions.

Deuxième programme

modifier

Écrivons un programme qui effectue les opérations suivantes :

  • affiche un texte demandant de saisir une chaîne de caractères ;
  • saisie d'une chaîne de caractères par l'utilisateur et affectation à une variable ;
  • première ligne : affichage de la première et de la dernière lettre du mot ;
  • deuxième ligne : affichage des deux premières et des deux dernières lettres ;
  • le tout étant justifié (aligné à gauche et à droite).
a = input("Entrez une chaîne de caractères :\n")
l = len(a)
L=2*l+1
for i in range(l):
    print(a[0:i+1]+(L-2*i)*" "+a[-i-1:])

Exemple :

Entrez une chaîne de caractères :
abcde
a           e
ab         de
abc       cde
abcd     bcde
abcde   abcde

Notes et références

modifier

Découverte de Python et de Jupyter < > Fonctions mathématiques générales