Hallo, ich versuch grad ein Programm zu schreiben, welches aus einer eingelesenen Datei (also: a.out < Datei.dat) überprüft, ob es sich um ein magisches Quadrat handelt oder nicht und die magische Zahl (Summe der Diagonalen bzw. Spalten) ausgibt.
Ein magisches Quadrat ist eine quadratische Anordnung von Zahlen ,sodass die Summe der Zahlen aller Zeilen, Spalten und der beiden Diagonalen gleich ist.
Hier ist mein vorläufiges Programm, aber ich glaub, ich les die Datei nicht richtig im Programm ein.
#include<stdio.h>
#include<stdlib.h>
int main()
{
int groesse,a[16][16];
int i, j=0;
int summe,summe1,summe2;
int test=0;
printf("Dieses Programm ueberprueft auf Magische Quadrate\n");
for(i=0;i<16;i++)
{
for(j=0;j<16;j++)
scanf(" ",&a[j]);
}
summe=0;
for(i=0;i<16;i++)
for(j=0;j<16;j++)
{
if(i==j)
summe=summe+a[j];
}
for(i=0;i<16;i++)
{
summe1=0;
{
for(j=0;j<16;j++)
summe1=summe1+a[j];
}
if(summe==summe1)
test=1;
else
{
test=0;
break;
}
}
for(i=0;i<16;i++)
{
summe2=0;
for(j=0;j<16;j++)
{
summe2=summe2+a[j];
}
if(summe==summe2)
test=1;
else
{
test=0;
break;
}
}
if(test==1)
printf("Ist ein magisches Quadrat\n");
else{
printf("Ist kein magisches Quadrat\n");
}
int magischeZahl=summe2;
printf("Magische Zahl lautet: %d\n",summe2);
return 0;
}
Hoffe mir kann jemand helfen,
Danke im Voraus,
Fred
Fred123 (129) 7x Beste Antwort 19x "Danke"
|