c++ vector utskrift hjälp|Programmering / Grafisk formgivning|Forum|Nordichardware

Search
Forum Scope


Match



Forum Options



Minimum search word length is 3 characters - maximum search word length is 84 characters
Lost password?
The forums are currently locked and only available for read only access
sp_Feed sp_TopicIcon
c++ vector utskrift hjälp
farmor_gas
Siktar mot toppen
Medlem
Forum Posts: 88
Member Since:
June 4, 2001
sp_UserOfflineSmall Offline
1
September 15, 2002 - 10:50 am
sp_Permalink sp_Print

håller på med ett program som ska räkna ut medelvärdet på gymnsie betygen....
har laggt allt i en class, som innehåller 2 vectoerer:

class Betyg
{
private:
vector<string> kurs;
vector<int> betyg;
public:
Betyg();
~Betyg();
void skrivIn();
void skrivUt();
};

men nu ska ja skriva ut skiten, till det använder jag detta:

void Betyg::skrivUt()
{
for ( vector<string>::const_iterator i = kurs.begin(); i != kurs.end(); i ++ )
cout << "Kurs: " << *i << "t";
cout << endl;
for ( vector<int>::const_iterator i = betyg.begin(); i != betyg.end(); i ++ )
cout << "Betyg: " << *i << "t";
}

men med det bli utskriften typ såhär:
Kurs: Fysik Kurs: Matte D Kurs: Svenska A
Betyg: 15 Betyg: 15 Betyg: 15

(15 står för VG, ska fixa det senare)

men jag vill att utskriften ska bli såhär:
Kurs: Betyg:
Fysik 15
Matte D 15
Svenska A 15

Hur skulle man kunna göra det, jag har ingen aning längre, har försökt ett tag nu 🙂

//henrik

PaPPa
Kommer du hit ofta?
Medlem
Forum Posts: 677
Member Since:
January 8, 2001
sp_UserOfflineSmall Offline
201645
September 15, 2002 - 6:34 pm
sp_Permalink sp_Print

du måste slänga in betyg i första forloopen!

eller rättare sagt fimpa den andra forloopen helt.

typ:
for(int i ....) {
cout <<"kurs" ... <<"betyg"....;
cout < }

lite kort och yxat svar men jag hoppas du förstår!

farmor_gas
Siktar mot toppen
Medlem
Forum Posts: 88
Member Since:
June 4, 2001
sp_UserOfflineSmall Offline
201942
September 16, 2002 - 4:50 pm
sp_Permalink sp_Print

*i

jo ja löste det så.... fast det gick inte med en iterator.... utan va tvungen att göra på ett annat sätt, för *i pekar typ på det skit i betyg den ska skriva ut, o då tar den inte det i kurs...
löste det såhär iaf:

void Betyg::skrivUt()
{
cout << "Kurs:ttTimmar:ttBetyg:n-----tt-------tt------n";
for (unsigned int i = 0; i < kurs.size(); i++){
cout << kurs[i] << "tt" << timmar[i] << "tt";
stringstream tempConvert;
tempConvert << betyg[i];
string tempBetyg = tempConvert.str();
if(tempBetyg == "0")
cout << "IGn";
if(tempBetyg == "10")
cout << "Gn";
if(tempBetyg == "15")
cout << "VGn";
if(tempBetyg == "20")
cout << "MVGn";
}
}

blir ganska bra... fast ska ta bort t o ersätta med setw() tror ja...

Forum Timezone: Europe/Stockholm
Most Users Ever Online: 694
Currently Online:
Guest(s) 66
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Andreas Galistel: 16287
Jonas Klar: 15897
ilg@dd: 10810
Nyhet: 10607
Mind: 10550
Ctrl: 10355
Gueno: 9881
Guest: 9344
Snorch: 8881
Callister: 8468
Newest Members:
PetrbonFU PetrbonFU
Karine Bembry
Dolores Mcdaniels
Anibal McLeish
Francisca Alt
Alfie Everhart
Lester Huitt
Orlando Jorgensen
Mikki Lundgren
Dakota Kozlowski
Forum Stats:
Groups: 11
Forums: 59
Topics: 146630
Posts: 1300967

 

Member Stats:
Guest Posters: 2
Members: 79425
Moderators: 0
Admins: 11
Administrators: nordicadmin, Henrik Berntsson, Anton Karmehed, Carl Holmberg, Joel Oscarsson, Mikael Linnér, Mikael Schwartz, Andreas Paulsson, Nickebjrk, Mattias Pettersson, EmxL