Académique Documents
Professionnel Documents
Culture Documents
printf("\n welcome to the hadilas application to have your account information .\n");
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <locale.h>
struct client {
char nom[50];
char prenom[50];
char adresse[100];
char telephone[20];
double solde;
};
void menu();
void ajouter();
void afficher();
void rechercher();
void modifier();
void supprimer();
void sauvegarder();
void charger();
double calculerSoldeTotal();
// Fonction principale
int main() {
tab = NULL;
nb = 0;
strcpy(fichier, "banque.dat");
charger();
menu();
free(tab);
return 0;
void menu() {
do {
// Affichage du menu
printf("***** Menu principal *****\n");
printf("**************************\n");
scanf("%d", &choix);
// Traitement du choix
switch (choix) {
case 1:
break;
case 2:
break;
case 3:
break;
case 4:
break;
case 5:
break;
case 6:
printf("Le solde total de la banque est : %.2lf\n", calculerSoldeTotal());
break;
case 7:
break;
case 8:
break;
default:
printf("Choix invalide. Veuillez réessayer.\n"); // Message d'erreur si le choix n'est pas valide
break;
} while (choix != 8); // Répétition du menu tant que le choix n'est pas 8 (quitter)
// Fonction qui ajoute un nouveau client au tableau dynamique et met à jour le nombre de clients
void ajouter() {
struct client c; // Variable locale pour stocker les informations du nouveau client
scanf("%s", c.nom);
scanf("%s", c.prenom);
scanf("%s", c.adresse);
scanf("%s", c.telephone);
// Validation du solde
do {
if (scanf("%lf", &c.solde) != 1) {
} else if (!estSoldeValide(c.solde)) {
} while (!estSoldeValide(c.solde));
// Vérification de l'allocation
if (tab == NULL) {
exit(1);
tab[nb] = c;
nb++;
// Message de confirmation
if (nb == 0) {
return;
printf("--------------------\n");
// Fonction qui recherche un client par son nom et affiche ses informations
void rechercher() {
int trouve; // Variable locale pour indiquer si le nom a été trouvé ou non
scanf("%s", nom);
trouve = 0;
if (strcmp(nom, tab[i].nom) == 0) {
printf("Client trouvé:\n");
trouve = 1;
// Arrêt de la boucle
break;
if (trouve == 0) {
// Message d'erreur
// Fonction qui modifie les informations d'un client en fonction de son nom
void modifier() {
int trouve; // Variable locale pour indiquer si le nom a été trouvé ou non
scanf("%s", nom);
trouve = 0;
if (strcmp(nom, tab[i].nom) == 0) {
printf("Nom: ");
scanf("%s", tab[i].nom);
printf("Prénom: ");
scanf("%s", tab[i].prenom);
printf("Adresse: ");
scanf("%s", tab[i].adresse);
printf("Téléphone: ");
scanf("%s", tab[i].telephone);
// Validation du solde
do {
if (scanf("%lf", &tab[i].solde) != 1) {
} else if (!estSoldeValide(tab[i].solde)) {
} while (!estSoldeValide(tab[i].solde));
trouve = 1;
// Message de confirmation
// Arrêt de la boucle
break;
if (trouve == 0) {
// Message d'erreur
}
// Fonction qui supprime un client en fonction de son nom
void supprimer() {
scanf("%s", nom);
if (strcmp(nom, tab[i].nom) == 0) {
nb--;
// Message de confirmation
// Sortie de la boucle
break;
if (i == nb) {
// Message d'erreur
void sauvegarder() {
if (fichierClient == NULL) {
return;
// Fermeture du fichier
fclose(fichierClient);
// Message de confirmation
printf("Les données ont été sauvegardées avec succès dans le fichier %s.\n", fichier);
void charger() {
if (fichierClient == NULL) {
return;
// Vérification de l'allocation
if (tab == NULL) {
exit(1);
// Fermeture du fichier
fclose(fichierClient);
// Message de confirmation
printf("Les données ont été chargées avec succès depuis le fichier %s.\n", fichier);
double calculerSoldeTotal() {
soldeTotal += tab[i].solde;
return soldeTotal;
}
2
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <locale.h>
struct client {
char nom[50];
char prenom[50];
char adresse[100];
char telephone[20];
double solde;
};
void menu();
void ajouter();
void afficher();
void rechercher();
void modifier();
void supprimer();
void sauvegarder();
void charger();
void transfert();
// Fonction principale
int main() {
tab = NULL;
nb = 0;
strcpy(fichier, "banque.dat");
charger();
menu();
free(tab);
return 0;
void menu() {
do {
// Affichage du menu
printf("**************************\n");
scanf("%d", &choix);
// Traitement du choix
switch (choix) {
case 1:
break;
case 2:
break;
case 3:
break;
case 4:
break;
case 5:
break;
case 6:
printf("Le solde total de la banque est : %.2lf\n", calculerSoldeTotal());
break;
case 7:
break;
case 8:
break;
case 9:
break;
default:
printf("Choix invalide. Veuillez réessayer.\n"); // Message d'erreur si le choix n'est pas valide
break;
} while (choix != 9); // Répétition du menu tant que le choix n'est pas 9 (quitter)
// Fonction qui ajoute un nouveau client au tableau dynamique et met à jour le nombre de clients
void ajouter() {
struct client c; // Variable locale pour stocker les informations du nouveau client
scanf("%s", c.nom);
scanf("%s", c.prenom);
scanf("%s", c.adresse);
// Validation du solde
do {
if (scanf("%lf", &c.solde) != 1) {
} else if (!estSoldeValide(c.solde)) {
} while (!estSoldeValide(c.solde));
// Vérification de l'allocation
if (tab == NULL) {
exit(1);
tab[nb] = c;
nb++;
// Message de confirmation
void afficher() {
if (nb == 0) {
return;
printf("--------------------\n");
// Fonction qui recherche un client par son nom et affiche ses informations
void rechercher() {
int trouve; // Variable locale pour indiquer si le nom a été trouvé ou non
// Saisie du nom à rechercher
scanf("%s", nom);
trouve = 0;
if (strcmp(nom, tab[i].nom) == 0) {
printf("Client trouvé:\n");
trouve = 1;
// Arrêt de la boucle
break;
// Message d'erreur
// Fonction qui modifie les informations d'un client en fonction de son nom
void modifier() {
int trouve; // Variable locale pour indiquer si le nom a été trouvé ou non
scanf("%s", nom);
trouve = 0;
if (strcmp(nom, tab[i].nom) == 0) {
printf("Nom: ");
scanf("%s", tab[i].nom);
printf("Prénom: ");
scanf("%s", tab[i].prenom);
printf("Adresse: ");
scanf("%s", tab[i].adresse);
printf("Téléphone: ");
scanf("%s", tab[i].telephone);
// Validation du solde
do {
if (scanf("%lf", &tab[i].solde) != 1) {
} else if (!estSoldeValide(tab[i].solde)) {
} while (!estSoldeValide(tab[i].solde));
trouve = 1;
// Message de confirmation
// Arrêt de la boucle
break;
if (trouve == 0) {
// Message d'erreur
void supprimer() {
scanf("%s", nom);
if (strcmp(nom, tab[i].nom) == 0) {
nb--;
// Message de confirmation
// Sortie de la boucle
break;
}
// Vérification si le nom n'a pas été trouvé
if (i == nb) {
// Message d'erreur
void sauvegarder() {
if (fichierClient == NULL) {
return;
}
// Fermeture du fichier
fclose(fichierClient);
// Message de confirmation
printf("Les données ont été sauvegardées avec succès dans le fichier %s.\n", fichier);
void charger() {
if (fichierClient == NULL) {
return;
// Vérification de l'allocation
if (tab == NULL) {
exit(1);
}
// Fermeture du fichier
fclose(fichierClient);
// Message de confirmation
printf("Les données ont été chargées avec succès depuis le fichier %s.\n", fichier);
double calculerSoldeTotal() {
soldeTotal += tab[i].solde;
}
return soldeTotal;
void transfert() {
int trouve_source, trouve_dest; // Variables locales pour indiquer si les noms ont été trouvés
scanf("%s", nom_source);
scanf("%s", nom_dest);
trouve_source = 0;
trouve_dest = 0;
if (strcmp(nom_source, tab[i].nom) == 0) {
trouve_source = 1;
// Saisie du montant à transférer
return;
return;
if (strcmp(nom_dest, tab[j].nom) == 0) {
trouve_dest = 1;
// Effectuer le transfert
tab[i].solde -= montant;
tab[j].solde += montant;
break;
}
// Vérification si les noms n'ont pas été trouvés
if (trouve_source == 0) {
printf("Le nom source n'a pas été trouvé dans la liste des clients.\n");
if (trouve_dest == 0) {
printf("Le nom destinataire n'a pas été trouvé dans la liste des clients.\n");
3
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<string.h>
#define MAXNOM 20
typedef struct { //structure for the date
int jour;
int mois;
int annee;
}DATE;
int main(){
FILE *fich;
printf("\t\t* Bank Account *");
ouvrir(&fich,"BANKACCOUNT.txt");
menu(fich);
fermer(fich);
return 0;
}
#define presentation() printf("Je m'appelle M.Zaero et je serai votre guide pendant votre passage
ici.\n");
#include<stdio.h>
#include<string.h>
struct compte {
char num[10];
char nom[50];
char datenaiss[25];
char dateouvert[25];
char telefone[25];
long solde;
};
int ouverture_de_compte() {
if (fich != NULL) {
scanf("%s", client.num);
scanf("%s", client.nom);
scanf("%s", client.datenaiss);
scanf("%s", client.dateouvert);
printf("Téléphone: \t");
scanf("%s", client.telefone);
scanf("%ld", &client.solde);
fprintf(fich, "%s\n%s\n%s\n%s\n%s\n%ld\n", client.num, client.nom, client.datenaiss,
client.dateouvert, client.telefone, client.solde);
fclose(fich);
return 0;
int consulter_compte() {
if (fich != NULL) {
fclose(fich);
return 0;
}
int main() {
int choix;
int quitter = 1;
printf("************************************************************\n");
printf("* *\n");
printf("************************************************************\n\n");
do {
printf(" Ouverture de compte: =========> 1\n Consulter compte: =========> 2\n Quitter:
=========> 3\n");
scanf("%d", &choix);
switch (choix) {
case 1:
ouverture_de_compte();
break;
case 2:
consulter_compte();
break;
case 3:
quitter = 0;
break;
default:
break;
} while (quitter);
return 0;