Algoritmo per i veri cervelloni

Pubblicità

CosasNostras

Utente Attivo
Messaggi
988
Reazioni
0
Punteggio
47
Ciao a tutti ....devrei risolvere questo problema in C ma mi basterebbe un ragionamento logico......quindi non bisogna per forza conoscere il linguaggio di programmazione.

Il problema

Devo generare un "quadrato magico" di N righe e N colonne ,con N dispari e minore di 20.
Per quadrato magico si intende una matrice quadrata di N righe e N colonne in cui ciascun elemento della matrice è un numero intero da 1 a N², e la somma degli elementi in ciascuna riga,di ciascuna colonna e di ciascuna delle due diagonali principali è uguale alla costante N*(N²+1)/2


Grazie per l'aiuto.
 
Alastor ha detto:
Mi sono perso su questa frase:

La somma di ogni riga deve essere uguale a N*(N²+1)/2
La somma di ogni colonna deve essere uguale a N*(N²+1)/2
E le 2 diagonali principali pure devono essere uguali a N*(N²+1)/2

N- è il numero di righe(o di colonne perchè è una matrice quadrata)



Grazie per avermi risp
 
Credo che tu possa farlo usando una matrice di puntatori... l'N*(N²+1)/2 invece deve venire senza bisogno di controllo... Se il numero delle colonne è uguale a quello delle righe
 
Ultima modifica:
Alastor, magari CosasNostras voleva la soluzione :biglaugh:
A sto punto aiuta anche me a fare un programma in LISP e in Prolog che giustifichi un testo inserito..:asd:
Ci sto sbattendo ancora la testa :mad:
 
Ultima modifica:
iLLiDaN ha detto:
Alastor, magari CosasNostras voleva la soluzione :biglaugh:
A sto punto aiuta anche me a fare un programma in LISP e in Prolog che giustifichi un testo inserito..:asd:
Ci sto sbattendo ancora la testa :mad:


Ho provato di tutto .......non mi viene alcuna soluzione.....


mi sa che domani l'impreparato è inevitabile:D
 
Alastor ha detto:
Credo che tu possa farlo usando una matrice di puntatori... l'N*(N²+1)/2 invece deve venire senza bisogno di controllo... Se il numero delle colonne è uguale a quello delle righe


Scusami ma ti ho capito poco.
 
Ah ho capito cosa intendi... :nod:
Ma i valori devono essere interi? Perchè io credevo che fossero stringhe o_O
 
Risolto:

Soluzione tolta, mi veniva solo se tutti gli elementi erano uguali :P
 
Ultima modifica:
Alastor ha detto:
Risolto:

Soluzione tolta, mi veniva solo se tutti gli elementi erano uguali :P


Si si sono valori......
aspè quali valore tutti uguali???Sicuro che funzioni ???


Ce ....supponi che tu abbia N=5 non c'è 1 valore uguale a tutti gli altri.....
deve funzionare con N che assuma anche valori diversi
 
Ultima modifica:
Nietzsche ha detto:
Wiki ITA
Wiki ENG
Feci tempo fà un algoritmo simile, ma adesso non mi ricordo come lo risolsi. In ogni caso c'è tutto spiegato nei due link sopra.


Ho capito benissimo il ragionamento di come si costruisce....ma come fai a tradurlo in un linguaggio come C ????Non sembra semplicissimo.:nunu:


Tu con quale linguaggio l'hai fatto??
 
Ultima modifica:
enonva ha detto:


Enovna ti devo un favore grosso quanto una casa :bowdown: :bowdown: :bowdown: ....provo subito a farlo in C

hmmm....molto bello il progetto........(fatto copia incolla del codice)
Domani cecherò di capirlo per bene......e farlo usando funzioni +"semplici" tante non le ho ancora fatte
 
Ultima modifica:
Pubblicità
Pubblicità
Indietro
Top