Problema norteador
Desenvolva um código que receba uma amostra quantitativa (uma lista de números) e realize as seguintes tarefas:
- Exiba os elementos dessa amostra em ordem crescente;
- Calcule e exiba o valor da média;
- Calcule e exiba o valor da mediana;
Definição das funções e estruturas necessárias¶
println
Função usada para exibir mensagens ou resultados na tela, imprimindo texto ou valores e pulando para a linha seguinte.readline()
Função que lê uma linha de entrada digitada pelo usuário no terminal, retornando uma string.parse
Função que converte uma string (texto) em outro tipo de dado, como um número inteiro ou decimal. Útil para transformar a entrada do usuário, que é texto, em números para cálculos.Vector
Estrutura de dados que armazena uma sequência ordenada de elementos do mesmo tipo (como números). No problema, será usada para guardar os valores da amostra quantitativa.undef
indica que o vetor é criado com posições não inicializadas, que serão preenchidas posteriormente.sort()
Função que ordena os elementos de um vetor, geralmente em ordem crescente.sum()
Função que calcula a soma de todos os elementos de um vetor numérico.length()
Função que retorna a quantidade de elementos existentes em um vetor.for
Comando que permite executar repetidamente um bloco de código para cada elemento de uma coleção ou intervalo, muito útil para percorrer os valores da amostra e realizar operações, como contagem de frequências.
Versão inicial do código¶
# Primeira etapa da construção do código
println(repeat("*", 40))
println("* Calculadora de Tendências Centrais *")
println(repeat("*", 40))
# Coleta e armazena os dados no vetor
println("Informe a quantidade de números:")
n = parse(Int, readline())
x = Vector{Float64}(undef, n) # Cria um vetor com n posições não inicializadas
for i in 1:n
println("Informe o $(i)º número:")
x[i] = parse(Float64, readline())
end
# Calcula e exibi os resultados
x_ordenado = sort(x)
total = sum(x)
media = round(total / n, digits=2)
println("\n--- Resultados ---")
println("Números informados em ordem crescente: ", x_ordenado)
println("Quantidade de números informados: ", length(x))
println("Soma dos números da sequência: ", total)
println("Média da sequência: ", media)
**************************************
* Calculadora de Tendências Centrais *
**************************************
Informe a quantidade de números:
stdin> 3
Informe o 1º número:
stdin> 4
Informe o 2º número:
stdin> 6
Informe o 3º número:
stdin> 7
--- Resultados ---
Números informados em ordem crescente: [4.0, 6.0, 7.0]
Quantidade de números informados: 3
Soma dos números da sequência: 17.0
Média da sequência: 5.67