Exemple #1
0
Note getBestNote(std::vector<Note>::iterator begin,std::vector<Note>::iterator end)
{
    if(begin==end)
    {
        throw NoteException("Erreur getBestNote() les itérateurs sont egaux, vous iterez probablement sur un tableau vide");
    }
    Note max = *begin;
    begin++;
    for(std::vector<Note>::iterator itNote=begin;itNote != end;itNote++)
    {
        if(itNote->getRang()<max.getRang())
        {
            max=*itNote;
        }
    }
    return max;
}
Exemple #2
0
Note getWorstNote(std::vector<Note>::iterator begin,std::vector<Note>::iterator end)
{
    if(begin==end)
    {
        throw NoteException("Erreur getBestNote() les itérateurs sont egaux, vous iterez probablement sur un tableau vide");
    }
    Note min = *begin;
    begin++;
    bool foundDeterminantNote=false;//les notes non déterminantes ne comptes pas.
    for(std::vector<Note>::iterator itNote=begin;itNote != end;itNote++)
    {
        if((!foundDeterminantNote)&&(itNote->getRang()>0))
        {
            foundDeterminantNote=true;
            min=*itNote;
        }
        if((foundDeterminantNote)&&(itNote->getRang()>min.getRang()))
        {
            min=*itNote;
        }
    }
    return min;
}
Exemple #3
0
bool operator==(const Note n1, const Note n2)
{
    return (n1.getRang()==n2.getRang());
}
Exemple #4
0
bool operator>(const Note n1, const Note n2)
{
    return n1.getRang()>n2.getRang();
}