Untitled
unknown
c_cpp
2 years ago
6.6 kB
11
Indexable
#include <stdio.h> #include <string.h> #include <stdlib.h> struct client { char numero_de_compte[30]; char mot_de_passe[30]; float solde; }; void main() { int montant; struct client clt,clt2; FILE *fichier , *fichier2; char nom_fichier[30],numero[30],mot_de_passe[30]; int choix, choix2; char connect = 'o'; printf("\nBIENVENUE\n"); printf("\n1. SE CONNECTER"); printf("\n2. CREER UN NOUVEAU COMPTE"); printf("\n\nVOTRE CHOIX: "); scanf("%d" , &choix); switch(choix) { case 1: printf("\e[1;1H\e[2J"); /*Meme chose que system("CLS") mais valable pour tous les systémes d'exploiatation*/ printf("NUMERO DE COMPTE : "); scanf("%s" , numero); printf("\nMOT DE PASSE : "); scanf("%s" , mot_de_passe); strcpy(nom_fichier,numero); fichier = fopen(strcat(nom_fichier,".txt"), "r"); if(fichier == NULL) { printf("\nCE COMPTE N'EXISTE PAS"); } else { fread(&clt,sizeof(struct client),1,fichier); fclose(fichier); if(!strcmp(mot_de_passe,clt.mot_de_passe)) { while(connect == 'o') { printf("\e[1;1H\e[2J"); printf("\n1.VOIRE VOTRE SOLDE"); printf("\n2.DEPOSER UNE SOMME D'ARGENT"); printf("\n3.RETIRER UNE SOMME D'ARGENT"); printf("\n4.TRANSFERE UNE SOMME D'ARGENT"); printf("\n VOITRE CHOIX : "); scanf("%d" , &choix2); switch(choix2){ case 1: printf("\nVOTRE SOLDE EST %.2f MAD", clt.solde); break; case 2: printf("\e[1;1H\e[2J"); printf("\nENTRER LA MONTANT QUI SERA DEPOSE : "); scanf("%d" , &montant); clt.solde += montant; fichier = fopen(nom_fichier , "w"); fwrite(&clt,sizeof(struct client),1,fichier); if(fwrite != 0) printf("VOUS AVEZ DEPOSER %d MAD" , montant); fclose(fichier); break; case 3: printf("\nENTRER LA MONTANT QUI SERA RETIRER : "); scanf("%d" , &montant); if(montant > clt.solde) printf("\nVOTRE SOLDE EST INSUFISANT"); else { clt.solde -= montant; fichier = fopen(nom_fichier , "w"); fwrite(&clt,sizeof(struct client),1,fichier); if(fwrite != 0) printf("VOUS AVEZ RETIRER %d MAD" , montant); fclose(fichier); } break; case 4: printf("\nENTRER LE NUMERO DE COMPTE DU BENEFICIAIRE : "); scanf("%s" , numero); printf("\nLE MONTANT A TRANSFRER : "); scanf("%d" , &montant); if(montant > clt.solde) printf ("\nSOLDE INSUFISANT"); else { fichier2 = fopen(strcat(numero,".txt"),"r+"); if(fichier2==NULL) printf("CE COMPTE N'EXISTE PAS"); else { fread(&clt2,sizeof(struct client),1,fichier2); fclose(fichier2); clt2.solde += montant; fichier2 = fopen(numero,"w"); fwrite(&clt2,sizeof(struct client),1,fichier2); if(fwrite != 0) { printf("VOUS AVEZ TRANSFERE %d MAD vers %s ",montant, clt2.numero_de_compte); fclose(fichier2); clt.solde -= montant; strcpy(nom_fichier,clt.numero_de_compte); fichier = fopen(strcat(nom_fichier,".txt"), "w"); fwrite(&clt,sizeof(struct client),1,fichier); fclose(fichier); } } } break; case 5: printf("\nENTRER VOTRE MOT DE PASSE ACTUEL : "); scanf("%s",mot_de_passe); if(!strcmp(mot_de_passe,clt.mot_de_passe)) { printf("\n\nENTRER VOTRE NOUVEAU MOT DE PASSE : "); scanf("%s",mot_de_passe); strcpy(clt.mot_de_passe,mot_de_passe); strcpy(nom_fichier,clt.numero_de_compte); fichier = fopen(strcat(nom_fichier,".txt"),"w"); fwrite(&clt,sizeof(struct client),1,fichier); fclose(fichier); printf("\nLE MOT DE PASSE A BIEN ETE MODIFIE"); } else printf("VOTRE MOT DE PASSE EST INCORRECT"); } defaul: break; printf("\nRESTER CONNECTER ? [o/n]"); scanf("%s", &connect); } } else{ printf("\n MOT DE PASSE INCORRECT"); } } case 2: printf("\e[1;1H\e[2J"); printf("NUMERO DE COMPTE : "); scanf("%s" , clt.numero_de_compte); printf("MOT DE PASSE : "); scanf("%s" , clt.mot_de_passe); clt.solde = 0; strcpy(nom_fichier, clt.numero_de_compte); fichier = fopen(strcat(nom_fichier,".txt"), "w"); fwrite(&clt, sizeof(clt), 1, fichier); if(fwrite != 0) { printf("\n\n LE NOUVEAU COMPTE A BIEN ETE CREER"); } else { printf("PROBLEME LORS DU SAUVEGARDE"); } } }
Editor is loading...