👤

#2269
Cerința
Se dau n numere naturale. Determinați cel mai mare număr par introdus și numărul său de apariții.

Date de intrare
Fișierul de intrare maximpar.in conține pe prima linie numărul n, iar pe a doua linie n numere naturale separate prin spații.

Date de ieșire
Fișierul de ieșire maximpar.out va conține pe prima linie numerele maxim si apare, reprezentând maximul par dintre numerele de pe a doua linie a fișierului de intrare și aparițiile acestuia, dacă fișierul de intrare conține cel puțin un număr par, respectiv -1, în caz contrar.

Restricții și precizări
1 ≤ n ≤ 200
numerele de pe a doua linie a fișierului de intrare vor fi mai mici decât 1.000



Exemplu
maximpar.in

6
9 6 9 8 9 8
maximpar.out

8 2
Explicație
În fișierul de intrare sunt 6 numere, cel mai mare număr par este 8 și apare de 2 ori.



Răspuns :

Răspuns:

#include <iostream>

#include <fstream>

using namespace std;

int main()

{

   ifstream f("maximpar.in");

   ofstream g("maximpar.out");

   int n, a, maxim, apare=-1, i, ap=0;

   f >> n >> a;

   if (a%2==0) { maxim=a; apare=1; ap=1; i=1;}

   else

   {

       i=1;

       while (a%2 && i<n)

       {

           f >> a;

           ++i;

       }

    if (i<=n && a%2==0)

   {

      ap=1;  maxim=a; apare=1;

   }

   }

   if (ap)

   {

       while (i<n)

       {

           f >> a;

           ++i;

           if (a%2==0)

           {

               if (a>maxim) { maxim=a; apare=1; }

               else if (a==maxim) ++apare;

           }

       }

       g << maxim << " " << apare << endl;

   }

   else g << -1 << endl;

   f.close();  g.close();

   return 0;

}

Explicație:

Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile oferite v-au fost de ajutor. Nu ezitați să ne contactați pentru orice întrebare sau dacă aveți nevoie de asistență suplimentară. Vă așteptăm cu drag data viitoare și nu uitați să ne adăugați la favorite!


ID Learners: Alte intrebari