PDA

Visualizza la versione completa : [C++] Esercizio: stampa ore medie lavorate per dipendenti


texhiller
13-03-2011, 18:03
Ciao ragazzi!!
Qualcuno potrebbe darmi una mano a fare questo programma?

Letti da tastiera la matricola (20 caratteri), la qualifica (intero) ed il numero (intero) di ore lavorate in ciascun mese
dell'anno dei 500 dipendenti di una azienda, stampare il numero di ore medie mensili che i dipendenti con qualifica
q hanno lavorato nel mese m, con q ed m letti da tastiera.

VincenzoTheBest
13-03-2011, 18:16
Originariamente inviato da texhiller
Ciao ragazzi!!
Qualcuno potrebbe darmi una mano a fare questo programma?

Letti da tastiera la matricola (20 caratteri), la qualifica (intero) ed il numero (intero) di ore lavorate in ciascun mese
dell'anno dei 500 dipendenti di una azienda, stampare il numero di ore medie mensili che i dipendenti con qualifica
q hanno lavorato nel mese m, con q ed m letti da tastiera.
Comincia col definire la struttura Dipendente.

deleted_29
13-03-2011, 19:26
magari la "classe" dipendente :fagiano:

VincenzoTheBest
13-03-2011, 19:39
Originariamente inviato da franzauker
magari la "classe" dipendente :fagiano:
Parlavo in generale.

texhiller
14-03-2011, 18:39
#include <iostream.h>
typedef struct{char matricola[20];int qualifica,ore[12];}dipendenti;
const int n=3;int i,j;
void funz_read(dipendenti[]);
void funz_search(dipendenti[]);


main(){
dipendenti lista[n];
funz_read(lista);
funz_search(lista);


system("PAUSE");
}
//Lettura Dati
void funz_read(dipendenti lista[]){
for(i=0;i<n;i++){cout<<"inserire la matricola del dipendente "<<i+1<<": ";cin>>lista[i].matricola;
cout<<"inserire la qualifica del dipendente "<<i+1<<": ";cin>>lista[i].qualifica;
for(j=0;j<12;j++){cout<<"inserire le ore nel mese "<<j+1<<" del dipendente "<<i+1<<": ";cin>>lista[i].ore[j];}
}
}

//Media delle ore lavorative dei dipendenti con qualifica *q* nel mese *m*
void funz_search(dipendenti lista[]){
int cont=0,tot=0,q,m;float media;
cout<<"inserire mese: ";cin>>m;cout<<"inserire qualifica: ";cin>>q;
for(i=0;i<n;i++){if(lista[i].qualifica==q){tot+=lista[i].ore[m];cont++;}
}
media=tot/cont;
cout<<"la media e' "<<media<<"\n";
}



Ragazzi qeusto è il programma ma non va qlc potrebbe aiutarmi? Grazie!

texhiller
14-03-2011, 19:51
ragazzi nessuno mi sa aiutar E?

VincenzoTheBest
14-03-2011, 20:21
Originariamente inviato da texhiller
ragazzi nessuno mi sa aiutar E?
Specifica dove hai il problema e vedi che qualcuno ti aiuterà..

texhiller
14-03-2011, 21:22
praticamente mi va sempre su inserire matricola del dipendete dopo due volte mi esce un'errore ed il programma di chiude!

LeleFT
15-03-2011, 10:45
Originariamente inviato da texhiller
praticamente mi va sempre su inserire matricola del dipendete dopo due volte mi esce un'errore ed il programma di chiude!

Cominciamo con il Regolamento interno (http://forum.html.it/forum/showthread.php?s=&threadid=973887).

Il titolo della discussione già scoraggia i lettori del forum: non dice nulla di nulla.
Poi il codice: deve essere postato indentato e all'interno degli appositi tag CODE (così si facilita la vita a chi legge il codice)
Poi gli errori: dici che ti esce un errore... quale? Gli utenti devono tirare ad indovinare? Si deve sempre essere il più precisi possibile.
Inoltre: qui non si chiede di svolgere i compiti per casa. C0è l'area "Offro Lavoro / Collaborazione" per richieste di questo tipo.

Ciao. :ciauz:

Loading