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

fisierul bac.in contine cel mult 1000 numere naturale cu cel mult 4 cifre despartite prin cate un spatiu . scrieti programul c++ care citeste numerele din fisier si afiseaza pe ecran ,in ordine crescatoare ,acele numere care au toate cifrele egale . daca fisierul nu contine niciun astfel de numar ,se va afisa pe ecran mesajul nu exista

Răspunsuri la întrebare

Răspuns de Cactus
2
#include <iostream>
#include<fstream>
using namespace std;
ifstream f("bac.in");
int egal(int n)
{
    int c;
    c=n%10;
    n=n/10;
    while(n)
    {       
            if(c!=n%10) return 0;
             n=n/10;
    }
    return 1;
}
int main()
{
    int n,x[1000],nr=0;
    while(f>>n)
    {
        if(egal(n)==1) {x[nr]=n; nr++;}
    }
    for(int i=0;i<nr-1;i++)
        for(int j=i+1;j<nr;j++)
         if(x[i]>x[j])
    {
        int aux=x[i];
        x[i]=x[j];
        x[j]=aux;
    }
    if(nr==0) cout<<"nu exista";
    else for(int i=0;i<nr;i++)
           cout<<x[i]<<" ";
}
Alte întrebări interesante