begin process at 2012 02 13 17:26:49
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Maths & Algorithmes

 > CARRÉ MAGIQUE

CARRÉ MAGIQUE


 Information sur la source

Note :
Aucune note
Catégorie :Maths & Algorithmes Classé sous :algorithmes, Carré smagiques, implémentation Niveau :Débutant Date de création :09/05/2008 Vu / téléchargé :11 807 / 166

Auteur : stankov

Ecrire un message privé
Commentaire sur cette source (0)
Ajouter un commentaire et/ou une note

 Description

Après avoir donné un coup de main à quelqu'un à ce sujet, j'ai décidé de partager l'algorithme que j'ai et que j'utilise pour construire un carré magique.

Mon principe est de remplir le carré magique dans le direction NORD-OUEST (en allant vers la gauche et en montant), avec un ensemble de controls associés.
Vous verrez ça dans ma source.

Coté présentation c'est pas fameux, mais c'est le cadet de mes soucis (et je crois que beaucoup comprendront).

Source

  • <html>
  • <head>
  • <title>Construction des Carrés Magiques</title>
  • </head>
  • <body>
  • <form action="Carrés Magiques.asp" method="post" name="C_M">
  • Taille du Carré Magique:
  • <input type="text" name="nb">
  • <input type="submit" value="Générer">
  • <br /><br />
  • </form>
  • <%
  • dim Taille, nbEnCours, nbElt
  • dim i,j 'les compteurs
  • dim a(10,10) 'la matrice
  • 'on receuille la taille du carré à construire
  • taille=request.form("nb")
  • 'la taille donné doit:
  • '- Etre un nombre impaire
  • '- Etre comprise entre 1 et 10 (pour notre cas)
  • if ((taille mod 2)=0) or (taille<=1) or (taille>=10)then
  • response.write("Veuillez saisir un nombre impair compris entre 1 et 10!!")
  • else
  • 'affectation du nombre total de nombre de notre carré
  • nbElt=taille*taille
  • nbEnCours=1
  • do while (nbEnCours <=nbelt)
  • if nbEncours=1 then
  • i=1
  • j=(taille+1)/2
  • else
  • i=i-1
  • j=j-1
  • end if
  • if ((nbEnCours mod taille)=1) and (nbEnCours <> 1) then
  • i=i+2
  • if i>taille then i=1
  • j=j+1
  • if j>taille then j=1
  • end if
  • if i<=0 then i=taille
  • if j<=0 then j=taille
  • a(i,j)=nbEncours
  • nbEnCours=nbEnCours+1
  • loop
  • 'affichage du carré
  • response.write("<h2>Carré Magique de taille " & taille & "</h2><br />")
  • response.write("<table border=2>")
  • for i=1 to taille
  • response.write("<tr>")
  • for j=1 to taille
  • response.write("<td>" & a(i,j) & "</td>")
  • next
  • response.write("</tr>")
  • 'response.write("<br />")
  • next
  • response.write("</table>")
  • end if
  • %>
  • <body>
  • </html>
<html>
	<head>
		<title>Construction des Carrés Magiques</title>
	</head>
	<body>
		<form action="Carrés Magiques.asp" method="post" name="C_M">
			Taille du Carré Magique:
			<input type="text" name="nb">
			<input type="submit" value="Générer">
			<br /><br />
		</form>
		<%
		dim Taille, nbEnCours, nbElt
		dim i,j 'les compteurs
		dim a(10,10) 'la matrice

		'on receuille la taille du carré à construire
		taille=request.form("nb")
		'la taille donné doit:
		'- Etre un nombre impaire
		'- Etre comprise entre 1 et 10 (pour notre cas)
		if ((taille mod 2)=0) or (taille<=1) or (taille>=10)then
			response.write("Veuillez saisir un nombre impair compris entre 1 et 10!!")
		else
			'affectation du nombre total de nombre de notre carré
			nbElt=taille*taille
			nbEnCours=1
			do while (nbEnCours <=nbelt)
				if nbEncours=1 then
					i=1
					j=(taille+1)/2
				else
					i=i-1
					j=j-1
				end if
				if ((nbEnCours mod taille)=1) and (nbEnCours <> 1) then 
					i=i+2
					if i>taille then i=1
					j=j+1
					if j>taille then j=1
				end if
				
				if i<=0 then i=taille
				if j<=0 then j=taille				
				a(i,j)=nbEncours
				nbEnCours=nbEnCours+1
			loop
			
			'affichage du carré
			response.write("<h2>Carré Magique de taille " & taille & "</h2><br />")	
			response.write("<table border=2>")			
			for i=1 to taille
				response.write("<tr>")
				for j=1 to taille
						response.write("<td>" & a(i,j) & "</td>")
				next
				response.write("</tr>")
				'response.write("<br />")
			next
			response.write("</table>")
		end if
		%>
	<body>
</html>

 Conclusion

j'attend vos questions et suggestions concernant cette façon de voir la chose

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources de la même categorie

Source avec Zip Source avec une capture ZIPVIEWER - LISTER LE CONTENU D'UN ZIP par ghuysmans99
AFFICHER LES LIGNES D'UN DATATABLE DS UN ORDRE ALÉATOIRE par taillecrayon
Source .NET (Dotnet) SUITE DE NOMBRES ALESATOIRES DIFFERENTS par ErB
CONVERTIR UN NOMBRE DE BASE 10 EN BASE 36 ET L'INVERSE par Aurelyyy
Source avec Zip CRYPTAGE ALPHA NUMÉRIQUE par MalcolMZ

Commentaires et avis

Aucun commentaire pour le moment.

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,278 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales