👤
Mcd0ggy
a fost răspuns

Fisierul v.txt contine cel mult 10000 nr intregi, scrieti un program care afiseaza cifra cel mai des intalnita.

Răspuns :

#include<iostream>
#include<fstream>
using namespace std ; 

ifstream f ("v.txt");

int main(){ int v[10],i  ;  //Vectorul contine numarul de aparitii al fiecarei cifre
    
     for(i=0;i<=9;i++)
          v[i]=0;                 //Setam numarul de aparitii al fiecarei cifre la 0
int x;                             //x reprezinta numarul curent
while(f>>x)                   //Cat timp mai sunt numere in fisier , le citim 1 cate 1
       while(x>0){v[x%10]++;
                         x=x/10;}      /*Luam cifrele pe rand si crestem numarul de                                                      aparitii in vector pentru fiecare cifra */
int nr_ap=0,cifra ;     /*Variabila  nr_ap va retine nr. maxim de aparitii iar                                 variabila cifra va retine care cifra apare de cele mai multe ori */

 for(i=0;i<=9;i++)
     if(nr_ap<v[i]){
        nr_ap=v[i];
        cifra=i;}

cout<<"Cifra cea mai intalnita " <<cifra ;
f.close() ; }