Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sature

Função de Calculo PHP

Recommended Posts

preciso fazer um formulario que faça um calculo, e acho que em php e possivel fazer.

a pessoa digita quantos kilometros ela andou, de carro ou de avião, ou os dois, e o formulario calcula e mostra quantas arvores ela tem que plantar para cobrir isso.

 

#Digita quantos kilometros andou de carro

 

OU

 

#Digita quantos kilometros percorreu de avião

 

OU AINDA

 

Se ela viajou de carro e depois de aviao ela preenche os 2 campos

 

e o formulario tem que calcular para exibir para a pessoa quantos kilos de Co² ela emitiu, e quanto isso vai valer em arvores.

eai a pessoa depois vai la e planta uma arvore, como concientização.

 

Eu descobri a formula pra fazer isso:

 

CARRO = KM*1,77 = KG Co² (Então se você viajar 1,000KM você vai emitir 1,770KG de Co²)

AVIÃO = KM*0,18 = KG Co² (Então se você viajar 1,000KM você vai emitir 180KG DE Co²)

1 Arvore = 1,330KG de CO²

 

 

Se você viajar 1,000KM de carro você vai ter que plantar 1,33 arvore

 

depois so exibir abaixo quantas arvores a pessoa tem que plantar.

Poderiam me ajudar com isso?

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

não sei fazer no php, consegui fazer somente isso aqui mais falta

 

consegui fazer uma parte, so que não sei como criar as condições para:

 

Se você preencher somente 1 campo calcular so ele.

e filtrar os dados porque olha como esta exibindo:

 

Você deve plantar13.308270676692arvores.Você deve preencher os campos.

 

tinha que achar uma forma de arredondar isso;

 

13.308270676692

e se eu tirar o if que avisa para preencher os campos, da erro e não exibe nada de calculo, pode me ajudar nisso?

[b]index.php[/b]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="style.css">
<title>Teste de formulário matemático PHP</title>
</head>
<body>
<form method="get" action="form_matematico5.php">
<b>Calcular a soma:</b><br><br>
Carro : <input name="carro" type="text" />
Avião : <input name="aviao" type="text" />
<input type="submit" value="calcular" />
</form>
<p class="calcula">

<?php
//##############################################################
//Calcula campo do carro.

if(isset($_GET['carro']) && isset($_GET['valorcarro'])) {
$carro = (int) $_GET['carro'];
$valorcarro = 1.77;
$soma = $carro*$valorcarro/1.33;

echo 'Voce deve plantar' . $soma. 'arvores.';
}

//##############################################################
//Calcular campo do avião.

elseif(isset($_GET['aviao']) && isset($_GET['valoraviao'])) {
$aviao = $_GET['aviao'];
$valoraviao = 0.18;
$soma = $aviao*$valoraviao/1.33;
echo 'Voce deve plantar' . $soma. 'arvores.';
}
?>

</p>
</body>
</html>

 

[b]
form_matematico5.php[/b]

<?php

if(isset($_GET['carro'])){
$carro = $_GET['carro'];
$valorcarro = 1.77;
$soma = $carro*$valorcarro/1.33;
}
if (empty($carro)) {
echo 'Você deve preencher os campos.';
}
else{
echo 'Você deve plantar' . $soma. 'arvores.';
}

if(isset($_GET['aviao'])) {
$aviao = $_GET['aviao'];
$valoraviao = 0.18;
$soma = $aviao*$valoraviao/1.33;
}
if (empty($aviao)) {
echo 'Você deve preencher os campos.';
}
else{
echo 'Você deve plantar' . $soma. 'arvores.';
}
 ?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

<!-- index.php -->
<html>
   <head>
       <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
       <link rel="stylesheet" type="text/css" href="style.css">
       <title>Teste de formulário matemático PHP</title>
   </head>
   <body>
       <form method="get" action="form_matematico5.php">
           <b>Calcular a soma:</b><br><br>
           Carro : <input name="carro" type="text" />
           Avião : <input name="aviao" type="text" />
           <input type="submit" value="calcular" />
       </form>    
   </body>
</html>

 

form_matematico5.php

<?php
//Calcula campo do carro.

if(isset($_GET['carro']) && isset($_GET['valorcarro'])) {
       $carro = (int) $_GET['carro'];
       $valorcarro = 1.77;
       $soma = $carro*$valorcarro/1.33;
       echo 'Voce deve plantar' . round($soma,2) . 'arvores.';
}

//##############################################################
//Calcular campo do avião.

elseif(isset($_GET['aviao']) && isset($_GET['valoraviao'])) {
       $aviao = $_GET['aviao'];
       $valoraviao = 0.18;
       $soma = $aviao*$valoraviao/1.33;
       echo 'Voce deve plantar' . round($soma, 2) . 'arvores.';
}

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola, obrigado pela resposta

 

fiz algumas altarações de ontem para hoje.

 

[b]index.php[/b]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="style.css">
<title>Teste de formulário matemático PHP</title>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<form id="calculoDeArvores" onsubmit="return calcula()">
<b>Calcular a soma:</b><br><br>
Carro : <input name="carro" type="text" />
Avião : <input name="aviao" type="text" />
<input type="submit" value="calcular" />
</form>
<p class="calcula"></p>
</body>
<script>
function calcula() {
$.get("form_matematico5.php", $('#calculoDeArvores').serialize(),
	function(data){
		$('.calcula').html(data);
	}
);

return false;
}
</script>
</html>



 

[b]form_matematico5.php[/b]
<?php

// Zera a variável para evitar lixo de memória
$soma = 0;

// Faz o cálculo do carro
if(isset($_GET['carro'])){
$carro = $_GET['carro'];
$valorcarro = 1.77;
$soma += $carro*$valorcarro;
}

// Faz o cálculo do avião
if(isset($_GET['aviao'])) {
$aviao = $_GET['aviao'];
$valoraviao = 0.18;
$soma += $aviao*$valoraviao;
}

// Mostra o resultado
if (empty($soma)) {
echo 'Você deve preencher ao menos um  dos campos.';
} else {
echo 'Você deve plantar <b>'. number_format(ceil($soma/1.33), 0, ',', '.') .'</b> árvores.';

}
?>

algo que ainda falta arrumar, se você digita no campo do carro 1000, ele exibe o valor 1.331 que no caso seria 1.3 arvores, mais eu preciso formatar esse valor para arredondar para 1, ou para exibir 1,3 e não 1,331

com este codigo que você fornecei ele exibia no echo form_matematico5.php, não sei porque o.o

Compartilhar este post


Link para o post
Compartilhar em outros sites

number_format() resolve.

 

repare que ela esta la:

 

echo 'Você deve plantar <b>'. number_format(ceil($soma/1.33), 0, ',', '.') .'</b> árvores.';

 

so que não esta fazendo oq eu keri, os numeros ainda ficam 1.331 e não 1.3 ou arredondando para 1, eu não sei php direito se você puder me mostrar como é...

Compartilhar este post


Link para o post
Compartilhar em outros sites

number_format() resolve.

 

repare que ela esta la:

 

echo 'Você deve plantar <b>'. number_format(ceil($soma/1.33), 0, ',', '.') .'</b> árvores.';

 

so que não esta fazendo oq eu keri, os numeros ainda ficam 1.331 e não 1.3 ou arredondando para 1, eu não sei php direito se você puder me mostrar como é...

Está lá, mas está sendo usada errado:

 

number_format(ceil($soma/1.33), 2, ',', '.')

 

Se quiser mesmo arredondar, pode usar round(), que arredonda pelo decimal, ceil() ou floor() que arrendondam, respectivamente, para cima ou para baixo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.