UAEU EE Computer Programming ELEC330 FALL 20162017 Group Pro
Solution
#include<stdio.h>
void print_planet_info();
void print_options();
int get_option();
float cal_age();
float cal_weight();
float cal_message();
float cal_distance();
float cal_time();
char p1[]=\"Mercury\";
char p2[]=\"Venus\";
char p3[]=\"Earth\";
char p4[]=\"Mars\";
char p5[]=\"Jupiter\";
char p6[]=\"Saturn\";
char p7[]=\"Uraus\";
char p8[]=\"Nuptune\";
char p9[]=\"Pluto\";
int dis[]={58,103,155,288,778,1427,2870,4497,5900};
int diam[]={4840,12200,12756,6787,142200,120600,51300,49100,2300};
float factor[]={0.38,0.91,1.00,0.38,2.60,1.10,0.90,1.20,0.08};
float time[]={88,224.7,365.25,687,4328.9,10752.9,30663.65,60152,90702.5};
int main()
{
int ch;
float out;
print_planet_info();
print_options();
do{
ch=get_option();
switch(ch)
{
case 1:
printf(\"Answer is %f\ \",cal_age());
break;
case 2:
printf(\"Answer is %f\ \",cal_weight());
break;
case 3:
printf(\"Time required %f (sec)\ \",cal_message());
break;
case 4:
printf(\"Distance : %f x 10^6\ \",cal_distance());
break;
case 5:
printf(\"Time is: %f\",cal_time());
break;
}
}while(ch!=6);
}
void print_planet_info()
{
int i=1;
printf(\"#\\tPlanet\\tDistance form sum(km)\\tDiameeter(km)\\tWeight multiplier factor\\tTime of revolution around the sun\ \");
printf(\"%d\\t%s\\t%d x 10^6\\t\\t%d\\t\\t%f\\t\\t\\t%f\ \",i++,p1,dis[0],diam[0],factor[0],time[0]);
printf(\"%d\\t%s\\t%d x 10^6\\t\\t%d\\t\\t%f\\t\\t\\t%f\ \",i++,p2,dis[1],diam[1],factor[1],time[1]);
printf(\"%d\\t%s\\t%d x 10^6\\t\\t%d\\t\\t%f\\t\\t\\t%f\ \",i++,p3,dis[2],diam[2],factor[2],time[2]);
printf(\"%d\\t%s\\t%d x 10^6\\t\\t%d\\t\\t%f\\t\\t\\t%f\ \",i++,p4,dis[3],diam[3],factor[3],time[3]);
printf(\"%d\\t%s\\t%d x 10^6\\t\\t%d\\t\\t%f\\t\\t\\t%f\ \",i++,p5,dis[4],diam[4],factor[4],time[4]);
printf(\"%d\\t%s\\t%d x 10^6\\t\\t%d\\t\\t%f\\t\\t\\t%f\ \",i++,p6,dis[5],diam[5],factor[5],time[5]);
printf(\"%d\\t%s\\t%d x 10^6\\t\\t%d\\t\\t%f\\t\\t\\t%f\ \",i++,p7,dis[6],diam[6],factor[6],time[6]);
printf(\"%d\\t%s\\t%d x 10^6\\t\\t%d\\t\\t%f\\t\\t\\t%f\ \",i++,p8,dis[7],diam[7],factor[7],time[7]);
printf(\"%d\\t%s\\t%d x 10^6\\t\\t%d\\t\\t%f\\t\\t\\t%f\ \",i++,p9,dis[8],diam[8],factor[8],time[8]);
}
void print_options()
{
printf(\"1.cal_age\ 2.cal_weight\ 3.cal_message\ 4.cal_distance\ 5.cal_time\ 6.Exit\ \");
}
int get_option()
{
int op;
scanf(\"%d\",&op);
return op;
}
float cal_age()
{
float age ;
int i;
printf(\"Enter age: \");
scanf(\"%f\",&age);
printf(\"Enter planet #: \");
scanf(\"%d\",&i);
return (age*365.25)/(time[i-1]);
}
float cal_weight()
{
float wei ;
int i;
printf(\"Enter weight: \");
scanf(\"%f\",&wei);
printf(\"Enter planet #: \");
scanf(\"%d\",&i);
return factor[i-1]*wei;
}
float cal_message()
{
int i,j;
float f;
printf(\"enter the two planet #: \");
scanf(\"%d%d\",i,j);
f=dis[j-1]-dis[i-1];
return f/.3;
}
float cal_distance()
{
int i,j;
printf(\"enter the two planet #: \");
scanf(\"%d%d\",i,j);
return dis[j-1]-dis[i-1];
}
float cal_time()
{
int i,speed;
printf(\"Enter planet #: \");
scanf(\"%d\",&i);
printf(\"Enter speed: \");
scanf(\"%d\",&speed);
return ((22/7)*diam[i-1])/speed;
}


