Escreva um programa em C que leia um peso na Terra e o número de um planeta e imprima o valor do seu peso neste planeta. A relação de planetas é dada a seguir juntamente com o valor das gravidades relativas á Terra:
Disciplina: Linguagens de Programação II
Professor: Jonathas Santos (jssantos@uea.edu.br)
# Gravidade Relativa Planeta
1 0,37 Mercúrio
2 0,88 Vênus
3 0,38 Marte
4 2,64 Júpiter
5 1,15 Saturno
6 1,17 Urano

Passo 1

O enunciado pede um programa em C que leia um peso na Terra (valor real) e o número de um planeta (inteiro de 1 a 6) e calcule o peso correspondente nesse planeta usando a gravidade relativa fornecida. Vamos usar:
  • Variáveis para armazenar o peso na Terra peso, o número do planeta planeta e o fator de gravidade fator.
  • Estrutura de seleção (switch) para escolher o valor de fator conforme o planeta.
  • Leitura com scanf e saída com printf.

Passo 2

Declaramos as variáveis necessárias:
float peso; // peso na Terra
int planeta; // número do planeta (1–6)
float fator; // gravidade relativa
float \(peso_planeta\);// resultado final

Passo 3

Lemos os valores de entrada em sequência, primeiro o peso e depois o número do planeta:
scanf("%f %d", &peso, &planeta);

Passo 4

Usamos switch(planeta) para atribuir a fator o valor correspondente:
switch (planeta) {
 case 1: fator \(=0.37\)f; break; // Mercúrio
 case 2: fator \(=0.88\)f; break; // Vênus
 case 3: fator \(=0.38\)f; break; // Marte
 case 4: fator \(=2.64\)f; break; // Júpiter
 case 5: fator \(=1.15\)f; break; // Saturno
 case 6: fator \(=1.17\)f; break; // Urano
 default:
 printf("Planeta invalido
");
 return 1;
}

Passo 5

Calculamos o peso no planeta usando a fórmula
\text{peso\_planeta} = \text{peso} \times \text{fator}
e imprimimos com duas casas decimais:
\(peso_planeta\) = peso * fator;
printf("%.2f
", \(peso_planeta\));

Resposta

#include <stdio.h>

int main(void) {
 float peso; // peso na Terra
 int planeta; // número do planeta (1–6)
 float fator; // gravidade relativa
 float \(peso_planeta\); // peso calculado no planeta

 // Leitura do peso e do número do planeta
 if (scanf("%f %d", &peso, &planeta) !\(=2\)) {
 printf("Entrada invalida
");
 return 1;
 }

 // Seleção da gravidade relativa
 switch (planeta) {
 case 1: fator \(=0.37\)f; break; // Mercúrio
 case 2: fator \(=0.88\)f; break; // Vênus
 case 3: fator \(=0.38\)f; break; // Marte
 case 4: fator \(=2.64\)f; break; // Júpiter
 case 5: fator \(=1.15\)f; break; // Saturno
 case 6: fator \(=1.17\)f; break; // Urano
 default:
 printf("Planeta invalido
");
 return 1;
 }

 // Cálculo e saída
 \(peso_planeta\) = peso * fator;
 printf("%.2f
", \(peso_planeta\));

 return 0;
}

Exercícios relacionados