-
Aidez moi :(((
Bonjour a tous.
j'ai un probleme avec le programe au dessous. :(
Et je veus de quelq'un de vous m'aide pour savoir ou est la faute dans le programe s'il vous plait et merci beaucoup pour vous :) .
Le programe comme ca travail normalement.mais je veus additionner une chose a ce programe que le programe questionne le person d'ecrire le type de travail du personage écrite.
Donc comment je peux additionner cela sans faute dans le Programe?
#include <iostream>
using namespace std;
const int SMAX = 21;
const int EMAX = 100;
class employee
{
private:
char name [SMAX];
int serial_number;
public:
void input()
{
cout <<" Enter name: ";
cin.get(name, SMAX);
cout <<" Enter serial number: ";
cin >> serial_number;
}
void output()
{
cout <<" Name = " << name;
cout <<"\n Serial number = " << serial_number;
}
};
int main()
{
employee emps[EMAX];
int n = 0;
int j;
char choice = 'x';
while(choice != 'q')
{
cout <<"\n'a' to add an employee"
"\n'd' to display all employees"
"\n'q' to quit program"
"\n\nEnter letter choice: ";
cin >> choice;
cin.ignore(10, '\n');
switch(choice)
{
case 'a':
cout <<"\nEnter data for employee " << (n+1) << endl;
emps[n++].input();
break;
case 'd':
for(j=0; j<n; j++)
{
cout <<"\nData for employee " << (j+1) << " :\n" << endl;
emps[j].output();
cout <<"\n";
}
break;
case 'q':
break;
default:
cout <<"Unknown command";
break;
}
}
}
comme idée je fais le suivant:
#include <iostream>
using namespace std;
const int SMAX = 21;
const int WMAX = 21;
const int EMAX = 100;
class employee
{
private:
char name [SMAX];
char work [WMAX];
int serial_number;
public:
void input()
{
cout <<" Enter name: ";
cin.get(name, SMAX);
cout <<" Enter serial number: ";
cin >> serial_number;
cout <<" Enter the work type: ";
cin.get(work, WMAX);
}
void output()
{
cout <<" Name = " << name;
cout <<"\n Serial number = " << serial_number;
cout <<"\n Work = " << work;
}
};
int main()
{
employee emps[EMAX];
int n = 0;
int j;
char choice = 'x';
while(choice != 'q')
{
cout <<"\n'a' to add an employee"
"\n'd' to display all employees"
"\n'q' to quit program"
"\n\nEnter letter choice: ";
cin >> choice;
cin.ignore(10, '\n');
switch(choice)
{
case 'a':
cout <<"\nEnter data for employee " << (n+1) << endl;
emps[n++].input();
break;
case 'd':
for(j=0; j<n; j++)
{
cout <<"\nData for employee " << (j+1) << " :\n" << endl;
emps[j].output();
cout <<"\n";
}
break;
case 'q':
break;
default:
cout <<"Unknown command";
break;
}
}
}
Le compilateur ne me donne aucune probleme. mais, le programe ne travail pas comme il faut :((
Vous pouvez utilizer le programe sur votre compilateur et regardez comment travail-t-il? vous trouvrez qu'il ne travail pas normalement.
j'attends votre solution el Merci...
-
:tagcode:
et ensuite décris ton problème -> attendu, observé, ...
-
Bonjour
j'ajouterais : explicite le titre, SVP
tu peux éditer ton message (bouton "éditer" en haut à gauche du message) pour supprimer la mmise en gras et ajouter les balises code.
ensuite explicite le problème que tu rencontres avec le programme (messages d'erreurs, ...)
pour l'instant le tout est illisible. tu auras plus facilement de l'aide avec un texte clair et du code bien mis en forme.
Merci
-
1) Pareil que mes prédécesseurs.
2) Si ton programme ne fonctionne pas correctement ce n'est pas la faute du compilateur, mais la tienne. L'algorythmie est une science (ou technique) exacte, donc l'erreur est forcément humaine.
3) En suite, si tu nous expliquais quel devrait être le comportement de ton programme, ça nous aiderait un peu.
4) Tu devrais prendre l'habitude de commenter d'avantage tes sources, ça t'aiderait surement autant que ça aiderait les autres.
Voila. Lorsque au moins les trois premières de ces recommandations seront appliquées, je pense qu'on se fera une joie de te répondre (et moi le premier, si c'est dans mes compétences) mais pour l'heure, ta demande d'aide est encore perfectible.