Prévia do material em texto
<p>Vamos criar um algoritmo que realiza as seguintes tarefas:</p><p>1. Lê 10 valores inteiros e positivos.</p><p>2. Encontra o maior valor.</p><p>3. Encontra o menor valor.</p><p>4. Calcula a média dos números lidos.</p><p>### Passos do Algoritmo</p><p>1. **Inicialização:**</p><p>- Crie variáveis para armazenar o maior valor, o menor valor e a soma total dos valores.</p><p>- Inicialize o maior valor com um número muito baixo (por exemplo, -infinito) e o menor valor com um número muito alto (por exemplo, +infinito).</p><p>2. **Leitura dos Valores:**</p><p>- Para cada um dos 10 valores, leia o número e faça a validação para garantir que é um inteiro positivo.</p><p>- Atualize o maior e o menor valor conforme necessário.</p><p>- Acumule a soma dos valores.</p><p>3. **Cálculo da Média:**</p><p>- Divida a soma total dos valores por 10 para obter a média.</p><p>4. **Exibição dos Resultados:**</p><p>- Mostre o maior valor, o menor valor e a média dos valores.</p><p>### Implementação em Python</p><p>Aqui está uma implementação em Python do algoritmo descrito:</p><p>```python</p><p>def main():</p><p># Inicialização das variáveis</p><p>maior_valor = float('-inf') # Inicializa com o menor valor possível</p><p>menor_valor = float('inf') # Inicializa com o maior valor possível</p><p>soma = 0</p><p>quantidade = 10</p><p># Leitura e processamento dos valores</p><p>for i in range(quantidade):</p><p>while True:</p><p>try:</p><p>valor = int(input(f"Digite o valor inteiro e positivo {i + 1}: "))</p><p>if valor <= 0:</p><p>print("O valor deve ser um número inteiro positivo. Tente novamente.")</p><p>else:</p><p>break</p><p>except ValueError:</p><p>print("Entrada inválida. Por favor, digite um número inteiro.")</p><p># Atualiza o maior e o menor valor</p><p>if valor > maior_valor:</p><p>maior_valor = valor</p><p>if valor < menor_valor:</p><p>menor_valor = valor</p><p># Acumula a soma dos valores</p><p>soma += valor</p><p># Calcula a média</p><p>media = soma / quantidade</p><p># Exibe os resultados</p><p>print(f"Maior valor: {maior_valor}")</p><p>print(f"Menor valor: {menor_valor}")</p><p>print(f"Média dos valores: {media:.2f}")</p><p># Chama a função principal</p><p>main()</p><p>```</p><p>### Explicação do Código</p><p>1. **Inicialização:**</p><p>- `maior_valor` é inicializado com `-inf` para garantir que qualquer valor lido será maior.</p><p>- `menor_valor` é inicializado com `inf` para garantir que qualquer valor lido será menor.</p><p>- `soma` é inicializada em 0 para acumular a soma dos valores lidos.</p><p>- `quantidade` define o número total de valores a serem lidos, que é 10.</p><p>2. **Leitura dos Valores:**</p><p>- Um loop `for` é usado para ler os 10 valores.</p><p>- O valor é validado para garantir que é um número inteiro positivo. Se não for, solicita uma nova entrada.</p><p>- Atualiza o maior e o menor valor conforme necessário.</p><p>- Adiciona o valor à soma total.</p><p>3. **Cálculo da Média:**</p><p>- A média é calculada dividindo a soma total pelo número de valores.</p><p>4. **Exibição dos Resultados:**</p><p>- Mostra o maior valor, o menor valor e a média dos valores formatada com duas casas decimais.</p><p>Esse algoritmo é eficiente e garante que apenas valores válidos sejam considerados no cálculo do maior, menor valor e média.</p>