Page 1 sur 1

généré une grille

Posté : 07 août 2015, 14:35
par pablo842
bonjour a tous,

voici que excercice que je dois réalisé auriez vous des suggestions ?


Faire une fonction « colle » dont le prototype est le suivant :
Prototype: void colle(int $x, int $y);
Cette fonction devra générer une grille de dimensions données en paramètres.
Ainsi si on appelle « colle(3, 4); », la fonction devra afficher ceci :
+---+---+---+
| | | |
+---+---+---+
| | | |
+---+---+---+
| | | |
+---+---+---+
| | | |
+---+---+---+
colle(0,0); ne doit rien afficher




merci d'avance,
cordialement .

Re: généré une grille

Posté : 07 août 2015, 19:54
par mathieu269
oui des suggestions, on en a plein.
on peut par exemple te suggérer de nous montrer le code que tu as déjà essayé même s'il ne fonctionne pas du tout comme tu le souhaites

Re: généré une grille

Posté : 08 août 2015, 16:33
par nestecha
T'es sûr que colle(3,4) afficherait ça ? Parce que moi j'aurais soit dit colle(4,4), soit colle(4,5) pour l'affichage que tu as donné.

Re: généré une grille

Posté : 08 août 2015, 16:42
par nestecha
function colle($x, $y) {
	$sAbsciss = "|";

	for ($i=0; $i < $x; $i++) { 
		$sAbsciss .= "|";
	}

	$sAbsciss .= "\n";

	if ($x > 0) {
		for ($i=0; $i < $y; $i++) {
		    echo "+---+---+---+\n";
		    echo $sAbsciss;
		}
	}
}
Essaie de comprendre pourquoi et comment par toi même, si tu ne comprends pas demande.

Re: généré une grille

Posté : 07 oct. 2016, 14:50
par darkooo
function colle($x, $y) {
	$sAbsciss = "|";

	for ($i=0; $i < $x; $i++) { 
		$sAbsciss .= "|";
	}

	$sAbsciss .= "\n";

	if ($x > 0) {
		for ($i=0; $i < $y; $i++) {
		    echo "+---+---+---+\n";
		    echo $sAbsciss;
		}
	}
}
Essaie de comprendre pourquoi et comment par toi même, si tu ne comprends pas demande.
Bonjour, que y a-t-il de faux dans le code?

Re: généré une grille

Posté : 07 oct. 2016, 15:52
par BELLEBlonde1m98
Salut !

alors ?

<?php

function colle($x, $y) {
$dimensions = "|";

for ($i=0; $i < $x; $i++) {

}

$dimensions .= "\n";

if ($x > 0) {
for ($i=0; $i < $y; $i++) {
echo "+---+---+---+\n";
echo $dimensions;

}
}
}

Re: généré une grille

Posté : 07 oct. 2016, 16:00
par darkooo
Salut !

alors ?

<?php

function colle($x, $y) {
$dimensions = "|";

for ($i=0; $i < $x; $i++) {

}

$dimensions .= "\n";

if ($x > 0) {
for ($i=0; $i < $y; $i++) {
echo "+---+---+---+\n";
echo $dimensions;

}
}
}
en test, cela n'affiche pas le résultat voulu par pablo842.
J'essaye de réaliser cette exercice mais mon code ne marche pas.


function colle($x, $y) {
$tab = 0;
while($tab < $y){
for($ligne = 0; $ligne < $x; $ligne++) {
echo "+---";
}
if($ligne = $x) {
echo "+\n"
}
for($ligne2 = 0; $ligne2 < $x; $ligne2++) {
echo "| ";
}
if($ligne = $x) {
echo "+\n";
}
$tab++;
}
for($ligne = 0; $ligne < $x; $ligne++) {
echo "+---";
}
}

Re: généré une grille

Posté : 07 oct. 2016, 16:09
par Cindy-sexy-nougat
salut saluuuut

alors voila,
j'ai obtenu ce resultat avec ce code:

+---+---+---+
| | | |
+---+---+---+
| | | |
+---+---+---+
| | | |
+---+---+---+
| | | |

<?php
function colle($x, $y) {
$sAbsciss = "|";

for ($i=0; $i < $x; $i++) {
$sAbsciss .= "|";
}

$sAbsciss .= "\n";

if ($x > 0) {
for ($i=0; $i < $y; $i++) {
echo "+---+---+---+\n";
echo $sAbsciss;
}
}
}
colle(4,4);


ceci est le resultat voulue:

+---+---+---+
| | | |
+---+---+---+
| | | |
+---+---+---+
| | | |
+---+---+---+
| | | |
+---+---+---+
Je ne vois vraiment pas ou est mon erreur, meme a l'aide de ma meilleure amie :(
?>

Re: généré une grille

Posté : 07 oct. 2016, 16:33
par jsuissympa

Code : Tout sélectionner

<?php function colle($x, $y){ $value = "| "; for ($i = 0 ; $i < $x; $i++){ $value .= "| "; } $value .= "\n"; if ($x > 0) { for ($i = 0; $i < $y; $i++){ echo "+---+---+---+\n"; echo $value; } echo "+---+---+---+\n"; } } ?>
faut juste ajouter un echo apres le if et trois espaces apres les | pour ressembler a ce qui est demander je crois

Re: généré une grille

Posté : 07 oct. 2016, 16:44
par cindy-princesse
merci bel inconu!!!! FAIT LE BON POUR LA 2 MAINTENANT!

Re: généré une grille

Posté : 07 oct. 2016, 16:47
par darkooo
Mmh en essayant d'autre paramètre la grille ne s'agrandis pas en abscisse avec les +---+ mais en ordonne cela fonctionne.

Re: généré une grille

Posté : 07 oct. 2016, 16:50
par gab
la grille ne depasse pas les 3 en largeurs.. c'est juste un exemple il ne faut pas les dimensions exact. c'est a nous de choisir la largeur et la longueur quand on fait appel a la fonction.

Re: généré une grille

Posté : 07 oct. 2016, 16:52
par darkooo
la grille ne depasse pas les 3 en largeurs.. c'est juste un exemple il ne faut pas les dimensions exact. c'est a nous de choisir la largeur et la longueur quand on fait appel a la fonction.
Exact, il faut trouver la solution pour faire pareil en largeur!

Re: généré une grille

Posté : 07 oct. 2016, 17:05
par darkooo

Code : Tout sélectionner

<?php function colle($x, $y){ $value = "| "; for ($i = 0 ; $i < $x; $i++){ $value .= "| "; } $value .= "\n"; if ($x > 0) { for ($i = 0; $i < $y; $i++){ echo "+---+---+---+\n"; echo $value; } echo "+---+---+---+\n"; } } ?>
faut juste ajouter un echo apres le if et trois espaces apres les | pour ressembler a ce qui est demander je crois
Que pouvons nous rajouter a ce code pour que les largeurs($x) fonctionnent comme $y ?

j'obtiens ce résultat avec (4, 5) comme paramètre :

+---+---+---+
| | | | |
+---+---+---+
| | | | |
+---+---+---+
| | | | |
+---+---+---+
| | | | |
+---+---+---+
| | | | |
+---+---+---+

Re: généré une grille

Posté : 07 oct. 2016, 18:21
par Suissympaenfaitnon
À bien relire, l'intégralité du code n'est pas adapté', GL :?