Pensante 0 Denunciar post Postado Agosto 29, 2010 o dever pede que desenvolva um script em php para o usuario digitar 2 numeros e imprimir todos os numeros entre os numeros digitados pelo usuario em ordem crescente, inclusive eles. o que eu fiz: <?php $n1=$_POST ["n1"]; $n2=$_POST["n2"]; if ($n1<$n2) for (i=0; $i<=$n2; $i++) $c = $n1+1; echo " $c "; else if ($n2<$n1) for ($i=0; $i<=$n1; $i++) $c=$n1+1; echo "$c "; sei q tah errado pois ñ funciona! o q pode ser feito? Compartilhar este post Link para o post Compartilhar em outros sites
Victor Cometti 8 Denunciar post Postado Agosto 29, 2010 //considerando que sejam numeros inteiros if ( $n1 < $n2 ){ for ( i = $n1; $i <= $n2; $i++) echo $i; }else if( $n2 < $n1 ){ for ($i = $n2; $i <= $n1; $i++) echo $i; }else echo "Os números são iguais"; Compartilhar este post Link para o post Compartilhar em outros sites
Bruno Augusto 417 Denunciar post Postado Agosto 29, 2010 O código do Victor tem um micro-erro, pois está faltando um cifrão no i do primeiro for-loop. For isso, funciona. Mas que tal fazer tudo numa única linha (duas na verdade)? $n1 = -10; $n2 = 25; printf( '%s', implode( ', ', range( $n1, $n2 ) ) ); // Saída -10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 Compartilhar este post Link para o post Compartilhar em outros sites
Pensante 0 Denunciar post Postado Agosto 29, 2010 na verdade depois de um tempo pensando eu consegui resolver, ficou assim: <?php $n1 = $_POST ["n1"]; $n2 = $_POST ["n2"]; if ($n1< $n2){ $aux=$n1; echo " $aux "; while ($aux <>$n2){ $aux=$aux+1; echo " $aux ";} } if ($n2<$n1){ $aux=$n2; echo " $aux "; while ($aux <> $n1){ $aux=$aux+1; echo " $aux "; } } ?> Compartilhar este post Link para o post Compartilhar em outros sites
João Batista Neto 448 Denunciar post Postado Agosto 29, 2010 Veja a sugestão do Bruno, é a melhor forma de se conseguir o que você precisa: range() Compartilhar este post Link para o post Compartilhar em outros sites
Bruno Augusto 417 Denunciar post Postado Agosto 29, 2010 Pois é, com range() não se faz necessário loop dentro de loop, "trocentas" condições, incrementos desnecessários... Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Agosto 30, 2010 o dever pede que desenvolva um script em php para o usuario digitar 2 numeros e imprimir todos os numeros entre os numeros digitados pelo usuario em ordem crescente, inclusive eles. matematicamente falando isso é impossível. já que entre 0 e 1 existem infinitos números :P o algoritmo precisa ser melhor descrito, talvez limitando a imagem ao conjunto dos Z (inteiros) Compartilhar este post Link para o post Compartilhar em outros sites