Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » Neue Frage C++

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] > 2 < [ 3 ] [ 4 ]
010
23.10.2017, 09:04 Uhr
ao

(Operator)



Zitat von Progger33:
Stimmt es so ao?

C++:
CTeam.cpp
*
*  Created on: 21.10.2017
*      Author: Medion
*/
#include<iostream>
using namespace std;
#include<string>
#include"CTeam.h"

CTeam::CTeam(string name ){

    m_teamName = name;
}

std::string CTeam::getName(){
    return m_teamName;

    }

void CTeam::addResult(unsigned int goalsScored,unsigned int goalsReceived){


    if(goalsScored>goalsReceived ){

        m_winsTotal += 1;
        m_goalsScoredTotal += goalsScored;




    }
    if(goalsScored<goalsReceived   ){

            m_lostTotal += 1;
            m_goalsReceivedTotal += goalsReceived;



        }
    if( goalsScored== goalsReceived){

                m_equalTotal += 1;
            }

}




Ich mach mich schon mal an den anderen Aufgabenteil

Dieser Versuch ist bisher noch der beste. Aber du scheinst nur mit Zu-Null-Siegen oder -Niederlagen oder mit 0:0-Unentschieden zu testen. 4:2 oder 1:1 wird jedenfalls falsch verarbeitet.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
011
23.10.2017, 09:07 Uhr
ao

(Operator)


Deine Versuche mit getTotalPoints sind noch sehr ausbaufähig. Auch hier gilt: Erst nachdenken, dann programmieren. Lies nochmal die Aufgabenstellung nach, das ist genauso wie in der Bundesliga. Wofür kriegt man wieviele Punkte?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
012
23.10.2017, 11:15 Uhr
Progger33




C++:
void CTeam::addResult(unsigned int goalsScored,unsigned int goalsReceived){


    if(goalsScored>goalsReceived ){

        m_winsTotal += 1;
        m_goalsScoredTotal += goalsScored;
        m_goalsReceivedTotal += goalsReceived;
        





    }
    if(goalsScored<goalsReceived   ){

            m_lostTotal += 1;
            m_goalsReceivedTotal += goalsReceived;
            m_goalsScoredTotal += goalsScored;




        }
    if( goalsScored== goalsReceived){

                m_equalTotal += 1;

            }

}

unsigned int const CTeam::getTotalPoints(){

    return 3*m_winsTotal+1*m_equalTotal;


}




Ist es jetzt so besser ?

Soll ich eigentlich auch ein cout << bei der addResult Methode einbauen ?
Für den operator << bei der nächsten Aufgabe?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
013
23.10.2017, 12:22 Uhr
ao

(Operator)


Jawoll, jetzt hast du es kapiert. Jetzt sorg noch in addResult dafür, dass bei Unentschieden die Torzähler mit hochgezählt werden (bei 1:1 zum Beispiel).


Zitat:
Soll ich eigentlich auch ein cout << bei der addResult Methode einbauen ?
Für den operator << bei der nächsten Aufgabe?

Wie meinst du das?

cout in addResult kannst du zum Debuggen benutzen (um nachzuverfolgen, was die Methode macht), aber mit dem operator<< von CTeam hat das nichts zu tun.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
014
23.10.2017, 13:07 Uhr
Progger33




C++:
if( goalsScored== goalsReceived){

                m_equalTotal += 1;
                m_goalsScoredTotal += goalsScored;
                m_goalsReceivedTotal += goalsReceived;
            }


Sieht es so gut aus?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
015
23.10.2017, 13:13 Uhr
ao

(Operator)


yo
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
016
24.10.2017, 01:12 Uhr
Progger33




C++:

* CTeam.h
*
*  Created on: 21.10.2017
*      Author: Medion
*/

#ifndef CTEAM_H_
#define CTEAM_H_
#include<iostream>
using namespace std;
#include<string>

class CTeam{
private:
    string m_teamName;
    unsigned int m_winsTotal=0;
    unsigned int m_lostTotal =0;
    unsigned int m_equalTotal= 0;
    unsigned int m_goalsScoredTotal = 0;
    unsigned int m_goalsReceivedTotal=0;

public:
    CTeam(string name = "NoName");
    string getName();
    void addResult(unsigned int goalsScored,unsigned int goalsReceived);
    unsigned int const getTotalPoints();
    friend ostream& operator <<(ostream& out,CTeam const& rop){

        out << "Bayern Muenchen" << " " << ":" << rop.addResult << rop.1*m_equalTotal << " " << "Tore"<<rop.goalsScored<<":"<<rop.goalsReceived << endl;
        return out;
    }
    bool operator< (const CTeam& rop);

};




#endif /* CTEAM_H_ */







Die ostream Ausgabe kommt im header oder ?
Stimmt so die erste Zeile der Ausgabe ?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
017
24.10.2017, 08:41 Uhr
ao

(Operator)


Mal ernsthaft: Heißen bei dir alle Vereine "Bayern München"?

Und ob die Zeile stimmt oder nicht, das kannst du dir selber beantworten:
1. Kompiliert der Kram?
2. Ist der ausgegebene Text wunschgemäß?

Wenn die Antwort beide Male Ja ist, dann ist die Chance groß, dass es stimmt.

Oder gehört das nicht zur Aufgabe, dass der Code kompilieren und laufen muss?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
018
24.10.2017, 09:53 Uhr
Progger33



Da sind zu viele Fehler drin gewesen

Jetzt sieht es ein wenig besser aus



C++:
ostream& operator <<(ostream& out,CTeam const& rop){

        out << rop.m_teamName << " " << ":" << rop.addResult << rop.1*m_equalTotal << " " << "Tore"<<rop.m_goalsScoredTotal<<":"<<rop.m_goalsReceivedTotal ;
        return out;
    }



Description Resource Path Location Type
cannot bind 'std::basic_ostream<char>' lvalue to 'std::basic_ostream<char>&&' CTeam.cpp /CTeam line 64 C/C++ Problem

Description Resource Path Location Type
no match for 'operator<<' (operand types are 'std::basic_ostream<char>' and '<unresolved overloaded function type>') CTeam.cpp /CTeam line 64 C/C++ Problem
Description Resource Path Location Type
Symbol 'm_equalTotal' could not be resolved CTeam.cpp /CTeam line 64 Semantic Error

Was mache ich hier genau falsch?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
019
24.10.2017, 13:24 Uhr
ao

(Operator)


<< rop.addResult: Wozu machst du das? Was soll das bewirken?

rop.1*m_equalTotal: Was soll das sein?

Welcher Plan steckt hinter diesem Code? Was überlegst du dir, bevor du das schreibst? Wie kommt man auf solche Ideen?

Ich behaupte jetzt einfach mal, die Aufgaben sind einigermaßen trivial. Studenten, die ungefähr wissen, wo es langgeht (und das Wort Bundesliga schon mal gehört haben), lösen das mit etwas Nachschlagen im Internet in ein bis zwei Stunden, und Profis in der Zeit, die sie zum Hinschreiben brauchen. Dass man sich tagelang damit rumschlägt und trotzdem nur mit massiver Hilfe weiterkommt, ist nicht normal.

Gibts zu den Aufgaben eine Vorlesung? Gehst du da rein und hörst zu? Interessiert dich Programmieren?

Dieser Post wurde am 24.10.2017 um 13:28 Uhr von ao editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] > 2 < [ 3 ] [ 4 ]     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: