Ir ao conteúdo
  • Cadastre-se

Posts recomendados

Postado

Boa noite, o que falta no meu código para receber apenas 10 números do usuário e logo em seguida ordená-los em ordem crescente e apresentá-los?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Questão 7</title>
</head>
<body>
    <form numeros="f_ord" method="get" action="">
        <label>Digite 10 números: </label><br>
        <input type="text" name="f_numeros" size="40" maxlength="30"/><br><br>

<?php
    $numeros=$_POST[f_numeros];

    echo "Digite 10 números: $numeros.<br>";
?>
</body>
</html>

 

Postado

@Lukinh4s Então está tudo errado kkkkk, primeiro o input que você fez recebe dez números mas vão todas para uma variável só, assim fica tudo texto, particularmente utilizaria jquery para ficar mais intuitivo o seu programa, mas para resolver  esse problema de forma fácil eu criaria 10 inputs, e 10 variáveis receberiam esses números em seguida criaria uma logica com if,else e while não é a melhor forma mas acho que é a melhor forma de aprender logica básica, a sequência que eu criei  vai até 1000

$_POST[f_numeros]


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Questão 7</title>
</head>
<body>
    <form numeros="f_ord" method="get" action="">
        <label>Digite 10 números: </label><br>
        <input type="text" name="f_numeros1" size="40" maxlength="30"/><br>
 <input type="text" name="f_numeros2" size="40" maxlength="30"/><br>
 <input type="text" name="f_numeros3" size="40" maxlength="30"/><br>
 <input type="text" name="f_numeros4" size="40" maxlength="30"/><br>
 <input type="text" name="f_numeros5" size="40" maxlength="30"/><br>
 <input type="text" name="f_numeros6" size="40" maxlength="30"/><br>
 <input type="text" name="f_numeros7" size="40" maxlength="30"/><br>
 <input type="text" name="f_numeros8" size="40" maxlength="30"/><br>
 <input type="text" name="f_numeros9" size="40" maxlength="30"/><br>
 <input type="text" name="f_numeros10" size="40" maxlength="30"/><br>

<br>

<?php
    $numeros=$_POST[f_numeros];

    echo "Digite 10 números: $numeros.<br>";
?>
</body>
</html>
<?php
    $num1=$_POST[f_numeros1];
	$num2=$_POST[f_numeros2];
	$num3=$_POST[f_numeros3];
	$num4=$_POST[f_numeros4];
	$num5=$_POST[f_numeros5];
	$num6=$_POST[f_numeros6];
	$num7=$_POST[f_numeros7];
	$num8=$_POST[f_numeros8];
	$num9=$_POST[f_numeros9];
	$num10=$_POST[f_numeros10];
$i=0;
$x=1000;
while( $i< $x )

{

	 if ($num1 == $i) {
	echo $num1."<br>";
	}else if ($num2 == $i) {
	echo $num2."<br>";
	}
	else if ($num3 == $i) {
	echo $num3."<br>";
	}
	else if ($num4 == $i) {
	echo $num4."<br>";
	}	else if ($num5== $i) {
	echo $num5."<br>";
	}
		else if ($num6== $i) {
	echo $num6."<br>";
	}
			else if ($num7== $i) {
	echo $num7."<br>";
	}	
else if ($num8 == $i) {
	echo $num8."<br>";
	}
	else if ($num9 == $i) {
	echo $num9."<br>";
	}
else if ($num10 == $i) {
	echo $num10."<br>";
	}	
	$i++;
}
?>

 

  • Obrigado 1
Postado

Olá!
Segue outra sugestão:

<?php
  // inicia a sessão
  session_start();

  // inicia variáveis
  $message = 'Digite dez números';
  $reset   = '';

  // se numeral foi postado
  if (isset($_POST['numeral'])) {

    // verifica se já foram digitados 10 números
    if (sizeof($_SESSION['numerais']) < 10) {

      // guarda number em $_SESSION['numerais']
      $_SESSION['numerais'][] = $_POST['numeral'];

    } else {
      // se já foram digitados dez números, altera a mensagem
      $message = '<span class="text-danger">Já foram digitados dez números, chefe!</span>';
      $reset   = '<a href="">Recomeçar</a>';
    }

    // guarda os números em $numerosOrdenados para posterior ordenação
    $numerosOrdenados = $_SESSION['numerais'];

    // ordena $numerosOrdenados
    sort($numerosOrdenados);

  } else {
    // inicia/reseta variáveis
    $_SESSION['numerais'] =
    $numerosOrdenados = [];
  }
?>
<!doctype html>
<html lang="pt-br">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Ordenar</title>
</head>
<style>
    * {
        box-sizing: border-box;
    }

    body {
        background-color: #eee;
        font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
        font-size: 0.875rem;
        font-weight: 400;
        line-height: 1.5;
    }

    form, .card {
        background-color: #fff;
        padding: 12px;
        max-width: 320px;
        border-radius: 6px;
        margin: 0 auto;
        margin-bottom: 12px;
        box-shadow: 2px 2px 8px rgba(0, 0, 0, .36);
    }

    input, button {
        padding: 6px;
        margin-bottom: 6px;
        border: thin solid #ccc;
        border-radius: 4px;
    }

    input {
        width: 100%;
    }

    button {
        padding-left: 12px;
        padding-right: 12px;
    }

    input:focus {
        outline-color: #084775;
    }

    label {
        color: #999;
    }

    .text-right {
        text-align: right;
    }

    .text-center {
        text-align: center;
    }

    .text-danger {
        color: darkred;
    }

    .card-body aside {
        display: inline-block;
        width: 47%;
        border: thin solid #ccc;
        border-radius: 6px;
        line-height: 2rem;
        overflow: hidden;
    }

    aside header{
        background-color: #eee;
    }

    .card footer {
        padding: 12px;
    }
</style>
<body>
<main>
  <form method="post">
    <label for="number">Digite um número:</label>
    <input type="number" name="numeral" autofocus required>
    <div class="text-right">
      <button>Enviar</button>
    </div>
  </form>
  <div class="card">
    <h3 class="text-center"><?= $message ?></h3>
    <div class="card-body text-center">
      <aside>
        <header>Números Digitados</header>
        <?= implode('<br>', $_SESSION['numerais']) ?>
      </aside>
      <aside>
        <header>Números Ordenados</header>
        <?= implode('<br>', $numerosOrdenados) ?>
      </aside>
    </div>
    <footer class="text-right"><?= $reset ?></footer>
  </div>
</main>
</body>
</html>

 

  • Curtir 1
  • Obrigado 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...