IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Fonction "Accepter conditions d'utilisation"


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 2
    Par défaut 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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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.

  2. #2
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2013
    Messages : 610
    Billets dans le blog
    21
    Par défaut
    - continue est un mot-clé du C... tu ne peux donc pas l'utiliser pour nommer une de tes fonctions; il est réservé.
    - tu as oublié un point-virgule après l'appel de ta fonction "continue"
    - tu devrais réviser un peu ta syntaxe des pointeurs de fonction, par exemple avec les cours et tutoriels de formation pour apprendre la programmation en langage C

Discussions similaires

  1. Utiliser la fonction indirect sous conditions
    Par krietj dans le forum Excel
    Réponses: 5
    Dernier message: 11/03/2015, 10h52
  2. couleur d'une police en fonction d'une condition
    Par floune dans le forum Access
    Réponses: 1
    Dernier message: 15/04/2006, 21h43
  3. fonctions et classes... quand les utiliser ?
    Par fastmanu dans le forum Langage
    Réponses: 6
    Dernier message: 03/04/2006, 00h39
  4. Conditions d'utilisation d'IntraWeb
    Par planting dans le forum Bases de données
    Réponses: 1
    Dernier message: 03/11/2005, 22h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo