Urgent!! prob avc mon projet C
Résolu/Fermé
yadhus
Messages postés
33
Date d'inscription
dimanche 17 février 2008
Statut
Membre
Dernière intervention
16 mars 2009
-
24 mars 2008 à 14:16
yadhus Messages postés 33 Date d'inscription dimanche 17 février 2008 Statut Membre Dernière intervention 16 mars 2009 - 25 mars 2008 à 20:25
yadhus Messages postés 33 Date d'inscription dimanche 17 février 2008 Statut Membre Dernière intervention 16 mars 2009 - 25 mars 2008 à 20:25
A voir également:
- Urgent!! prob avc mon projet C
- Filigrane projet - Guide
- Exemple d'un projet déjà monté - Forum Programmation
- Film projet x a telecharger gratuitement - Télécharger - Outils professionnels
- Musique projet x - Forum Musique / Radio / Clip
- Gantt projet - Télécharger - Gestion de projets
2 réponses
Utilisateur anonyme
24 mars 2008 à 14:18
24 mars 2008 à 14:18
Salut, j'ai repéré la faute:
A+
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
// Cette partie du programme va s'occuper de l'enregistrement des informations sur les ventes de la société X
typedef char * string;
struct produit {
string nom;
float prixuni; //Le prix unitaire
int Q; //Quantité vendue
int TVA; //la TVA
int remise; //les remises
float PTTC; //Prix TTC
float PTTTC; //Prix Total TTC
};
///////////////////////////////////////////Saisie des informations sur les produits///////////////////////////////////////////////////
int * saisie_ventes (struct produit *p, int i){
malloc(5*sizeof(*p));
for (i=1;i<6;i++){
printf("Donner le nom du produit\n");
scanf ("%s", &(p+i+2)->nom);
//gets ((p+i)->nom);
printf ("Donner la quantité vendue\n");
scanf ("%d",&(p+i)->Q);
printf ("Donner le prix unitaire\n");
scanf ("%f",&(p+i)->prixuni);
printf ("Donner la valeur de la TVA\n");
scanf ("%d",&(p+i)->TVA);
printf ("Donner la valeur de la remise\n");
scanf ("%d",&(p+i)->remise);
((p+i)->PTTC) = ((p+i)->prixuni) * ( 1 + (((p+i)->TVA) / 100) - (((p+i)->remise) / 100) );
((p+i)->PTTTC) = ((p+i)->PTTC) * ((p+i)->Q) ;
clrscr ();
}
return 0;
}
////////////////////////////////////////////Affichage des informations///////////////////////////////////////////////////////////////
void affiche_ventes (struct produit *p, int i ){
for (i=1;i<6;i++){
printf ("%s\t | %d\t | %.3f\t | %d\t | %d\t | %.3f\t | %.3f\t |\n", ((p+i+2)->nom),((p+i)->Q),((p+i)->prixuni),((p+i)->TVA),((p+i)->remise),((p+i)->PTTC),((p+i)->PTTTC));
}
}
int main (int argc, const char * argv[]) {
struct produit *k;
int i;
saisie_ventes (k,i);
affiche_ventes (k,i);
return 0;
}
A+
Bonjour,
Ton premier prog était bon sauf à la ligne 50
..,((p+i)->PTTC),.. quand je le colle dans mon editeur de texte ça devient ,((p-+i)->PTTC), et le complilateur affiche
,((p:+i)->PTTC), il y a un caractère bizarre qui se promène.
Une fois corrigé, il compile bien. je ne l'ai pas exécuté.
A+.
Ton premier prog était bon sauf à la ligne 50
..,((p+i)->PTTC),.. quand je le colle dans mon editeur de texte ça devient ,((p-+i)->PTTC), et le complilateur affiche
,((p:+i)->PTTC), il y a un caractère bizarre qui se promène.
Une fois corrigé, il compile bien. je ne l'ai pas exécuté.
A+.
yadhus
Messages postés
33
Date d'inscription
dimanche 17 février 2008
Statut
Membre
Dernière intervention
16 mars 2009
3
25 mars 2008 à 20:25
25 mars 2008 à 20:25
Merci beaucoup
mais enfin j'ai réussit à le faire marcher:
Voilà le code source au cas où:
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
typedef char string[30];
typedef struct produit produit;
struct produit {
string nom;
float prixuni;
int Q;
int TVA;
int remise;
float PTTC; //Prix TTC
float PTTTC; //Prix Total TTC
};
///////////////////////////////////////////Saisie des informations sur les produits///////////////////////////////////////////////////
produit saisie_ventes ( int N,int deb){
int i;
produit *p;
for (i=deb;i<=N;i++){
printf ("Produit %d:\n",i);
printf ("Donner le nom du produit\n");
scanf ("%s", &p[i].nom);
printf ("Donner la quantitÈ vendue\n");
scanf ("%d", &p[i].Q);
printf ("Donner le prix unitaire\n");
scanf ("%f", &p[i].prixuni);
printf ("Donner la valeur de la TVA\n");
scanf ("%d", &p[i].TVA);
printf ("Donner la valeur de la remise\n");
scanf ("%d", &p[i].remise);
p[i].PTTC = (p[i].prixuni) * ( 1 + ((p[i].TVA) / 100) - ((p[i].remise) / 100) );
p[i].PTTTC = (p[i].PTTC) * (p[i].Q) ;
clrscr ();
}
return *p;
}
////////////////////////////////////////////Affichage des informations///////////////////////////////////////////////////////////////
void affiche_ventes (produit *p,int N){
int i;
for (i=1;i<=N;i++){
printf ("%s|%d|%.3f|%d|%d|%.3f|%.3f|\n", p[i].nom,p[i].Q,p[i].prixuni,p[i].TVA,p[i].remise,p[i].PTTC,p[i].PTTTC);
}
}
///////////////////////////////////////////// Saisie du nbr de produits ////////////////////////////////////////////////////////////
int saisie_N (){
int l;
printf ("Donner le nombre de produits vendus\n");
scanf ("%d",&l);
return l;
}
//////////////////////////////////////////////// Nouvelles ventes ////////////////////////////////////////////////////////////
int saisie_supp (){
int l;
printf ("Donner le nombre des nouveaux produits vendus\n");
scanf ("%d",&l);
return l;
}
void malloc ();
///////////////////////////////////////////// MAIN /////////////////////////////////////////////////////////////
int main (int argc, const char * argv[]) {
int N= saisie_N ();
produit *k = (produit *) malloc(N * sizeof( produit));
*k = saisie_ventes (N,1);
int debut;
char a;
do {
do {
printf ("Taper sur (q) pour afficher les ventes\n");
printf ("Taper sur (s) pour ajouter de nouvelles ventes\n");
printf ("Taper sur (t) pour quitter\n");
scanf ("%s",&a);
clrscr ();
} while ((a!='q')&&(a!='s')&&(a!='t'));
switch (a) {
case 's': {
int supp= saisie_supp ();
int debut = N+1;
N=N+supp;
*k=saisie_ventes (N,debut);
} break;
case 'q': {
printf ("Voici vos ventes:\n");
affiche_ventes (k,N);
}break;
}
printf ("Appuyer sur une touche pour revenir au menu\n");
getch ();
clrscr ();
} while (a!='t');
return 0;
}
mais enfin j'ai réussit à le faire marcher:
Voilà le code source au cas où:
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
typedef char string[30];
typedef struct produit produit;
struct produit {
string nom;
float prixuni;
int Q;
int TVA;
int remise;
float PTTC; //Prix TTC
float PTTTC; //Prix Total TTC
};
///////////////////////////////////////////Saisie des informations sur les produits///////////////////////////////////////////////////
produit saisie_ventes ( int N,int deb){
int i;
produit *p;
for (i=deb;i<=N;i++){
printf ("Produit %d:\n",i);
printf ("Donner le nom du produit\n");
scanf ("%s", &p[i].nom);
printf ("Donner la quantitÈ vendue\n");
scanf ("%d", &p[i].Q);
printf ("Donner le prix unitaire\n");
scanf ("%f", &p[i].prixuni);
printf ("Donner la valeur de la TVA\n");
scanf ("%d", &p[i].TVA);
printf ("Donner la valeur de la remise\n");
scanf ("%d", &p[i].remise);
p[i].PTTC = (p[i].prixuni) * ( 1 + ((p[i].TVA) / 100) - ((p[i].remise) / 100) );
p[i].PTTTC = (p[i].PTTC) * (p[i].Q) ;
clrscr ();
}
return *p;
}
////////////////////////////////////////////Affichage des informations///////////////////////////////////////////////////////////////
void affiche_ventes (produit *p,int N){
int i;
for (i=1;i<=N;i++){
printf ("%s|%d|%.3f|%d|%d|%.3f|%.3f|\n", p[i].nom,p[i].Q,p[i].prixuni,p[i].TVA,p[i].remise,p[i].PTTC,p[i].PTTTC);
}
}
///////////////////////////////////////////// Saisie du nbr de produits ////////////////////////////////////////////////////////////
int saisie_N (){
int l;
printf ("Donner le nombre de produits vendus\n");
scanf ("%d",&l);
return l;
}
//////////////////////////////////////////////// Nouvelles ventes ////////////////////////////////////////////////////////////
int saisie_supp (){
int l;
printf ("Donner le nombre des nouveaux produits vendus\n");
scanf ("%d",&l);
return l;
}
void malloc ();
///////////////////////////////////////////// MAIN /////////////////////////////////////////////////////////////
int main (int argc, const char * argv[]) {
int N= saisie_N ();
produit *k = (produit *) malloc(N * sizeof( produit));
*k = saisie_ventes (N,1);
int debut;
char a;
do {
do {
printf ("Taper sur (q) pour afficher les ventes\n");
printf ("Taper sur (s) pour ajouter de nouvelles ventes\n");
printf ("Taper sur (t) pour quitter\n");
scanf ("%s",&a);
clrscr ();
} while ((a!='q')&&(a!='s')&&(a!='t'));
switch (a) {
case 's': {
int supp= saisie_supp ();
int debut = N+1;
N=N+supp;
*k=saisie_ventes (N,debut);
} break;
case 'q': {
printf ("Voici vos ventes:\n");
affiche_ventes (k,N);
}break;
}
printf ("Appuyer sur une touche pour revenir au menu\n");
getch ();
clrscr ();
} while (a!='t');
return 0;
}
24 mars 2008 à 14:38
25 mars 2008 à 10:02
le prgramme ne fonctionne toujours pas