(1) 1!+2!+・・・n!を求めるプログラム
#include<stdio.h>
void main()
{
int i,n,kaijyo,sum; /*kaijyoは各整数の階乗値,sumは各階乗値の和*/
printf("n="); scanf("%d",&n);
if(n<1){
printf("1以上の自然数を入力してください.¥n");
}else{
sum=0;
kaijyo=1;
for(i=1;i<=n;i++){
kaijyo*=i;
sum+=kaijyo;
}
printf("ans=%d¥n",sum);
}
}
(2) 3辺を入力し,三角形ができるかどうか判定して面積を求めるプログラム
#include<stdio.h>
#include<math.h>
void main()
{
float a,b,c,h,s; /*a,b,cは三角形の一辺,sは(a+b+c)/2.0の値,hは面積を求める式の√の中身*/
printf("a="); scanf("%f",&a);
printf("b="); scanf("%f",&b);
printf("c="); scanf("%f",&c);
if(a+b<c || a+c<b || b+c<a){
printf("三角形になりません.¥n");}
else{
printf("三角形ができるので面積を求めます.¥n");
s=(a+b+c)/2.0;
h=s*(s-a)*(s-b)*(s-c);
printf("面積は%fです.¥n",sqrt(h));}
}
(3) n件の実数を入力し,標準偏差を求めるプログラム
#include<stdio.h>
#include<math.h>
void main()
{
int n,i;
float a,b,m,v,hensa,sum1,sum2; /*aは入力するデータ,bは入力したデータの二乗値,sum1はデータの和,sum2はデータの二乗値*/
printf("n="); scanf("%d",&n);
sum1=0.0;
sum2=0.0;
for(i=0;i<n;i++){
printf("%d件目のデータ=",i+1); scanf("%f",&a);
b=a*a;
sum1+=a;
sum2+=b;
}
m=sum1/(float)n;
v=sum2/(float)n-m*m;
hensa=sqrt(v);
printf("平均値は%f,分散は%f,標準偏差は%f¥n",m,v,hensa);
}
(小テスト) 一桁の自然数AとBで,(A*10+B)-(B*10+A)=45(小林先生のクラスは72)になるA,Bの組み合わせを求めるプログラム
#include<stdio.h>
void main()
{
int A,B,s;
for(A=0;A<=9;A++){
for(B=0;B<=9;B++){
s=(A*10+B)-(B*10+A);
if(s==45){ /*小林先生のクラスはs==72*/
printf("A=%d,B=%d¥n",A,B);
}
}
}
}