Duplikate finden in der Reihe, wenn es einer ist, und zeigen Sie es C++

mein Programm nimmt Werte aus einer Eingabe-Datei und übergibt diese an einen array namens gpa. Habe ich eine Funktion, die findet den kleinsten Wert in der Lücke array und zeigt es, aber ich brauche auch die Anzeige eines doppelten Wert, wenn es einen gibt. Wie kann ich dies tun.

Danke im Voraus

#include <iostream>
#include <fstream>

using namespace std;

void lowestGpa(string names[], double gpa[], int SIZE){
    int count;
    double lowest = gpa[0];
    string name;

    for (count = 0; count < SIZE; count++)
    {
        if (gpa[count] <= lowest)
        {
            lowest = gpa[count];
            name = names[count];
        }
    }

    cout << name << " " << lowest;
}

int main()
{
    ifstream infile;
    infile.open("GPA.txt");

    int const SIZE = 15;
    string names[SIZE];
    double gpa[SIZE];

    while (infile)
    {
        for(int i = 0; i < SIZE; i++)
        {
            infile >> names[i] >> gpa[i];
        }
    }

    lowestGpa(names, gpa, SIZE);

    infile.close();

    return 0;
}
  • überprüfen Sie std::set
  • In einem nicht verwandten note, bitte lassen Sie die Gewohnheit des double-spacing code. Es macht Sie unlesbar. Verwenden Sie Leerzeichen strategisch.
  • Es gibt eine std::min_element Algorithmus und eine std::adjacent_find Algorithmus, der Ihnen genau sagt, wo benachbarte gleiche Elemente sind.
  • fügen Sie einfach eine weitere Schleife nach finden Sie den niedrigsten Wert zu überprüfen, welche einen entspricht es...
  • Möchten Sie vielleicht zu prüfen, auf dass man.
  • Es wird nicht immer zu true ausgewertet.

InformationsquelleAutor Javier Lopez | 2013-10-30
Schreibe einen Kommentar