Pagina 1 di 1

[C++] matrice colonna con maggior numero di elementi dispari

Inviato: giovedì 18 giugno 2015, 17:28
da vfabrisv94
Salve a tutti, dovrei fare questo programma :
Letta in input una matrice A di n×m numeri interi, stampa la colonna con il maggior numero di elementi dispari.

Come faccio a dire la colonna con il maggior numero di elementi dispari ?

Codice: Seleziona tutto

#include<iostream>
using namespace std;
const int R=100;
const int C=100;

void carica_matrix(int matrix[R][C], int *punt_righe, int *punt_colonne){

    cout << "Inserisci le righe: ";
	cin >> *punt_righe;
	cout << endl;

	cout << "Inserisci le colonne: ";
	cin >> *punt_colonne;
	cout << endl;

	cout << "\nInserisci gli elementi della matrice: "<< endl;

	for(int r=0; r<*punt_righe; r++)
	{
		for(int c=0; c<*punt_colonne; c++)
		{
			cin >> matrix[r][c];
		}
	}
}

void stampa_matrix(int matrix[R][C], int *pr, int *pc){

    for(int r=0; r<*pr; r++)
    {
        for(int c=0; c<*pc; c++)
        {
            cout<<matrix[r][c]<<"\t";
        }
        cout<<endl;
    }
}

int main(){


    int matrix[R][C];
    int righe, colonne;

    carica_matrix(matrix, &righe, &colonne);
    stampa_matrix(matrix, &righe, &colonne);
    cout<<endl<<endl;

    int cont=0;
    for(int c=0; c<colonne; c++)
    {
        cont=matrix[0][c];
        for(int r=0; r<righe; r++)
        {
            if(matrix[r][c]%2!=0)
            {
                cont++;
            }
        }
    }

    cout<<"Gli elementi dispari della matrice sono: "<<cont;




}

Re: [C++] matrice colonna con maggior numero di elementi dis

Inviato: giovedì 18 giugno 2015, 20:52
da M_A_W_ 1968
Come faresti con una matrice scritta su un foglio di carta? Per ogni colonna conti gli elementi dispari (hint: quelli il cui AND logico con la costante 1 fornisce un risultato non nullo), scorrendone i valori. Al termine del conteggio di una colonna, salvi a parte il massimo, semplicemente confrontando il valore appena ricavato col valore precedente (inizialmente nullo) e sostituendo se il valore attuale risulta maggiore di quelo precedente.
Questo è tutto.

Re: [C++] matrice colonna con maggior numero di elementi dis

Inviato: giovedì 18 giugno 2015, 23:22
da vaeVictis
A margine di quanto detto da M_A_W, memorizzati anche l'indice di colonna (analogamente a come fai con il numero di elementi negativi).
Se ho visto bene nel tuo codice, stampi a video anche i numeri della colonna