-1

だから私は pat.txt で最低の年を見つけようとしていて、don.txt で最高の年を見つけようとしています:

Pat.txt

Androf O kidney 24 2012
Blaren B kidney 35 2010
Cosmer A kidney 35 2000
Eralod O heart 53 2009
Forend B kidney 31 2003

ドン.txt

Zerk B kidney 20 2009
Rampe A kidney 31 2005
Darech B kidney 34 2008
Seo A kidney 26 2010
Yuio B kidney 26 2013

コードは次のとおりです。

 struct Person {

    string surname;
    string BType;
    string organ;
    int age;
    int year, ID, IDp;
} Patient[50], Donor[50];

次に、関心のあるコード:

int Date = 5000;
        int Datel = 1000;
            for (i = 0; i < 6; i ++){
                    for (i1 = 0; i1 < 6; i1++){

                            if ((Patient[i].BType == Donor[i1].BType) && (Patient[i].organ == Donor[i1].organ)){

                                    if (Patient[i].year < Date){
                                        Date = Patient[i].year;

                                    //}
                                        if ((Patient[i].year == Date ) && (Donor[i1].year > Datel)){
                                            Date = Patient[i].year;
                                            Datel = Donor[i1].year;
                                            cout << Date << "   " << Datel << "\n";

                                        }

                                    }
                            }
                        }
                }

現在、最高の患者と最低のドナーを取得しています (2010-2009)、取得する必要がある (2003-2013)

等価を行っている if 文の 1 つでロジックが間違っているように感じます。現時点では、最高の患者と最低のドナーを見つけています。私はそれらをひっくり返さなければなりません。これを理解するのに何時間も費やしましたが、誰かが私の間違いを見てくれれば本当にありがたいです. ばかげた小さな間違いだと確信していますが、私の人生ではそれを見つけることができません

4

1 に答える 1