diff --git a/Unsecured/unsecured_transaction.c b/Unsecured/unsecured_transaction.c index 208f48a..66a38f7 100644 --- a/Unsecured/unsecured_transaction.c +++ b/Unsecured/unsecured_transaction.c @@ -23,18 +23,21 @@ void read_account(int fd, int index, char *name, int *balance) { void write_account(int fd, int index, const char *name, int balance) { char buffer[ACCOUNT_SIZE]; - // Créer une chaîne formatée avec une largeur fixe - snprintf(buffer, ACCOUNT_SIZE - 1, "%-10s%4d", name, balance); + // Formater la chaîne avec un nom de 10 caractères et un solde de 5 caractères, espace rempli si nécessaire + snprintf(buffer, ACCOUNT_SIZE, "%-10s%5d", name, balance); - // Assurer que le buffer termine par '\n' - buffer[ACCOUNT_SIZE - 1] = '\n'; + // S'assurer que le buffer est exactement de taille ACCOUNT_SIZE + // Ajouter des espaces si nécessaire pour remplir la ligne + for (int i = strlen(buffer); i < ACCOUNT_SIZE - 1; i++) { + buffer[i] = ' '; + } + buffer[ACCOUNT_SIZE - 1] = '\n'; // Assurez-vous que la ligne est terminée correctement // Positionner et écrire dans le fichier lseek(fd, index * ACCOUNT_SIZE, SEEK_SET); write(fd, buffer, ACCOUNT_SIZE); } - // Fonction pour effectuer une transaction void perform_transaction(int fd, int account_count) { int from_idx = rand() % account_count; @@ -159,6 +162,10 @@ int main(int argc, char *argv[]) { } printf("Solde total final : %d€\n", final_balance); + if (initial_balance != final_balance) { + printf("Le solde final est différent du solde initial...\n"); + } + printf("Tout les processus sont terminés !\n"); return 0;