/*#include <stdio.h>
#include <stdlib.h>
int main()
{
printf("Hello world!\n");
return 0;
}
*/
/*#include <stdio.h>
int main ()
{
double a,b,sum=0,time;
for(int i=1; i<=5; i++){
scanf("%lf %lf",&a,&b);
if(b-a<=1){
continue;
}
else if(b-a>=5){
sum+=4;
}
else{
sum=sum+b-a-1;
}
}
time=sum;
sum=sum*10000;
if(time>=15){
sum=sum-(sum/100*5);
}
else if(time<=5){
sum=sum+(sum/100*5);
}
printf("%.0lf",sum);
}
함수 function void f()
재귀함수 : recursive function
void rec()
특징 :
1. 코드가 짧아
2. 쉬워보여. 근데 어려워.
3. 이해는돼. 뭔소린지?
정의 :
1. 함수 내에서 자기 자신을 다시 호출하는 함수
void rec()
{
rec();
}
2. 자신으로 다시 정의내리는 함수
****************************************
void rec(int n) //n ~1 출력
{
if(n==0) return ; //종료조건
printf("%d ",n); //n출력
rec(n-1); //n-1부터 1까지출력
}
rec(n) : n부터 1까지 출력하는 함수
: n출력 -> ( n-1출력 -> ... 2출력 ->1출력)
: n출력 -> n-1부터 1까지 출력
: n출력 -> rec(n-1)
************************************
void rec(int n)
{
if(n==0) return ;
rec(n-1);
printf("%d ",n);
}
rec(n) : 1부터 n까지 출력
: 1부터 n-1까지 출력 -> n출력
: rec(n-1) -> n출력
***************************************
rec(n) : 1부터 n 까지의 수 중에 홀수만 출력하기
*
#include <stdio.h>
void rec(int n)
{
if(n==0) return ;
rec(n-1);
if(n%2!=0){
printf("%d ",n);
}
}
int main()
{
int n;
scanf("%d",&n);
rec(n);
return 0;
}
rec(a,b) : a부터 b까지 출력하기
: a출력 -> a+1출력 -> .... b-1출력 -> b출력
: a 부터 b-1까지출력 -> b출력
: rec( a,b-1 ) -> printf("%d ",b);
*/
/*#include <stdio.h>
void rec(int a,int b)
{
if(b==a-1) return ;
rec(a,b-1);
printf("%d ",b);
}
int main ()
{
int a,b;
scanf("%d %d",&a,&b);
rec(a,b);
return 0;
}
#include <stdio.h>
void rec(int a,int b)
{
if(b==a-1) return ;
rec(a,b-1);
if(b%2!=0){
printf("%d ",b);
}
}
int main()
{
int a,b;
scanf("%d %d",&a,&b);
rec(a,b);
return 0;
}
rec(n) : 1부터 n까지의 합 리턴
: 1부터 n-1까지 n
: rec(n-1) n
#include <stdio.h>
int rec(int n) // 1부터 n까지의 합을 리턴하기
{
if(n==0){
return 0;
}
return rec(n-1)+n;
}
int main()
{
int n;
scanf("%d",&n);
printf("%d",rec(n));
return 0;
}
*/