<?php
//ele diz números naturais até informar um inteiro negativo
//quando um inteiro negativo for dito ele para de falar
//ele faz a média aritmética da sequência de valores ditos
//valores naturais são fornecidos na entrada e o programa para quando recebe um número negativo
//entrada com um valor por linha (usar fgets ao invés de fscanf?)
//a saída será apenas um número real da média aritmética
//---INÍCIO---
//vai registrar a quantidade de números digitados
$quantidade_de_numeros = 0.0;
//recebe o valor digitado a cada loop
$numero_dito = 0.0;
//a cada loop vai somando os números fornecidos na entrada
$armazenador = 0.0;
//enquanto o número não for negativo (>=0) o loop vai rodar, somar os valores e registrar quantos números foram ditos no total
while (true) {
$numero_dito = (float) fgets(STDIN);
//quando o numero dito for negativo a média aritmética aparece na tela
if ($numero_dito < 0) {
break;
}
//o mesmo que: $armazenador = $armazenador + $numero_dito;
$armazenador += $numero_dito;
//o mesmo que: $quantidade = $quantidade + 1;
$quantidade_de_numeros += 1;
}
//verifica se foi fornecido pelo menos um número antes de fornecer um negativo
//caso seja fornecido -5 como 1° valor o resultado será 0/0 o if impede isso
if ($quantidade_de_numeros > 0) {
$media_aritmetica = $armazenador / $quantidade_de_numeros;
printf ("%.1f", $media_aritmetica);
}
?>
To embed this project on your website, copy the following code and paste it into your website's HTML: