Ir para conteúdo
Fórum Script Brasil
  • 0

Operação aritimédica


Miro Ramos

Pergunta

Olá Pessoal.

Estou iniciando em PHP e me surgiu um problema numa operação re aritimédica.

Seguinte, preciso fazer uma operaçao que processe valor minimo + valor maximo / valor x, o problema está que o resultado não é correto pois se eu coloco valor minimo = 10 + valor maximo = 10 / 2 o resultado é 15 rsrs. Algué poderia me ajudar. Obrigado...

O codigo:

<body>

<?php

//Cria Operação Aritimédica//

if($_POST["calculo"]){

IF($_POST["operacao"]==+"){

$resultado = $_POST["min] + $_POST["max"] / $_POST["val"];

}

IF($_POST["operacao"]==-"){

$resultado = $_POST["min] - $_POST["max"] / $_POST["val"];

}

IF($_POST["operacao"]==/"){

$resultado = $_POST["min] / $_POST["max"] / $_POST["val"];

}

IF($_POST["operacao"]==*"){

$resultado = $_POST["min] * $_POST["max"] / $_POST["val"];

}

IF($_POST["operacao"]==%"){

$resultado = $_POST["min] % $_POST["max"] / $_POST["val"];

}

$codigo = $_POST["cod"];

//echo "Codigo = " . $codigo . '<br>';

echo "Valor Total =" . $resultado;

}

?>

<form name="form1" method="post" action="">

<table width="500" border="0" cellspacing="0" cellpadding="0">

<tr>

<td align="right">Quantidade Min:</td>

<td><input name="min" type="text" id="min"></td>

</tr>

<tr>

<td align="right">Quantidade Max:</td>

<td><input name="max" type="text" id="max"></td>

</tr>

<tr>

<td align="right">Valor da Operação</td>

<td><input name="val" type="text" id="val"></td>

</tr>

<tr>

<td align="right">Operação</td>

<td><select name="operacao" id="operacao">

<option>Escolha a Operação

<option value="+">Soma

<option value="-">Subtração

<option value="/">Divisão

<option value="*">Multiplicação

<option value="%">Módulo

</select>

</td>

</tr>

<tr>

<td align="right"> </td>

<td><input name="calculo" type="submit" id="calculo" value="Calcular"></td>

</tr>

</table>

</form>

</body>

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Acontece que 10+10/2 = 15... Lembre-se que divisão e multiplicação são efetuadas antes da adição e subtração (acho que isso se ensina na segunda série, nem me lembro mais)...

Se você espera que o resultado de 10, então você deve colocar:

(10+10)/2... Pois ai você os parênteses tem precedêndencia sobre os outros, e ai você força a soma a ser feita antes da divisão... ou seja, para dar 10, em vez de:

$resultado = $_POST["min"] + $_POST["max"] / $_POST["val"];

Tem que ser:

$resultado = ($_POST["min"] + $_POST["max"]) / $_POST["val"];

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...