C: magisches Quadrat

Diskutiere C: magisches Quadrat im Developer Network Forum im Bereich Hardware & Software Forum; Ich versuche ein magisches Quadrat in C zu programmieren. Zeilensumme=Spaltensumme=Diagonale-summe Ich hab jetzt ein Quadrat erstellt, weiß aber...
  • C: magisches Quadrat Beitrag #1
S

sky1

Neues Mitglied
Dabei seit
09.01.2013
Beiträge
1
Reaktionspunkte
0
Ich versuche ein magisches Quadrat in C zu programmieren.

Zeilensumme=Spaltensumme=Diagonale-summe

Ich hab jetzt ein Quadrat erstellt, weiß aber nicht wie ich die Summen bilden kann.
Wenn die Summen nicht übereinstimmen, soll das ganze solange wiederholt werden bis es passt.
Kann mir jemand helfen?
Das Quadrat soll mit Zufallszahlen gefüllt sein
5x5=Zahlen von 1-25

Code:
#include <stdio.h>
//#include <time.h>
 
void main()
{	int  max;
	printf("Bitte geben Sie die Groesse ein:");
	scanf("%d",&max);
    int feld[max][max];
    int k,i,j;
	  
    srand(time(0));
 
        k=1;
        for(i=0;i<max;i++)
        {
            for(j=0;j<max;j++)
            {
                feld[i][j]=rand() % max*max;
               
                printf("%2i",k,feld[i][j]);
 
                k++;
            }
        }
}

danke
 
  • C: magisches Quadrat Beitrag #2
willikufalt

willikufalt

Bekanntes Mitglied
Dabei seit
28.08.2001
Beiträge
1.481
Reaktionspunkte
0
Ehrlich gesagt, kommt mir das Ganzen noch zu unausgegoren vor.

1. Das Feld mit Zufallszahlen zu besetzen, in der Hoffnung, irgendwann einmal ein magisches Quadrat zu erhalten, finde ich wenig sinnvoll. War das wirklich so vorgegeben?

2. Wenn du schon mit Zufallszahlen arbeiten willst, dann musst du das wenigstens richtig machen. D.h. Das Feld sollte wirklich nur mit den Zahlen von 1 bis 25 beschrieben werden und es sollten alle Zahlen unterschiedlich sein. Beides ist bei dir im Moment nicht der Fall.

Denke nochmal drüber nach!
 
  • C: magisches Quadrat Beitrag #3
fox99

fox99

Bekanntes Mitglied
Dabei seit
27.11.1999
Beiträge
3.948
Reaktionspunkte
27
Ort
Omicron Persei 8
wie berechnest du die summe für die 1. zeile?
wie kannst du die summe für eine beliebige zeile berechnen?
wie kannst du die summe für eine beliebige spalte berechnen?
wie kannst du die summe der 1. diagonale berechnen?
wie kannst du die summe der 2. diagonale berechnen?
wie kannst du prüfen ob die summe der 1. zeile == der summe aller zeilen/spalten/diagonalen ist?
(auf die letzten 5 fragen solltest du mit einer funktion antworten)

wenn du das alles beantwortest hast, schau dir die do...while schleife an.
 
Thema:

C: magisches Quadrat

ANGEBOTE & SPONSOREN

https://www.mofapower.de/

Statistik des Forums

Themen
213.179
Beiträge
1.579.171
Mitglieder
55.876
Neuestes Mitglied
RamiroGarn
Oben