April 2021 2 102 Report
c++ quadrato magioo aiutoooooooooooooooooo?

ragazzi ho fatto quetso programma ma mi crea dei problemi cosa mi suggerite di fare?

#include <iostream>

using namespace std;

int main(){

int i, j,controllo,n;

i=0;

j=0;

bool contr=false;

cout<<"Inserire il numero di righe e colonne della matrice"<<endl;;

cin>>n;

int mat[n][n];

int somme[n+2];//per fare somma diagonali

int sommerig[n];

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

somme[i]=0;

sommerig[i]=0;

}

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

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

cout<<endl;

cout<<" Riga: "<<i<<" Colonna: "<<j<<" ";

do{

cin>>mat[i][j];

//mettiamo ||

}while((mat[i][j]>(n*n))||(mat[i][j]<1));

}

}

//faccio la somma degli elementi per ogni riga e la salvo in un vettore somma di nome sommerig

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

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

sommerig[j]+=mat[i][j];

}

}

for(i=0;i<n;i++) {// faccio la somma per ogni colonna e la salvo in un altro vettore somme

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

somme[i]+=mat[i][j];

}

}

for(i=0;i<n;i++) { //faccio la somma della diagonale principale

somme[n]+=mat[i][i];

}

j=n;

for(i=0;i<n;i++){ //faccio la somma della diagonale secondaria

somme[n+1]+=mat[i][j];

j--;

}

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

cout<<somme[i]<<endl;

}

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

cout<<sommerig[i]<<endl;

}

//inizio controlli

controllo=somme[0];

for(i=1;i<(n+2);i++) {

if(controllo!=somme[i]){

contr=true;

break;

}

}

controllo=sommerig[0];

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

if(controllo!=sommerig[i]){

contr=true;

break;

}

}

//qui guardo se il controllo è vero o falso

if(contr=false) cout<<" La matrice inserita e' un quadrato magico"<<endl;

else cout<<" La matrice inserita non e' un quadrato magico "<<endl;

system("pause");

return 0;

}

grazia in anticipo di 10 punti al migliore

Aggiornamento:

si bravo gigi ma non mi tornano i controlli finali ad esempio faccio una matrice 3x3 3 righe e tre colonne e metto tutti uni mi da che non è un matrice magica

Aggiornamento 3:

Gigi hai provato a mettere una matrice con tutti 1 e una matrice con un 1 e tutti due mettendo contr in questo modo : !contr?


Please enter comments
Please enter your name.
Please enter the correct email address.
You must agree before submitting.

Answers & Comments




Helpful Social

Copyright © 2024 QUIZSILO.COM - All rights reserved.