infoarena

infoarena - concursuri, probleme, evaluator, articole => Informatica => Subiect creat de: Cernat Iulian din Septembrie 06, 2014, 17:45:14



Titlul: secventa de numere
Scris de: Cernat Iulian din Septembrie 06, 2014, 17:45:14
In fişierul numere.txt sunt memorate cel puţin 4 şi cel mult 90 de numere întregi cu cel
mult patru cifre fiecare, separate prin câte un spaţiu. Scrieţi un program C/C++ care
afişeză pe ecran patru numere aflate pe poziţii consecutive în fişier, care sunt în ordine
strict descrescătoare. Dacă există mai multe astfel de secvenţe programul afişează una
dintre acestea, iar dacă în fişier nu există astfel de secvenţe se afişează mesajul NU
EXISTA.
Exemplu: dacă fişierul numere.txt conţine, în această ordine, numerele 60 120 15 5
2 45 25 se vor afiÅŸa numerele 120 15 5 2.
Am copiat toate elementele din fisier intr-un vector , iar apoi am zis ca generez cele 4 numere printr-un nou vector.Ce ar trebui sa schimb la algoritmul de mai jos ca sa-mi afiseze corect?

int n=0,a[100],i,b[100],t=0,x,ok=0;
while(fin>>x)
{n++;
a[n]=x;
}
for(i=1;i<n;i++)
 {

  if(a>a[i+1])
 {  t++; 
     b[t]=a;
        else
          t=0;
   if(t==4)
     {
        break;
        ok=1;
     }
 }
 if(ok==1)

    for(i=1;i<=t;i++)
 fout<<b<<" ";
 else
    fout<<"nu exista";