22/05/2017, 14:04
#include<iostream>
using namespace std;
main()
{
cout<<"start"<<endl;
int d1, d2; // in d1 pensavo di salvare il primo numero non contenuto nella diagonale secondaria, in d2 quello della principale
bool trovato = false; // inizializzo a false la variabile boolena perché non ho ancora trovato numeri non presenti nei 2 array
int A[6][6];
for(int i=0; i<6; i=i+1)
for(int j=0; j<6; j=j+1)
cin >> A[i][j]; // per riempire da cin la matrice 6x6
for(int i=0; i<6; i++) // qui pensavo di scorrere con i la diagonale principale e con j quella secondaria per confrontare cosi
{ // [0][0] con [0][5], [1][4], [2][3], [3][2] [4][1], [5][0] e poi proseguire con
// [1][1] con [0][5], [1][4], [2][3], [3][2] [4][1], [5][0] e cosi via fino a [5][5]
for(int j=0; j<6; j++)
{
if(A[i][i] != A[j][5-j]) // qui ho pensato che appena trova un numero della diagonale non contenuto in quella secondaria
{ // metta il flag a true, che salvi il valore della diagonale principale in d1 e che esca dal ciclo
trovato= true; // perché a me interessa solo il primo che trova, non tutti
d1 = A[i][i];
break;
}
}
}
// qui stessa cosa ma confrontando la secondaria con la principale e salvare in d2 il primo non contenuto nella principale
for(int i=0; i<6; i++)
{
for(int j=0; j<6; j++)
{
if(A[i][i-5] != A[j][j])
{
trovato= true;
d2 = A[i][i-5];
break;
}
}
}
if(!trovato)
cout <<"le due diagonali contengono gli stessi valori" << endl;
else
{
cout<<"diagonale principale contiene "<< d1 <<" che non e' sulla diagonale secondaria" << endl;
cout<<"diagonale secondaria contiene "<< d2 <<" che non e' sulla diagonale principale" << endl;
}
cout <<"end"<<endl;
}
22/05/2017, 21:43
#define N 6 // costante simbolica
const int dim = 6; // costante da definire nel main
22/05/2017, 23:29
25/05/2017, 00:09
#include<iostream>
using namespace std;
main()
{
cout<<"start"<<endl;
int d1, d2; // in d1 pensavo di salvare il primo numero non contenuto nella diagonale secondaria, in d2 quello della principale
bool trovato = false; // inizializzo a false la variabile boolena perché non ho ancora trovato numeri non presenti nei 2 array
int A[6][6];
for(int i=0; i<6; i=i+1) {
cout<<"riga "<<i<<endl;
for(int j=0; j<6; j=j+1)
cin >> A[i][j];
// per riempire da cin la matrice 6x6
}
for(int i=0; i<6 && !trovato ; i++) // qui pensavo di scorrere con i la diagonale principale e con j quella secondaria per confrontare cosi
{ // [0][0] con [0][5], [1][4], [2][3], [3][2] [4][1], [5][0] e poi proseguire con
// [1][1] con [0][5], [1][4], [2][3], [3][2] [4][1], [5][0] e cosi via fino a [5][5]
for(int j=0; j<6 && !trovato; j++)
{
if(A[i][i] != A[j][5-j]) // qui ho pensato che appena trova un numero della diagonale non contenuto in quella secondaria
{ // metta il flag a true, che salvi il valore della diagonale principale in d1 e che esca dal ciclo
trovato = true; // perché a me interessa solo il primo che trova, non tutti
d1 = A[i][i];
}
}
}
trovato = false;
// qui stessa cosa ma confrontando la secondaria con la principale e salvare in d2 il primo non contenuto nella principale
for(int i=0; i<6 && !trovato; i++)
{
for(int j=0; j<6 && !trovato; j++)
{
if(A[i][5-i] != A[j][j])
{
trovato= true;
d2 = A[i][5-i];
}
}
}
if(!trovato)
cout <<"le due diagonali contengono gli stessi valori" << endl;
else
{
cout<<"diagonale principale contiene "<< d1 <<" che non e' sulla diagonale secondaria" << endl;
cout<<"diagonale secondaria contiene "<< d2 <<" che non e' sulla diagonale principale" << endl;
}
cout <<"end"<<endl;
}
25/05/2017, 08:58
25/05/2017, 17:30
#define
per definire costanti è molto comune nel C, ma molto meno nel C++ (a livello professionale). Esistono varie alternative all'uso dei #define
per la definizioni di costanti:#define
ma è assicurato che il valore sia un intero (dal C++11 si può anche definire il suo tipo). Non può essere usata per valori diversi da interi. Con qualche "trucco" usando i template si può generare questa variabile in tempo di compilazione. Può essere usata per definire array statici o i parametri di template.#define
o in un enum
sono generalmente pensate come globali. Per cose più locali penso che constexpr e variabili siano scelte migliori.
25/05/2017, 17:36
25/05/2017, 22:46
25/05/2017, 22:47
26/05/2017, 11:06
Skuola.net News è una testata giornalistica iscritta al Registro degli Operatori della Comunicazione.
Registrazione: n° 20792 del 23/12/2010.
©2000—
Skuola Network s.r.l. Tutti i diritti riservati. — P.I. 10404470014.
Powered by phpBB © phpBB Group - Privacy policy - Cookie privacy
phpBB Mobile / SEO by Artodia.