Analise o código PHP abaixo e assinale a alternativa que co...
Analise o código PHP abaixo e assinale a alternativa que corresponde à saída do programa.
Comentários
Veja os comentários dos nossos alunos
<?php
// Your code here!
$x = 20.1;
$y = 2.2;
function calc ($a, $b){
return $b + $a*(int)2; //2.2 + (20.1*2) = 2.2 + 40.2 = 42.4
}
$resultado = calc($x, $y);
echo $resultado;
?>
Resposta: C
2.2 + 20.1 * 2 - pela ordem de precedência resolvemos a multiplicação primeiro que vai dar 40.2 e depois apenas vamos somar com 2.2 que vai dar 42.4 letra C
O (int)2 só está ali para confundir a cabeça do aluno no momento da prova, o número 2 já é um valor inteiro, não precisa ser convertido; Apenas devemos seguir este passo a passo:
$x = $a = 20.1
$y = $b = 2.2
2.2 + 20.1 * 2 =
( seguindo a ordem de precedência ( primeiro a multiplicação, depois a soma. )
20.1 * 2 = 40.2
40.2 + 2.2 = 42.4
Multiplicação float*int = float
Seria letra B se fosse:
- $b + (int)$a*2; // o "(int)" transformaria o $a em int, cortando o que tiver depois da vírgula
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo