#include<stdio.h>
int kaijo_kansu(int a)
{
	int kaijo = 1;
	
	 while(a > 0)
	 {
	 	kaijo =kaijo * a;
	 	a--;
	 }
	 
	 return kaijo;
}

int ruijo_kansu(int a,int b)
{
	int ruijo = 1;
	int count;
	
	for ( count = 1; count <= b; count++ )
	{
		ruijo = ruijo * a;
	}
	
	return ruijo;
}

int main(void)
{
	int seisu,kaijo,ruijo,beki;
	
	printf("階乗を算出します\n正の整数を入力してください");
	scanf("%d",&seisu);
	printf("この数の累乗も算出します\n何乗しますか");
	scanf("%d",&beki);
	
	kaijo = kaijo_kansu(seisu);
	ruijo = ruijo_kansu(seisu, beki);
	printf("%dの階乗は%dで、%dの%d乗は%dです",seisu,kaijo,seisu,beki,ruijo);
	
	return 0;
}