Informatică, întrebare adresată de CiortescuMihai7, 9 ani în urmă

Cerinţa Sort2 ---> #236 pbinfo (ajutor, nevoie de 100 pct)

Fişierul text sort2.in conţine, dispuse pe mai multe linii, cel mult 100 de numere naturale, cu cel mult 4 cifre fiecare. Să se afişeze în fişierul sort2.out, în ordine crescătoare, toate numerele din fişierul sort2.in care au cel mult 2 cifre.

Date de intrare
Fişierul de intrare sort2.in conţine, dispuse pe mai multe linii, cel mult 100 de numere naturale, cu cel mult 4 cifre fiecare.

Date de ieşire
Fişierul de ieşire sort2.out va conţine, pe prima linie, în ordine crescătoare, separate prin exact un spaţiu, toate numerele din fişierul sort2.in care au cel mult 2 cifre.

Restricţii şi precizări
dacă în fişierul de intrare nu există numere cu cel mult 2 cifre, se va afişa în fişierul de ieşire, pe prima linie, mesajul “NU EXISTA”.



Exemplu:

sort2.in:
86 18 7210 73 15 5
7989 825
562 732 5 911

sort2.out:
5 5 15 18 73 86

Răspunsuri la întrebare

Răspuns de stassahul
12
#include <bits/stdc++.h>

using namespace std;

ifstream fin("sort2.in");
ofstream fout("sort2.out");

int x,nr,a[101];

int nrcifre(int a);

int main()
{

    while(fin >> x)
        if(nrcifre(x)<=2)
            a[nr++]=x;

    if(nr==0) fout << "NU EXISTA";
    else
    {
        sort(a,a+nr);
        for(int i=0;i<nr;i++)
            fout << a[i] << " ";
    }

    return 0;

}

int nrcifre(int a)
{
    if(a<10) return 1;
    int k=0;
    while(a!=0)
    {
        k++;
        a/=10;
    }
    return k;
}
Alte întrebări interesante