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

Fişierul numere.in conţine cel mult 5000 de numere reale, câte unul pe fiecare
linie. Se cere să se scrie un program care să citescă toate numerele din fişier şi
să afişeze pe ecran numărul de ordine al primei, respectiv al ultimei linii pe
care se află cel mai mare număr din fişier. Cele două numere vor fi separate
printr-un spaţiu. Exemplu: dacă fişierul conține numerele 3.5 7 -4 7 2 7 6.3
5, pe ecran se vor afişa numerele 2 6.
Va rog!

Răspunsuri la întrebare

Răspuns de boiustef
5

Răspuns:

Explicație:

#include <iostream>

#include <fstream>

using namespace std;

ifstream f("numere.in");

float num, maxim;

int linie, primaap, ultimaap;

int main()

{

   f >> num;

   maxim=num; linie=1;

   primaap=1; ultimaap=1;

   while (f >> num)

   {

       ++linie;

       if (num>maxim)

       {

           maxim=num;

           primaap=linie; ultimaap=linie;

       }

       else

       {

           if (num==maxim)

           {

               ultimaap=linie;

           }

       }

   }

   cout << primaap << " " << ultimaap;

}

Alte întrebări interesante