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

Se citeste o matrice n*m cu elemente intregi. Sa se determine elementul care
apare de cele mai multe ori in matrice si de cate ori apare el.


boiustef: dacă ai comenta şi care e dimensiunea elementelor matricei, ar fi super!
AnnaCiolte: Asta e cerinta :)

Răspunsuri la întrebare

Răspuns de Shadozaw
1

#include <iostream>

using namespace std;

int main()

{

   unsigned int n, m;

   int v[10] = {0} , a[100][100], max, contor = 0;

   cin >> n >> m;

   for(int i = 0; i < n; i++)

   {

       for(int j = 0; j < m; j++)

       {

           cin >> a[i][j];

           v[a[i][j]]++;

       }

   }

   for(int i = 0; i< 10; i++)

   {

       if(contor <= v[i])

       {

           contor = v[i];

           max = i;

       }

   }

   cout << "Numarul " << max << " apare de " << contor << " ori";

   return 0;

}

Nu ai specificat numarul maxim de elemente care pot intra in matrice si dimensiunea maxima a elementelor din ea. Programul functioneaza doar pentru un maxim de 10.000 valori (100x100), iar elementele sunt doar cifre.


AnnaCiolte: Nici in cerinta nu s-a specificat, multumesc btw, o sa incerc! :)
boiustef: :)))
Răspuns de victorboghean
0

#include <stdio.h>

#include <stdlib.h>

int a[100][100];

int i,j,k,q,r,p = 0,k,x,n,m;

cit_mat(){

 for(i=0; i<n; i++){

  printf("\n");

   for(j=0; j<m; j++){

    scanf("%d",&a[i][j]);

  }

 }

}

afis_mat(){

 for(i=0; i<n; i++){

  printf("\n");

   for(j=0; j<m; j++){

    printf("%d ",a[i][j]);

   }

}

}

scan_repet(){

 for(r=0;r<n;r++){

  for(q=0; q<m; q++){

  for(i=0; i<n; i++){

    for(j=0; j<m; j++){

     if(a[r][q] == a[i][j]){

      k++;    

      }

     }

     }if(k>p){    

      p=k;

      x=a[r][q];

      k=0;      

     }else{

       printf("\n%d",k);

      k=0;

         }

   }

 }

printf("\n\nElementul %d se repeta cel mai mult",x);

  printf("\nEl se repeta de %d ori",p);

}

main(){

 printf("Dati nr de linii n = ");

 scanf("%d",&n);

 printf("Dati nr de coloane m = ");

scanf("%d",&m);

cit_mat();  

 afis_mat();

printf("\n\n");  

scan_repet();

}


victorboghean: Merge bine!
Coroana?
victorboghean: Succes!
Alte întrebări interesante