Page 1 sur 2

multiplications

Posté : 19 nov. 2005, 00:39
par Invité
bon alors je viens de faire une exercice ou il faut faire un table demultiplication :
<table border="1" align="center" width="60%">
<?
  for ($a=1; $a<=10; $a++) {
    echo "<tr>";
	
    for ($i=1; $i<=10; $i++) { 
      $r=$i*$a;   
      echo "<td>$a*$i=$r</td>";
    }
    echo"</tr>";
  }
?>

</table>
jusque la sa vas, mais maintenant je dois faire en sorte ques le multiples de 2 3 5 7 apparaissent chacun d'une couleur differente.

Mais voila je ne sais pas ou mettre dans ma boucle et quel elements utiliser;

Je ne vous demande pas une solution mais juste un petit coup de pouce.

merci d'avance.

Posté : 19 nov. 2005, 00:40
par agité
excusez moi je m'etais pas encore inscrit :oops:

Re: multiplications

Posté : 19 nov. 2005, 02:06
par Truc
Salut,
le multiples de 2 3 5 7
pas vraiment de suite la dedans :wink:

il faut te servir d'une opération de "modulo" (reste dune division)(par exemple) => un exemple

Posté : 19 nov. 2005, 03:05
par agité
Ouais mais je suis pas censé faire sa, faut que ce soit automatique comme le s tables de multiplications si je veux rajouter une table je change 2 valeurs et c'est partit.

Donc la il faut qu'il sache quand un nombre est multiple de 2 de 3 de 5 et de 7 et mettre une couleur pour chaque.

En utilisant des fonctions comme : for, while, if etc

pareil je veux pas de reponses juste me mettre sur la voie.

merci.

Posté : 19 nov. 2005, 03:11
par Truc
il faut qu'il sache quand un nombre est multiple de 2 de 3 de 5 et de 7
ca se fait avec le "modulo" (%)
En utilisant des fonctions comme : for, while, if etc
Tu as deja 2boucles for() il t'en faut plus :wink:
pareil je veux pas de reponses juste me mettre sur la voie.
indice alors:
if($var % 7 == 0 )
    //$var est multiple de 7
else 
   //$var n'est pas multiple de 7
pareil pour 2,3,5 :wink:

Posté : 19 nov. 2005, 03:36
par agité
je voulais faier :
if($r % 7 == 0 ) 		{
						$r=(font-color:red);		
						}
		elseif($r % 2 == 0 )		
						{
						$r=(font-color=blue);		
						}
		elseif($r % 3 == 0)		
						{
						$r=(font-color=yellow);
						}
		else				
						{
						$r=(font-color="black");
						}
mais sa tiens pas debout.

Dans le raisonnement sa fais : si c'est un multiple de 7 je met le resultat en rouge etc

$r=$a*$b

$a etant la premiere boucle
$b etant la deuxieme boucle.

Mais ce que je comprends pas c'est que le cours ne nous parle pas de modulo donc on est censé l'inventer ? le deviner ?

sans les recherche que je fais sur le net j'arriverais pas a faire ces exercices, c'est moi qui suis mauvais ou ya un truc ?

Posté : 19 nov. 2005, 03:44
par agité
Ou alors je fais

$red=(je defnis la couleur)
$blue=(je defnis la couleur)
$green=(je defnis la couleur)
$yellow=(je defnis la couleur)

et apres dans les if et elseif

$r=$red ou $bleu etc

mais comment definir la couleur ??

Posté : 19 nov. 2005, 03:55
par Truc
Tu n'en est pas loin
Dans le raisonnement sa fais : si c'est un multiple de 7 je met le resultat en rouge etc
Mais ce que je comprends pas c'est que le cours ne nous parle pas de modulo donc on est censé l'inventer ? le deviner ?
Ah ben ça c'est pas a moi de te le dire :lol:, peut etre que tu devais chercher un truc compliqué a la place :wink:
c'est moi qui suis mauvais ou ya un truc ?

Oui il y a un TRUC ( moi :langue:

sinon je te conseil d'utiliser "background-color" pour mettre le fond en couleur et non la police.

Au lieu d'affecter "(font-color=blue);" (qui est faux d'ailleur) a chaque fois n'afecte que la couleur avec des guillemets:
$couleur="red";
prend aussi une variable autre que celles que tu utilise pour les calculs.

Pour finir tu dois mettre un style a la balise td
echo "<td style="background-color : ".$v.";">";
voila tu dois avoir tous les éléments :wink:

Posté : 19 nov. 2005, 04:12
par agité
GRRRRR saleté de truc :twisted:

j'ai fais sa :
<?
$red="red";
$blue="blue";
$yell="yellow";
$whi="green";


		for ($a=1; $a<=10; $a++)	{
						echo "<tr>";

	
          	for ($i=1; $i<=10; $i++) 	{ 
						$r=$i*$a;  
		if($r % 7 == 0)		{
		
						$couleur=$red;		
						}
		elseif($r % 2 == 0)		
						{
						$couleur=$blue;		
						}
		elseif($r % 3 == 0)		
						{
						$couleur=$yell;
						}
		else				
						{
						$couleur=$whi;
						}
			

						echo "<td style=background-color : $couleur;>$a*$i=$r</td>";

					      	}
						echo"</tr>";
						}
?>
mais toujours pas de resultat.

merci pour ton aide en tout cas.

Posté : 19 nov. 2005, 04:20
par agité
bon ok j'ai trouver en mettant

echo "<td style=background-color:$couleur>$a*$i=$r</td>";

sa marche mieux.

mais si je veux juste mettre les lettres en couleur je vais devoir afaire autre chose.

bon et apres je dois faire en sorte que si un nombre est le multiple d'un autre, la couleur du plus petit sera choisi :shock:

ptain mais n'importe ^^

Posté : 19 nov. 2005, 11:05
par zeus
Modération : agité, quand tu postes du code, utilise les balises
 pour rendre ton code plus lisible.

Pour cette fois çi, je le fait pour toi mais pense y la prochaine fois ;)[/color]

Posté : 19 nov. 2005, 11:08
par agité
Modération : agité, quand tu postes du code, utilise les balises
 pour rendre ton code plus lisible.

Pour cette fois çi, je le fait pour toi mais pense y la prochaine fois ;)[/color][/quote]

j'ai edité mes messages avec les balises  :wink:

Posté : 19 nov. 2005, 11:09
par zeus
Il me semblait aussi !!!

Le temps d'éditer la 1ere et c'était tout modifié :shock:

Merci à toi :pouce:

Posté : 19 nov. 2005, 16:24
par Truc
mais si je veux juste mettre les lettres en couleur je vais devoir afaire autre chose.
dans ce cas tu peut utiliser "style=color:"
bon et apres je dois faire en sorte que si un nombre est le multiple d'un autre, la couleur du plus petit sera choisi :shock:
oui moi aussi :shock:
pas tres bien saisi la question

Posté : 21 nov. 2005, 10:48
par agité
Bon alors la question se presente sous cette forme :

Lorsque un resultat est multiple de 2 elements, il sera affiché avec la couleur du plus petit.

ps:Nous ne sommes pas des machines à coder, nous aidons en cas de problèmes, mais on ne fait pas à votre place

->Oui je sais et justement je ne veux pas que l'on me donne une reponse juste que l'on me mette sur la voie pour trouver.