Fonction "Accepter conditions d'utilisation"
Bonjour à toutes et à tous,
Je développe un formulaire en C, dans lequel je voudrais que l'utilisateur accepte les conditions d'utilisation avant de continuer.
S'il accepte, il tape "oui", il continue.
S'il refuse, il tape "non", le programme s'arrête.
S'il tape autre chose, la fonction "Accepter" lui demande de taper "oui" ou "non" et reprends au début.
Voici le code que j'ai écrit :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
| #include <stdlib.h>
#include <stdio.h>
#include <string.h>
void incendie(double *ptr_tomates, double *ptr_cerises, double *ptr_pertes);
int accepte(int *ptr_reponse);
int continue(int *accepte());
int main()
{
double tomates = 0;
double cerises = 0;
double pertes = 0;
int reponse = 0;
int accepte();
accepte(&reponse);
continue(&accepte())
printf("\nVeuillez à présent remplir ce formulaire. \n");
printf("\nCombien aviez vous de tonnes de tomates et de cerises ? ");
scanf("%lf %lf", &tomates, &cerises);
printf("\n--- Stock initial ---\n-Tomates : %f\n-Cerises : %f\n\n", tomates, cerises);
printf("\nA combien de tonnes évaluez vous vos stocks détruits ? ");
scanf("%lf", &pertes);
incendie(&tomates, &cerises, &pertes);
printf("--- Stock après incendie ---\n-Tomates : %lf\n-Cerises : %lf\n\n", tomates, cerises);
return 0;
};
void incendie(double *ptr_tomates, double *ptr_cerises, double *ptr_pertes)
{
*ptr_tomates -= *ptr_pertes;
*ptr_cerises -= *ptr_pertes;
printf("\nVous avez perdu %lf tonnes de vos stocks.\n\n", *ptr_pertes);
};
int accepte(int *ptr_reponse)
{
char buffer[3];
printf ("Acceptez-vous nos conditions d'utilisation ? (oui/non) : ");
scanf ("%s",buffer);
if (strcmp ("oui", buffer) == 0)
return (1);
else if (strcmp ("non", buffer) == 0)
return (2);
else
return (3);
};
int continue(int *accepte())
{
if (accepte(2) == 0)
puts("\nDésolé. Fermeture du programme. \n");
return 0
else if(accepte(3) == 0)
puts("\nVeuillez répondre par oui ou par non. \n");
else if (accepte(1) == 0)
puts("\nMerci pour votre confiance.\n")
}; |
Et voici les erreurs renvoyées dans le terminal :
Code:
1 2 3 4 5 6 7
|
encore.c:9:5: error: expected identifier or ( before continue
encore.c: In function main:
encore.c:23:2: error: continue statement not within a loop
encore.c:23:10: error: expected ; before ( token
encore.c: At top level:
encore.c:68:5: error: expected identifier or ( before continue |
Merci pour votre aide.