HELP !!!! - C++ - Programmation
Marsh Posté le 24-03-2005 à 10:44:07
1) Change ton titre
2) donne pas d'erreur, on a que ça à foutre chercher dans tout ton pavé...
Marsh Posté le 24-03-2005 à 10:48:20
Je demande pas a ce que vous me corrigé tout mais des fois qu'il y aurait des grosses erreurs que j'ai pas vu.
Le probléme c'est dans l'appel de mes fonctions ya des erreurs style "cannot convert char to char" ....
Marsh Posté le 24-03-2005 à 10:53:57
Mais putain tu vas les donner tes erreurs?
Si tu fais pas un minimum d'efforts pour nous donner les infos on va pas faire l'effort de chercher à t'aider non plus hein...
Marsh Posté le 24-03-2005 à 10:55:03
De toutes manières, vu qu'il refuse visiblement de changer son titre, à quoi bon l'aider puisque le sujet va être locké dans très peu de temps.
Marsh Posté le 24-03-2005 à 11:00:31
et en plus c'est pas du c++ mais du c
enfin un melange
Marsh Posté le 24-03-2005 à 13:34:06
titre foireux, manque d'infos malgré rappels à l'ordre, désolé mais je locke.
si tu veux une réponse, tu créé un autre topic avec un titre correct, et les messages d'erreurs obtenus
Marsh Posté le 24-03-2005 à 10:42:46
Bonjour, j'ai un projet a faire en C++ pour mon école mais je galére trop a coriger mes erreurs
Voila ce que j'ai fait :
#include<iostream.h>
#include<conio.h>
#include<string.h>
#include<fstream.h>
#include<stdlib.h>
const int FAUX=0;
const int max=15;
const int nbli=100;
const int nbco=8;
//Les prototypes
struct client {char nom[max+1];
char prenom[max+1];
int age;
char etudiant;
float somme;
int nbmois;
int taux;
float montantaux;
int jour;
int mois;
int annee;
};
void telecharger_fichier(char nomfich[10+1],char tabclient[20][100+1]);
void renseignement(client&emp);
void saisirpret(client&emp);
void calcultaux(client&emp);
void calculinteret(client&emp);
void signercontrat(client&emp);
void trierclient(int L,char tabclient[20][100+1]);
int Posinsertion(char tabclient,int L,int indV);
int compare(char nom1[15+1],char prenom1[15+1],char nom2[15+1],char prenom2[15+1]);
void copie (client c1, client&c2);
void decalerplacer(int np,int indV,char tabclient[20][100+1]);
//Programme principal
void main()
{clrscr();
client emp,em;
int nb;
char tabcli[nbco+1];
char tab[20][100+1];
char nomfich[10+1];
renseignement(em);
saisirpret(em);
calcultaux(em);
calculinteret(em);
signercontrat(em);
trierclient(nb,tab);
}
//Definition des fonctions
void telecharger_fichier(char nomfich[max+1],char tabclient[20][100+1])
{int L,i;
clrscr();
cout<<"Entrez le chemin du fichier contenant les renseignement du client : \n";
cin>> nomfich;
ifstream ficlient(nomfich);
if (ficlient==FAUX)
{cout<<"\nOuverture impossible, fichier inexistant";
exit (-1);
}
else
{L=0;
ficlient>>tabclient[L];
while (ficlient.eof()==FAUX)
{L++;
ficlient>>tabclient[L];
}
cout<<"\nAffichage du tableau :\n";
for (i=0;i<L;i++)
{cout<<tabclient[i]<<"\n";
}
cout<<"\nIl y a : "<<L<<" clients\n";
ficlient.close();
}
}
void renseignement(client&emp)
{int encore;
while(encore != 0)
{
cout<<"Entrez le nom du client:\n";
cin>>emp.nom;
cout<<"Entrez le prenom du client:\n";
cin>>emp.prenom;
cout<<"Entrez l'age du client:\n";
cin>>emp.age;
cout<<"Votre client est-il un etudiant (o/n)\n";
cin>>emp.etudiant;
cout<<"Avez-vous encore un client (1/0) ?\n";
cin>>encore;
}
}
void saisirpret (client&emp)
{if (emp.age<18)
{cout<<"Vous n'avez pas le droit au pret\n";
emp.somme=0;
}
else {cout<<"Votre remboursement se fera en combien de mois ?:\n";
cin>>emp.nbmois;
if (emp.nbmois>120)
{cout<<"La duree de l'emprunt peut atteindre qu'un maximum de 120 mois\n";
cout<<"Donner un nombre de mois inferieur a 120:\n";
cin>>emp.nbmois;
}
cout<<"Quel est la somme a emprunter ?\n";
cin>>emp.somme;
if (emp.somme<1000 || emp.somme>20000)
{cout<<"Votre somme empruntee ne correspond pas aux criteres\n";
cout<<"Donner une somme comprise en 1000 et 20000 euros\n";
cin>>emp.somme;
}
}
}
void calcultaux(client&emp)
{if (emp.somme>=1000 && emp.somme<=7000)
{emp.taux=12;
cout<<"Vous avez "<<emp.taux<<" % d'interet\n";
}
else {if (emp.somme>7000 && emp.somme<=13000)
{emp.taux=9;
cout<<"Vous avez un taux d'interet de "<<emp.taux<<" %\n";
}
else{if (emp.somme!=0)
{emp.taux=7;
cout<<"Vous avez un taux d'interet de "<<emp.taux<<" %\n";
}
}
}
if( (emp.age>=18 && emp.age<=25)||( emp.etudiant =='o' && emp.age<30))
{emp.taux=emp.taux-2;
cout<<"Grace a votre age vous beneficiez d'un taux de "<<emp.taux<<" %\n";
}
}
void calculinteret(client&emp)
{emp.montantaux=emp.taux;
emp.montantaux=emp.montantaux/100;
emp.montantaux=emp.montantaux*emp.somme;
cout<<"Le montant de vos interet sera de "<<emp.montantaux<<" euros\n";
}
void signercontrat(client&emp)
{char ok;
cout<<"Voici un recapitulatif de votre contrat\n";
cout<<"Votre nom: "<<emp.nom<<" Votre prenom: "<<emp.prenom<<"\n";
cout<<"Vous avez "<<emp.age<<" ans et votre statut d'etudiant est : "<<emp.etudiant<<"\n";
cout<<"Vous empruntez: "<<emp.somme<<"euros, avec un taux de "<<emp.taux<<" % sur "<<emp.mois<<" mois, ce qui correspond a "<<emp.montantaux<<" euros\n";
cout<<"Votre date d'echeance sera dans :"<<emp.nbmois+1<<"mois\n";
cout<<"Etes vous d'accord avec ces donnees(o/n) ?\n";
cin>>ok;
if (ok=='o')
{cout<<"Quand voulez-vous commencer votre emprunt ?\n";
cin>>emp.jour>>emp.mois>>emp.annee;
cout<<emp.jour<<"/"<<emp.mois<<"/"<<emp.annee;
}
else {renseignement(emp);
saisirpret(emp);
calcultaux(emp);
calculinteret(emp);
}
}
void trierclient(int L,char tabclient[20][100+1])
{int i,j,numplace,nbc;
char tab[20];
for (i=0;i<L-1;i++)
{numplace=Posinsertion(tab,nbc,j);
if (numplace !=i)
{decalerplacer(tab,numplace,i);
}
}
}
int Posinsertion(char tabclient[20],int L,int indV)
{int valdepaC,ind,valtriee;
client val;
valtriee=indV;
ind=0;
copie(tabclient[indV],val);
valdepaC=0;
while (ind<valtriee && valdepaC==0)
{if (compare(tabclient[indV].nom,tabclient[indV].prenom,val.nom,val.prenom)<0)
{valdepaC=1;
}
else{ind=ind+1;
}
}
return ind;
}
int compare(char nom1[15+1],char prenom1[15+1],char nom2[15+1],char prenom2[15+1])
{int res;
if(strcmp(nom1,nom2)<0)
res=1;
else{if (strcmp (nom1,nom2)>0)
res=-1;
else{if(strcmp(prenom1,prenom2)<0)
res=1;
else{if(strcmp(prenom1,prenom2)>0)
res=-1;
else res=0;
}
}
}
}
void copie (client c1, client&c2)
{strcpy(c2.nom,c1.nom);
strcpy(c2.prenom,c1.prenom);
c2.age=c1.age;
c2.etudiant=c1.etudiant;
c2.somme=c1.somme;
c2.nbmois=c1.nbmois,
c2.taux=c1.taux;
c2.montantaux=c1.montantaux;
c2.jour=c1.jour;
c2.mois=c1.mois;
c2.annee=c1.annee;
}
void decalerplacer(int np,int indV,char tabclient[20][100+1])
{int i;
client decoT;
copie(tabclient[indV],decoT);
for(i=indV;i<np+1;i-1)
{copie(tabclient[i-1],tabclient[i]);
}
copie(decoT,tabclient[np]);
}
Merci de votre aide