Informatică, întrebare adresată de daniieell, 8 ani în urmă

Determină persoana cea mai în vârstă şi persoana cea mai tânără

Imi da doar persoana cea mai tinara, la cea mai batrina nu imi da nimic

Va rog cine poate corecta codul!! DAU COROANA!!!


--------------------------------------------------------------------

void testage()

{


int i=0, minim, maxim=0;

while(!pers.eof())

{

pers>>l[i].codP;

pers>>l[i].NumeP;

pers>>l[i].PrenP;

pers>>l[i].Ziua;

pers>>l[i].Luna;

pers>>l[i].Anul;

pers>>l[i].Sexul;

pers>>l[i].StareCiv;

pers>>l[i].Studiile;

pers>>l[i].CodAd;

i++;

m=i;

}

minim=l[i].Anul;

for(i=0;i l[i].Anul)minim=l[i].Anul;

}

system("cls");

for(i=0;i
{

if(maxim==l[i].Anul)

{

cout<<"Cea mai tinara persoana"< cout<<"Codul Persoanei: "< cout<<"Numele Persoanei: "< cout<<"Prenumele Persoanei: "< cout<<"Ziua: "< cout<<"Luna: "< cout<<"Anul: "< cout<<"Sexul: "< cout<<"____________________________________________"< }
if(minim==l[i].Anul)
{
cout<<"Cea mai batrina persoana"< cout<<"Codul Persoanei: "< cout<<"Numele Persoanei: "< cout<<"Prenumele Persoanei: "< cout<<"Ziua: "< cout<<"Luna: "< cout<<"Anul: "< cout<<"Sexul: "< cout<<"____________________________________________"< }

}

}

Răspunsuri la întrebare

Răspuns de Utilizator anonim
1

Răspuns:

#include <iostream>

#include <fstream>

#include <string>

using namespace std;

struct persoana {

   int codP;

   string NumeP;

   string PrenP;

   int Ziua;

   int Luna;

   int Anul;

   string Sexul;

   string StareCiv;

   string Studiile;

   int CodAd;

};

Persoana l[100];

int m;

ifstream pers;

void testage() {

   int minim, maxim = 0, i = 0;

   while (pers >> l[i].codP >> l[i].NumeP >> l[i].PrenP >> l[i].Ziua >> l[i].Luna >> l[i].Anul >> l[i].Sexul >> l[i].StareCiv >> l[i].Studiile >> l[i].CodAd) {

    i++;

    m = i;

   }

   minim = l[0].Anul;

   maxim = l[0].Anul;

   

   for (i = 1; i < m; i++) {

       if (maxim < l[i].Anul) {

        maxim = l[i].Anul;

       }

       if (minim > l[i].Anul) {

        minim = l[i].Anul;

       }

   }

   

   cout << "Cea mai tanara persoana:\n";

   for (i = 0; i < m; i++) {

       if (minim == l[i].Anul)

       {

           cout << "Codul Persoanei: " << l[i].codP << endl;

           cout << "Numele Persoanei: " << l[i].NumeP << endl;

           cout << "Prenumele Persoanei: " << l[i].PrenP << endl;

           cout << "Ziua: " << l[i].Ziua << endl;

           cout << "Luna: " << l[i].Luna << endl;

           cout << "Anul: " << l[i].Anul << endl;

           cout << "Sexul: " << l[i].Sexul << endl;

           cout << "____________________________________________" << endl;

       }

   }

   cout << "Cea mai batrana persoana:\n";

   for (i = 0; i < m; i++) {

       if (maxim == l[i].Anul)

       {

           cout << "Codul Persoanei: " << l[i].codP << endl;

           cout << "Numele Persoanei: " << l[i].NumeP << endl;

           cout << "Prenumele Persoanei: " << l[i].PrenP << endl;

           cout << "Ziua: " << l[i].Ziua << endl;

           cout << "Luna: " << l[i].Luna << endl;

           cout << "Anul: " << l[i].Anul << endl;

           cout << "Sexul: " << l[i].Sexul << endl;

           cout << "____________________________________________" << endl;

       }

   }

}

Explicație:

Structura "l" contine informatii precum codul, numele, prenumele, data nasterii, sexul, stare civila, studiile si codul adresei unei persoane. Functia "testage" itereaza prin vectorul "l" si determina cea mai tanara si cea mai batrana persoana prin compararea anului nasterii acestora. Apoi, informatiile despre acestea sunt afisate pe ecran.

Alte întrebări interesante