- Ler 30 temperaturas em C , converter para F com vetor.
Passo 1
O enunciado pede que leia
temperaturas em graus Celsius e as converta para graus Fahrenheit, armazenando os resultados em um vetor. Informações dadas e o que se espera como saída:
- Quantidade de leituras:
. - Entrada: um vetor de temperaturas em Celsius, que chamarei de
com . - Saída: um vetor de temperaturas em Fahrenheit, que chamarei de
com . - Objetivo: calcular cada elemento
a partir do correspondente e guardar em vetor.
Passo 2
Explicando a fórmula de conversão (passo-a-passo, sem pressa):
- A relação entre as escalas Celsius e Fahrenheit é linear. Dois pontos conhecidos são:
e . - A inclinação da reta que liga esses pontos é
- Uma função afim que passa por
com essa inclinação tem a forma
- Aqui
é a temperatura em graus Celsius e é a temperatura correspondente em graus Fahrenheit. Essa é a fórmula que vamos aplicar a cada elemento do vetor.
Passo 3
Descrevendo o algoritmo geral (ideia que dá para aplicar à mão ou programar):
- Crie dois vetores com
posições: (para as entradas) e (para as saídas). - Para cada índice
de até : - Leia o valor
. - Calcule
usando a fórmula
- Armazene o resultado em
.
- Leia o valor
- Ao final, imprima ou retorne o vetor
.
Esse algoritmo é simples e direto; o passo crítico é aplicar corretamente a fórmula elemento a elemento e manter o mesmo índice para entrada e saída.
Passo 4
Exemplo numérico passo-a-passo (para ver as contas feitas à mão):
- Suponha que os três primeiros valores lidos em Celsius sejam
, , . - Para
:
- Para
:
- Para
:
Isso mostra a conta explícita para cada elemento; o restante dos
valores segue o mesmo processo.
Passo 5
Implementação prática: pseudocódigo claro que você pode usar na prova ou transformar em código real
- Pseudocódigo:
Criar vetor C com 30 posições
Criar vetor F com 30 posições
Para i de 1 até 30 faça:
ler C[i]
F[i] = (9/5) * C[i] + 32
FimPara
Imprimir vetor F
- Observações importantes:
- Se a linguagem que usar é 0-indexada (como C, Python), adapte índices para
a . - Use tipo de dado que aceite casas decimais (float/double) se as temperaturas puderem ter fração.
- Ao imprimir, escolha formato com casas decimais apropriadas (por exemplo, duas casas).
- Se a linguagem que usar é 0-indexada (como C, Python), adapte índices para
Passo 6
Código de exemplo em Python (fácil de ler e testar rapidamente):
# Lê 30 temperaturas em Celsius e converte para Fahrenheit
C = [0.0]*30
F = [0.0]*30
for i in range(30):
C[i] = float(input(f"Temperatura em C (índice {i}): "))
F[i] = (9.0/5.0) * C[i] + 32.0
print("Temperaturas em Fahrenheit:")
for i in range(30):
print(f"F[{i}] = {F[i]:.2f}")
Esse código lê
valores, converte um a um e imprime com duas casas decimais.
Passo 7
Código de exemplo em C (mais próximo de provas de estruturas/algoritmos em engenharia):
#include <stdio.h>
int main() {
double C[30], F[30];
for (int i = 0; i < 30; i++) {
printf("Temperatura em C (índice %d): ", i);
scanf("%lf", &C[i]);
F[i] = (9.0/5.0) * C[i] + 32.0;
}
printf("Temperaturas em Fahrenheit:\n");
for (int i = 0; i < 30; i++) {
printf("F[%d] = %.2f\n", i, F[i]);
}
return 0;
}
- Use
doublese quiser maior precisão. - Note que em C os índices vão de
a .
Passo 8
Dicas rápidas para a prova (empático e prático):
- Se pedirem apenas o algoritmo, desenhe o pseudocódigo do Passo 5 e explique a fórmula no máximo de uma linha.
- Se tiver que fazer manualmente para poucos valores, mostre a conta como no Passo 4.
- Verifique pontos comuns de erro: trocar as constantes (usar
no lugar errado), usar divisão inteira em vez de ponto flutuante (em linguagens com tipos), e esquecer que índices começam em em muitas linguagens. - Respire fundo — é só aplicar a mesma fórmula
vezes; uma vez que você entenda a fórmula, o resto é repetição.