0% ont trouvé ce document utile (0 vote)
5 vues3 pages

TP Programmation C Python

Le document présente un travail pratique de programmation en C et Python, où l'utilisateur est invité à entrer une adresse IP et un masque pour calculer le réseau correspondant. La première partie décrit l'implémentation en C, tandis que la seconde partie montre une implémentation similaire en Python. Des difficultés de compilation ont été rencontrées avec certains environnements, ce qui a conduit à l'utilisation de CMD pour l'exécution du programme.

Transféré par

marrionwilliam24
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
5 vues3 pages

TP Programmation C Python

Le document présente un travail pratique de programmation en C et Python, où l'utilisateur est invité à entrer une adresse IP et un masque pour calculer le réseau correspondant. La première partie décrit l'implémentation en C, tandis que la seconde partie montre une implémentation similaire en Python. Des difficultés de compilation ont été rencontrées avec certains environnements, ce qui a conduit à l'utilisation de CMD pour l'exécution du programme.

Transféré par

marrionwilliam24
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

AGUSHA MARRION WILLIAM

MASTER 1 TELECOM ET ADMIN RESEAU

TRAVAIL PRATIQUE DE PROGRAMMATION C ET PYTHON

PARTIE 1. IPLEMENTATION EN C
Programme en langage C

#include <stdio.h>

int main() {
int ip[4], mask[4], network[4];
int i;
for (i = 0; i < 4; i++) {
int valid = 0;
while (!valid) {
printf("Entrez l'octet %d de l'adresse IP (0-255) : ", i + 1);
if (scanf("%d", &ip[i]) == 1) {
if (ip[i] >= 0 && ip[i] <= 255) {
valid = 1;
} else {
printf("Erreur : l'octet doit etre entre 0 et 255.\n");
}
} else {
printf("Erreur : veuillez entrer un entier.\n");
while(getchar() != '\n');
}
}
}
for (i = 0; i < 4; i++) {
int valid = 0;
while (!valid) {
printf("Entrez l'octet %d du masque (0-255) : ", i + 1);
if (scanf("%d", &mask[i]) == 1) {
if (mask[i] >= 0 && mask[i] <= 255) {
valid = 1;
} else {
printf("Erreur : l'octet doit etre entre 0 et 255.\n");
}
} else {
printf("Erreur : veuillez entrer un entier.\n");
while(getchar() != '\n');
}
}
}
for (i = 0; i < 4; i++) {
network[i] = ip[i] & mask[i];
}
RESULTAT APRES EXECUTION

PARTIE 2. IMPLEMENTATION EN PYTHON


Programme en lange Python

ip = input("Entrez une adresse IP (ex: [Link]) : ")


octets = [Link](".")
if len(octets) != 4:
print("Adresse IP invalide")
else:
ip_binaire = []
i=0
while i < 4:
try:
valeur = int(octets[i])
if valeur < 0 or valeur > 255:
print("Adresse IP invalide")
break
binaire = ""
n = valeur
while n > 0:
binaire = str(n % 2) + binaire
n = n // 2
while len(binaire) < 8:
binaire = "0" + binaire
ip_binaire.append(binaire)
i += 1
except ValueError:
print("Adresse IP invalide")
break
else:
print("Adresse IP en binaire :")
print(".".join(ip_binaire))

RESULTAT PRES EXECUTION

Difficulté rencontrée
Nous avons rencontré une difficulté lors de la compilation et exécution du programme
C avec MSYS2 MINGW64, et même sur le terminal Git Bash du Vs code, nous n’avons pas pu
résoudre ce problème et raison pour laquelle nous avons choisi CMD pour compiler et exécuter le
programme compte tenu du temps qui nous est resté, et après continuer à chercher la solution.

Vous aimerez peut-être aussi