Vous êtes sur la page 1sur 3

420-PRG-TT/ 420-1GP-TT - INITIATION À LA PROGRAMMATION RÉSEAU Institut Téccart – Hiver 2023

Analyse du problème et description de l’algorithme


Classe :
Cours : Initiation à la programmation réseau Enseignant : Rodrigue TONGA
Vous avez droit au livre ouvert Il vous est demandé résoudre les Vous avez l’obligation de fournir
exercices proposés

OBJECTIF : Fonctions Condition : Individuel

Les fonctions:
Pour les exercices 1 à 7, retranscrire les programmes, chacun dans un fichier séparé, exécutez-les et expliquez le
résultat

01- def affiche_cubes() :


for k in range(1,10) :
print(" ", k**3, end= ", ")
return
affiche_cubes()
02- def soustraction(n):
return n-3
for k in range(1, 5):
print("\t Pour k = k, "la fonction retourne ", soustraction(k))

03- def carre(n):


carre = n**2
return carre
a,b = 2,5
print("\t ", carre(b) - carre(a))

04- def addition(x):


x=x+2
print(x)
if x < 12:
addition(x)
addition(3)

05- def somme_produit(x, y):


som = x + y
prod = x*y
return som, prod
s, p = somme_produit(8, 5)
print(“\t somme = ", s, “,produit =", p)

Enseignant : rodrigue TONGA Page 1 | 3


420-PRG-TT/ 420-1GP-TT - INITIATION À LA PROGRAMMATION RÉSEAU Institut Téccart – Hiver 2023

06- def max_min(a, b, c):


if a > b > c:
return a, c
elif a > c>b:
return a, b
elif b > a > c:
return b, c
elif b > c > a:
return b, a
elif c > a > b:
return c, b
else:
return c, a
choix = True
while choix:
n1 = int(input("\n\t Saisissez le premier entier : "))
n2 = int(input("\n\t Saisissez le deuxième entier : "))
n3 =int(input("\t Saisissez le troisième entier : u))
print("\n\t le maximum et le minimum sont : ", max_min(n1, n2, n3))
recommencer = input("\n\t\t Désirez-vous recommencer? (O / N): ")
if recommencer not in ("O","o", "oui", "OUI", "ok", "OK"):
choix = False

07- bin(127)
Ob10101111
Ob11111111
hex(64)
hex(99999)
Oxa3be
int(Ob1000000)
int(Oxffff)
n=11110000
print(int(str(n), 2))
print(int(str(n), 16))
"101011".zfill(16)
"101011".zfill(2)
"11100".zfill(8)

Enseignant : rodrigue TONGA Page 2 | 3


420-PRG-TT/ 420-1GP-TT - INITIATION À LA PROGRAMMATION RÉSEAU Institut Téccart – Hiver 2023

Algorithme de cryptage (codage de Jules Cesar)


Problème de la situation

Supposons que 2 individus X (Luc) et Y (Lucy) désirent s'échanger des informations secrètes. Ils décident d'un mot
de passe qu'on appelle la clé, connue par eux seuls.

X code (ou crypte, ou encrypte ou chiffre) son message sous forme de texte incohérent, illisible ou indéchiffrable (si
ce message est une suite de nombres) et les envoie à Y.

Y, à l'aide de la clé, décode (ou décrypte ou déchiffre) le message reçu.

Entre temps, un troisième individu Z, essaie d'intercepter le message et de le décoder lui-même ou avec l'aide d'un
cryptanalyste !...

Le codage (ou le chiffre) de Jules César (101-44 AJC)

Jules César fut l'un des premiers puissants de ce monde à utiliser la cryptologie. Comme il correspondait souvent
avec ses généraux (ou alliés politiques) il utilisait différentes techniques pour coder ses messages. Une de ces
méthodes, consistait à décaler chaque lettre du message, de plusieurs lettres vers l'avant dans l'alphabet. Ainsi,
selon ce codage, en décalant de 3 lettres, la lettre A devient la lettre D et la lettre X, la lettre A, comme le montre le
tableau suivant.

Alphabet A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Code césar D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

Le codage de César est donc, une substitution de lettres par permutation circulaire (des lettres). Par exemple, en
décalant de 3 lettres, l'encodage du message « AMER SON PROCHAIN» donne

«DLPHU VRQ SURFKDLQ».

Pour ajouter du mystère dans le message codé, Jules César s'amusait à grouper le message en mots de 2, 3, 4,
lettres, Ainsi en mots de 4 lettres, le message codé devient : «DLPH UVRQ SURF KDLQ».

1. Donnez l’équivalent encodé de votre nom pour une clé à 3 lettres vers l’avant.
2. Écrire une fonction en python qui porte votre nom (votre_nom_encodage) et qui est capable d’encoder un
message avec une clé qui est égale à la longueur de votre nom.
Exemple :
pour le nom “RODRIGUE”, la clé est 8 (len (“RODRIGUE”)=8)

print(rodrigue_encodage(“BONJOUR TECCART”)) affiche

JWVRWCZ BMKKIZB

Enseignant : rodrigue TONGA Page 3 | 3

Vous aimerez peut-être aussi