Votre question

PB récupération valeur fonction en C

Tags :
  • Programme
  • Programmation
Dernière réponse : dans Programmation
8 Février 2010 13:33:17

Bonjour à tous!

Voila je me remet (encore) à vous pour un problème que j'ai en langage de programmation C.

Voici mon programme:

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

float retrait(float montant, float nombre )
{
float resultatR = 0;

resultatR = montant - nombre;
return resultatR;
}

float ajout(float montant, float nombre)
{
float resultatA = 0;

resultatA = montant + nombre;
return resultatA;
}

int main(int argc, char *argv[])
{
FILE *P_FICHIER; //pointeur sur file

char NOM_FICHIER[30], libelle[100];
float montanttotal, montant;
int reponse, operation;


printf("Assistant de gestion de vos comptes \n");
printf("Avez vous deja un fichier texte cree pour votre compte? 1 pour OUI, 2 pour NON \n");
scanf("%d", &reponse);

if (reponse == 2)
{
printf("Premiere partie : Creation du fichier de stockage des informations... \n");
printf("Saisir le nom complet du fichier .txt a creer. Exemple: Gestion.txt\n");
printf("Nom du fichier: ");
scanf("%s", NOM_FICHIER);
printf("Saississez le montant actuel de votre compte. \n");
printf("Montant = ");
scanf("%f", &montanttotal);
P_FICHIER = fopen(NOM_FICHIER, "w"); // Crée le fichier
fprintf(P_FICHIER, "%.2f ", montanttotal);
}

if (reponse == 1)
{
printf("Nom de votre fichier: ");
scanf("%s", NOM_FICHIER);
P_FICHIER = fopen(NOM_FICHIER, "a"); //ouvre le fichier en ecriture
}

printf("Quelle operation voulez vous effectuer ? (1 pour Ajout, 2 pour Retrait) \n");
scanf("%d", &operation);

if (operation == 1)
{

printf("Quelle somme voulez-vous ajouter? \n");
scanf("%f", &montant);
printf("Description de l'operation effectuee (sans espace): ");
scanf("%s", &libelle);
printf("Vous avez maintenant %.2f Euros sur votre compte \n", ajout(montanttotal, montant)); //exécute la fonction ajout()
fprintf(P_FICHIER, "+ ");
fprintf(P_FICHIER, "%.2f", montant);
fprintf(P_FICHIER, " = ");
fprintf(P_FICHIER, "%.2f Euros ", ajout(montanttotal, montant));
fprintf(P_FICHIER, "( %s ) \n", libelle);
}


if (operation == 2)
{

printf("Quelle somme voulez-vous retirer? \n");
scanf("%f", &montant);
printf("Description de l'operation effectuee (sans espace): ");
scanf("%s", &libelle);
printf("Vous avez maintenant %.2f Euros sur votre compte \n", retrait(montanttotal, montant)); //exécute la fonction retrait()
fprintf(P_FICHIER, "- ");
fprintf(P_FICHIER, "%.2f", montant);
fprintf(P_FICHIER, " = ");
fprintf(P_FICHIER, "%.2f Euros ", retrait(montanttotal, montant));
fprintf(P_FICHIER, "( %s ) \n", libelle);

}


system("PAUSE");

}



Et voici le problème:

Je voudrai que ma variable "montanttotal" dans le Main prenne la valeur de resultatA qui se trouve dans la fonction "ajout" afin de la placer dans le if (operation == 1)

De même, je voudrai que "montanttotal" prenne la valeur de resultatR pour la placer dans le if (operation ==2)

J'ai essayé plusieurs solutions dont:

montanttotal = ajout();
montanttotal = ajout(float montant, float nombre);


Ca ne fonctionne pas...

Des idées?

Merci d'avance !

Autres pages sur : recuperation valeur fonction

a b L Programmation
8 Février 2010 20:23:29

Utilise des tags de codes, là en bloc sans couleur, c'est illisible. :) 
m
0
l
9 Février 2010 16:20:31

Problème résolu j'ai finalement remanié tout le code, merci ;) 
m
0
l
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS