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 ]
000
21.10.2017, 18:30 Uhr
Progger33



Habe ich diese Aufgabe richtig soweit implementiert ?

https://www.pic-upload.de/view-34141573/r1.png.html

https://www.pic-upload.de/view-34141574/r2.png.html



C++:
#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(this->m_goalsScoredTotal>this->m_goalsReceivedTotal ){

        m_winsTotal += 1;
        goalsScored ++;
    }
    if(this->m_goalsScoredTotal<this->m_goalsReceivedTotal ){

            m_lostTotal += 1;
            goalsReceived++;
        }
    if(this->m_goalsScoredTotal==this->m_goalsReceivedTotal ){

                m_equalTotal += 1;
            }

}






Header


C++:

#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);
    bool operator << (const& CTeam rop);

};
ostream& operator <<(ostream& out,CTeam const& rop);




Ich bekomme folgende Fehler leider nicht weg?
Description Resource Path Location Type
expected ',' or '...' before 'rop' CTeam.h /CTeam line 29 C/C++ Problem
no 'std::__cxx11::string CTeam::getName()' member function declared in class 'CTeam' CTeam.cpp /CTeam line 17 C/C++ Problem
control reaches end of non-void function [-Wreturn-type] CLottoTicket.cpp /CTIP line 60 C/C++ Problem
No return, in function returning non-void CLottoTicket.cpp /CTIP line 35 Code Analysis Problem
suggest parentheses around assignment used as truth value [-Wparentheses] CLottoTicket.cpp /CTIP line 43 C/C++ Problem

Die übergebenen Parameterwerte werden außerdem im jeweiligen Attribut für die Gesamtzahl der eigenen Tore bzw. der Gegentore aufsummiert.

War hiermit einfach das gemeint:

goalsScored ++;

Und für den anderen Fall das andere?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
22.10.2017, 12:54 Uhr
ao

(Operator)


Zu dem ersten Fehler (expected bla before rop): Es heißt nicht
bool operator << (const& CTeam rop);
sondern
bool operator << (const CTeam & rop);

Zu dem zweiten Fehler (no getName() function ): MIt
string getName;
in der class-Definition deklarierst du eine Membervariable, keine Methode. Methoden haben immer ein Klammerpaar, das kann auch leer sein (ohne Parameter dazwischen).

Die nächsten Fehler beziehen sich auf eine andere Aufgabe.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
22.10.2017, 12:56 Uhr
ao

(Operator)


Deine Implementierung von addResult ist falsch.

Wenn m_goalsScoredTotal größer ist als m_goalsReceivedTotal (also wenn die Mannschaft in der ganzen bisherigen Saison mehr Tore geschossen als reingekriegt hat), dann soll die Mannschaft im aktuellen Spielergebnis noch ein Tor geschenkt kriegen (goalsScored++)? So hast du es programmiert.

Denk nochmal drüber nach,
* was m_goalsReceivedTotal und m_goalsScoredTotal speichern,
* in welcher Situation addResult benutzt wird
* was die Parameter von addResult bedeuten.

Dieser Post wurde am 22.10.2017 um 13:16 Uhr von ao editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
22.10.2017, 13:20 Uhr
Progger33




C++:
#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);
    bool operator< (const CTeam& rop);

};
ostream& operator <<(ostream& out,CTeam const& rop);






C++:

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


    if(this->goalsScored>this->goalsReceived ){

        m_winsTotal += 1;

    }
    if(this->goalsScored<this->goalsReceived ){

            m_lostTotal += 1;

        }
    if(this->m_goalsScored==this->m_goalsReceived ){

                m_equalTotal += 1;
            }

}



habe es jetzt so umgeändert ?
Aber das klappt ja auch nicht , da es keine member Variable gibt ?
Soll ich von goalsScored eine member Variable z.b im Header erstellen?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
22.10.2017, 14:25 Uhr
Progger33



Könnte man das so machen?


C++:
#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_goalsScoredTotal>m_goalsReceivedTotal){

        m_winsTotal += 1;


    }
    if(goalsScored<goalsReceived &&  m_goalsScoredTotal<m_goalsReceivedTotal  ){

            m_lostTotal += 1;


        }
    if(m_goalsScoredTotal==m_goalsReceivedTotal && goalsScored== goalsReceived){

                m_equalTotal += 1;
            }

}
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
22.10.2017, 18:15 Uhr
ao

(Operator)


Weitere Member (goalsScored und so) brauchst du nicht. Darfst du auch nicht, es ist ja vorgegeben, welche Member die Klasse CTeam haben darf.

Beitrag 004 geht schon in die richtige Richtung, trifft es aber noch nicht ganz. Weißt du, wie so eine Ligatabelle geführt wird? Welche Zähler gibt es und welche werden erhöht, wenn ein Spielergebnis eingetragen wird?

Wenn zum Beispiel Bielefeld gegen Bayern 3:1 gewinnt, was passiert dann in den CTeam-Objekten "Bielefeld" und "Bayern"?

An welchen Daten (innerhalb von addResult) erkennt man, welche Mannschaft das Spiel gewonnen hat? Und welche Daten spielen dafür keine Rolle?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
22.10.2017, 20:50 Uhr
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
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
22.10.2017, 22:39 Uhr
Progger33




C++:
#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;
        m_goalsScoredTotal++;




    }
    if(goalsScored<goalsReceived   ){

            m_lostTotal += 1;
            m_goalsReceivedTotal += goalsReceived;
            m_goalsReceivedTotal++;



        }
    if( goalsScored== goalsReceived){

                m_equalTotal += 1;
                m_equalTotal++;
            }

}

 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
22.10.2017, 23:17 Uhr
Progger33



Scheint wenig los zu sein im Forum

Ich poste schon mal die nächste Funktion .

Passt es ao?
Gehe jetzt bald auch pennen

C++:
unsigned int const CTeam::getTotalPoints(){

    int tmp = 0;
     if(m_goalsScoredTotal>m_goalsReceivedTotal ){

        return tmp += 3;

     }

     if(m_goalsScoredTotal<m_goalsReceivedTotal   ){

         return tmp;

         }

     if(m_goalsScoredTotal==m_goalsReceivedTotal   ){
        return tmp += 1;

     }



}
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
23.10.2017, 00:24 Uhr
Progger33




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;

            }

}

unsigned int const CTeam::getTotalPoints(){

    return 3*m_winsTotal;
    return 1*m_equalTotal;
    return 0*m_lostTotal;


}


Kannst du mir erklären wie ich das genau mit operator << ausgeben soll?

https://www.pic-upload.de/view-34151512/fb.png.html
 
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: