salve a tutti,
ho riscontrato un problema nella risoluzione di questo esercizio:
Scrivere un programma tale che, letti due numeri interi n ed m compresi nell’intervallo (3,5) definisca una matrice A di dimensioni con elementi interi generati in modo random e compresi nell’intervallo [0,20] ; successivamente visualizzare tale matrice a video. Quindi, con h e k interi inseriti a piacere, visualizzare a video gli elementi della riga h e della colonna k, con e . Qualora la matrice risultasse quadrata se ne calcoli la traccia.
riesco a scrivere la matrice e a stamparla, però no so come visualizzare gli elementi della riga 'h' e colonna 'k' inserendoli a piacere. Potreste darmi una mano? Ringrazio anticipatamente =)
Vi allego il testo dell'esercizio fin'ora svolto.
#include <iostream>
#include <stdlib.h>
#include <math.h>
#include <time.h>
#include <cstdlib>
using namespace std;
void main()
{
int mat[5][5], n, m, a, b;
int num,range, min=0, max=20;
int h, k;
cout<<"Inserire due numeri interi conpresi nell'intervallo (3,5): "<<endl;
while (!(cin>>n) || (n<3) || (n>5))
{
cout<<"Input errato. Reinserire input.";
cin.clear();
cin.ignore(100, '\n');
}
while (!(cin>>m) || (m<3) || (m>5))
{
cout<<"Input errato. Reinserire input.";
cin.clear();
cin.ignore(100, '\n');
}
srand(time(0));
range=max-min+1;
for (a=0; a<n; a++)
{
for (b=0; b<m; b++)
{
num=rand()%range+min;
mat[n][m]=num;
cout<<mat[n][m]<<' ';
}
cout<<endl;
}
cout<<"Inserire due numeri per visualizzare gli elementi riga-colonna: "<<endl;
while (!(cin>>h) || (h<1) || (h>n))
{
cout<<"Input errato. Reinserire input.";
cin.clear();
cin.ignore(100, '\n');
}
while (!(cin>>k) || (k<1) || (k>m))
{
cout<<"Input errato. Reinserire input.";
cin.clear();
cin.ignore(100, '\n');
}
cout<<endl<<"ecco h: "<<h<<" Ecco k: "<<k<<endl;
/*Fino a qui riesco a svolgere, il problema è inserire
'h' e 'k' a piacere e visualizzare gli elementi di quella riga e colonna.
Ho provato a svolgerlo cosi : */
for (h=0; h<n; h++)
{
cout<<mat[h][n];
}
}