ZZULIOJ 1011: シリンダーの表面積
トピックの説明
円柱の底面半径rと高さhを入力し、円柱の表面積を計算して画面に出力します。pi を次のマクロ定数 #define PI 3.14159 として定義する必要があります。
入力
2 つの実数、つまり円柱の底面半径 r と高さ h を入力します。
出力
円柱の表面積を小数点第2位に四捨五入した実数を出力します。
サンプル入力
42.1 71.6
サンプル出力
30076.14
#include <stdio.h>
#include <stdlib.h>
#define PI 3.14159
int main()
{ double r,h,s;
scanf("%lf %lf",&r,&h);
s=2*PI*r*h+2*PI*r*r;
printf("%.2lf",s);
return 0;
}
ZZULIOJ 1012: 絶対値を見つける
トピックの説明
実数の絶対値を求めます。
入力
実数を入力します。
出力
絶対値を小数点以下2桁まで出力します
サンプル入力
-234.00
サンプル出力
234.00
#include <stdio.h>
#include <stdlib.h>
int main()
{
double m,n;
scanf("%lf",&m);
if(m>=0)
n=m;
else
n=m*(-1);
printf("%.2f\n",n);
return 0;
}
ZZULIOJ 1013: 2 点間の距離を求める
トピックの説明
2 つの点 A(x1, y1)、B(x2, y2) の座標が与えられた場合、それらの間の距離を計算します。
入力
入力にはスペースで区切られた 4 つの実数 x1、y1、x2、y2 が含まれており、その意味は説明したとおりです。ここで、0≤x1、x2、y1、y2≤100です。
出力
出力は 1 行を占め、2 点 A と B の間の距離を表す実数 d が含まれます。結果は小数点以下第 2 位を四捨五入しています。
サンプル入力
1 1.5 2 2.5
サンプル出力
1.41
#include <stdio.h>
#include <math.h>
int main()
{
double x1,y1,x2,y2,d;
scanf("%lf %lf %lf %lf",&x1,&y1,&x2,&y2);
d=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
printf("%.2f\n",d);
return 0;
}
ZZULIOJ 1014: 三角形の面積を求める
トピックの説明
三角形の 3 つの辺が与えられた場合、三角形の面積を求めます。
入力
三角形の 3 辺の長さ (実数) をスペースで区切って入力します。
出力
三角形の面積を小数点以下2桁で出力します。
サンプル入力
2.5 4 5
サンプル出力
4.95
ヒント
ヘロンの公式または他の方法を使用することができます。
#include <stdio.h>
#include <stdlib.h>
int main()
{ double x,y,z,s;
scanf("%lf %lf %lf",&x,&y,&z);
s=sqrt(x*x*y*y/4-((x*x+y*y-z*z)*(x*x+y*y-z*z))/16);
printf("%.2lf",s);
return 0;
}
ZZULIOJ 1015: 時間間隔の計算
トピックの説明
「時:分:秒」で表される 2 つの時点を読み取り、時間間隔を秒単位で計算します。
入力
入力には 2 行があり、各行は「時:分:秒」で表される時刻です。テスト データは、2 番目の時点が最初の時点よりも遅いことを保証します。
出力
時間間隔の秒数を表す整数を出力します。
サンプル入力
08:00:00
09:00:00
サンプル出力
3600
ヒント
入力データにコロンなどの通常の文字がある場合、scanf 関数の書式文字列の対応する位置に対応する文字が存在する必要があります。
#include <stdio.h>
#include <stdlib.h>
#define PI 3.14159
int main()
{ int x,y,z,a,b,c,m;
scanf("%d:%d:%d",&x,&y,&z);
scanf("%d:%d:%d",&a,&b,&c);
m=3600*a+60*b+c-3600*x-60*y-z;
printf("%d",m);
return 0;
}