1)Fazer um programa no qual o usuário vai entrando sucessivamente com valores (números reais)positivos ou nulos.Quando o usuário entrar com um valor negati- vo,o programa para de pedir valores e calcula a média dos valores já fornecidos (excluindo o último número negativo)

Passo 1

O programa deve ler sucessivamente valores reais não negativos digitados pelo usuário e, ao receber um valor negativo (sentinela), parar de ler e calcular a média dos valores válidos lidos (excluindo o valor negativo). O conteúdo envolve repetição com valor sentinela, acumulação de soma e contagem de elementos, e cálculo de média.

Passo 2

Inicializamos duas variáveis antes de entrar no laço: uma para acumular a soma dos valores válidos e outra para contar quantos valores foram lidos. Assim evitamos usar variáveis não definidas e preparamos o cálculo da média:
soma \(=0.0\)
contador \(=0\)

Passo 3

Usamos um laço infinito (while True:) porque não sabemos quantas entradas o usuário fará. Dentro desse laço faremos a leitura de um valor e depois testamos se ele é negativo. Se for, saímos do laço com break.

Passo 4

Em cada iteração pedimos ao usuário um valor real, convertemos para float e imediatamente verificamos a condição de parada:
valor = float(input("Digite um valor real (negativo para terminar): "))
if valor < 0:
 break
Esse teste garante que o valor sentinela não seja incluído nos cálculos seguintes.

Passo 5

Se o valor não for negativo, ele é válido, então somamos ao total e incrementamos o contador:
soma \(+=\) valor
contador \(+=1\)
Isso permite, ao final, saber quanto vale a soma e quantos valores contribuíram para ela.

Passo 6

Após sair do laço, verificamos se o contador é maior que zero. Se for, calculamos a média como a soma dividida pelo contador. Caso contrário, não há valores válidos e devemos tratar esse caso para evitar divisão por zero.

Passo 7

Exibimos a média se possível, ou uma mensagem informando que não houve valores válidos:
if contador > 0:
 media = soma / contador
 print("Média dos valores:", media)
else:
 print("Nenhum valor não-negativo foi informado.")

Resposta

soma \(=0.0\)
contador \(=0\)

while True:
 valor = float(input("Digite um valor real (negativo para terminar): "))
 if valor < 0:
 break
 soma \(+=\) valor
 contador \(+=1\)

if contador > 0:
 media = soma / contador
 print("Média dos valores:", media)
else:
 print("Nenhum valor não-negativo foi informado.")

Exercícios relacionados