U E D R , A S I H C RSS

새싹교실/2014/속도위반/0404

진행사항

  • 참여자
    튜터 최다인 참석
    튜티 유재범 참석
    오영은 참석
    장우진 참석
    태현 참석
  • 함수
  • 전역 변수, 지역 변수
  • 재귀함수

  • 다음 수업 : 4월 11일 금요일 오후 6시

과제

  • 간단한 계산기
    • 덧셈, 뺄셈, 곱셈, 나눗셈 을 각 함수로 만들어서 실행
    • 덧뺄곱나 중 어떤 과정을 실행할 지도 입력받는다.
  • 특별 과제 : 전역 변수 / 지역 변수 를 이용한 코드 2개를 각각 짜오기.

유재범

#include<stdio.h>
#pragma warning(disable:4996)

int x, y, cal;
int add(int x, int y);
int sub(int x, int y);
int mul(int x, int y);
int div(int x, int y);
int main(void)
{
	printf("계산기\n정수를 입력하시오 : ");
	scanf("%d", &x);
	printf("계산을 선택하시오 : 1.addition, 2.substraction, 3.multiply, 4.division\n");
	scanf("%d", &cal);
	printf("정수를 입력하시오 : ");
	scanf("%d", &y);

	if(cal==1)
		add(x, y);
	if(cal==2)
		sub(x,y);
	if(cal==3)
		mul(x,y);
	if(cal==4)
		div(x,y);

	return 0;
}

	void add(int x,int y)
	{
		printf("%d + %d = %d", x, y, x+y);
	}
	void sub(int x, int y)
	{
		printf("%d - %d = %d", x, y, x-y);
	}
	void mul(int x, int y)
	{
		printf("%d * %d = %d", x, y, x*y);
	}
	void div(int x, int y)

	{
                if(y==0)
                {
                      printf("정수를 다시 입력하시오\n두 번째 정수를 입력하시오. : ");
                      scanf("%d", &y);
                }
                else
                      printf("%d / %d = %d....%d", x, y, x/y, x%y);
	}

#include<stdio.h>
#pragma warning(disable:4996)


int main(void)
{
	int x, y, cal;
	int add(int x, int y);
	int sub(int x, int y);
	int mul(int x, int y);
	int div(int x, int y);
	printf("계산기\n정수를 입력하시오 : ");
	scanf("%d", &x);
	printf("계산을 선택하시오 : 1.addition, 2.substraction, 3.multiply, 4.division\n");
	scanf("%d", &cal);
	printf("정수를 입력하시오 : ");
	scanf("%d", &y);

	if(cal==1)
		add(x, y);
	if(cal==2)
		sub(x,y);
	if(cal==3)
		mul(x,y);
	if(cal==4)
		div(x,y);

	return 0;
}

	void add(int x,int y)
	{
		printf("%d + %d = %d", x, y, x+y);
	}
	void sub(int x, int y)
	{
		printf("%d - %d = %d", x, y, x-y);
	}
	void mul(int x, int y)
	{
		printf("%d * %d = %d", x, y, x*y);
	}
	void div(int x, int y)
	{
                if(y==0)
                {
                      printf("정수를 다시 입력하시오\n두 번째 정수를 입력하시오. : ");
                      scanf("%d", &y);
                }
                else
		      printf("%d / %d = %d....%d", x, y, x/y, x%y);
	}


  • 솔직히 아직 지역변수 전역변수 완전히 이해 된것도 아니고 그냥 변수를 int main (void) 안에 넣었다 밖에 뺐다 했는데 도통 불편한게 아니네요. return 0; 뒤에 선언하는것도 나중에 하다 보니까 알게 됬고.. 그리고 이건 여분으로 만든것. 만들고 나서 보니까 함수가 아니었던..
    • 지역변수와 전역변수는 선언하는 위치의 차이라고 보면 돼. 함수 내에서 선언된 변수는 지역변수라고 부르고, 해당 함수 안에서만 사용 가능. 전역변수는 코드의 제일 위에서 선언되며, 모든 함수에서 공통으로 사용 가능. 접근성의 문제. - 최다인

  • 그리고 우진이한테도 얘기했지만, 함수의 반환값이 없으면 굳이 int형 함수를 쓸 필요가 없어. void형으로 충분.
  • + 0으로 나눴을 때는 0으로 나눌 수 없다는 경고를 출력하고 계산을 실행하지 않도록 하는 기능도 넣어봐 ㅎㅎ - 최다인


#include<stdio.h>
#pragma warning(disable:4996)

int main(void)
{
	int num1=0, num2=0, calcul=0;
	int addition(int num1, int num2);
	int substraction(int num1, int num2);
	int multiply(int num1, int num2);
	int division(int num1, int num2);

	printf("정수를 입력하시오 : ");
	scanf("%d", &num1);
	printf("계산을 선택하시오 : 1.addition, 2.substraction, 3.multiply, 4.division\n");
	scanf("%d", &calcul);
	printf("정수를 입력하시오 : ");
	scanf("%d", &num2);
	if(calcul==1)
	{
		printf("%d + %d = %d\n", num1, num2, num1+num2);
	}
	else if(calcul==2)
	{
		printf("%d - %d = %d\n", num1, num2, num1-num2);
	}
	else if(calcul==3)
	{
		printf("%d * %d = %d\n", num1, num2, num1*num2);
	}
	else if(calcul==4)
	{
		if(num2==0)
		{
			printf("정수를 다시 입력하시오 : ");
			scanf("%d", &num2);
		}
		printf("%d / %d = 몫은 %d, 나머지는 %d\n", num1, num2, num1/num2, num1%num2);
	}
	return 0;
}

오영은

#include<stdio.h>
#include <windows.h>

int a, b, buho;
int add(int a, int b);
int sub(int a, int b);
int mul(int a, int b);
int divd(int a, int b);

int main(void)
{

printf("계산기입니다.\n");


printf("수식을 계산합니다. 계산할 정수값을 입력해 주세요.\n\n");
printf("a : ");
scanf("%d", &a);
printf("-------------------------------------\n");
printf("덧셈->1     뺄셈->2\n");
printf("곱셈->3     나눗셈->4\n");
printf("원하는 계산 부호를 선택해 주세요.\n");
printf("-------------------------------------\n");
scanf("%d", &buho);

printf("b : ");
scanf("%d", &b);


if(buho == 1)
{
add(a, b);
}

else if(buho == 2)
{
sub(a, b);
}

else if(buho == 3)
{
mul(a, b);
}

else if(buho == 4)
{
if(b == 0)
{
printf("0으로 나눌 수 없습니다.\n");
return 0;
}
else
{
divd(a, b);
}
}

else
{
printf("ERROR!!\n");
return 0;
}

return 0;
}

int add(int a, int b)
{
printf("\n덧셈 계산을 선택하셨습니다.\n");
printf("%d + %d = %d입니다.\n", a, b, a+b);
return 0;
}

int sub(int a, int b)
{
printf("\n뺄셈 계산을 선택하셨습니다.\n");
printf("%d - %d = %d입니다.\n", a, b, a-b);
return 0;
}

int mul(int a, int b)
{
printf("\n곱셈 계산을 선택하셨습니다.\n");
printf("%d * %d = %d입니다.\n", a, b, a*b);
return 0;
}

int divd(int a, int b)
{
printf("\n나눗셈 계산을 선택하셨습니다.\n");
printf("%d / %d = 몫은 %d이고 나머지는 %d입니다.\n", a, b, a/b, a%b);
return 0;
}

장우진

#include <stdio.h>
#include <windows.h>

void add(int x,int y);
void subtraction(int x, int y);
void multiplication(int x,int y);
void division(int x,int y);

int a=0, b=0, calculate=0, sum=0;
float division_sum=0;

int main()
{
	printf("계산기\n\n");
	printf("먼저 정수 두개를 입력해 주세요. : ");
	scanf("%d",&a);
	scanf("%d",&b);
	printf("입력하신 a=%d,b=%d입니다\n\n",a,b);
	 
	printf("덧셈이면 1 뺄셈이면 2 곱셈이면3 나눗셈이면 4를 입력해 주세요. : ");
	scanf("%d",&calculate);

	if(calculate==1)
		add(a,b);
	
	else if(calculate==2)
		subtraction(a,b);
	
	else if(calculate==3)
		multiplication(a,b);
	
	else if(calculate==4)
		 division(a,b);



	system ("pause");
	return 0;

}

void add(int x,int y)
{
	sum = x+y;
	printf("값은 a+b=%d입니다.\n",sum);
}
void subtraction(int x, int y)
{
	sum = x-y;
	printf("값은 a-b=%d입니다.\n",sum);
}
void multiplication(int x,int y)
{	
	sum = x*y;
	printf("값은 a*b=%d입니다.\n",sum);

}
void division(int x,int y)
{
	if (y==0)
    {
	    printf("잘못입력하셨습니다.\n",sum);
	}
	else if(y!=0)
	{
		division_sum =  (float) x/y;
	    printf("값은 a/b=%.2f입니다.\n",division_sum);
	}

}


일단 하나 만들었습니다. 원래 천천히 할 계획이였으나 영은이와 필립이가 과제하자더니 날 버리고가서...
  • 선배약속이랑 여모가 겹쳐서;; 미안 코드 잘짰네~수고했어ㅎㅎ - 오영은

문태현

#include<stdio.h>


	int num1, num2, cal ;


	int add( int num1, int num2);
	int sub( int num1 , int num2);
	int mult( int num1, int num2);
	int div( int num1, int num2);

	int main()
	{
	printf("정수를 입력하시오 : \n");
	scanf("%d", &num1);
	printf("어떤 계산을 할지 입력하시오 : (1 : +,2 :-,3 : / , 4 : X) \n");
	scanf("%d",&cal);
	printf("정수를 입력하시오 : \n");
	scanf("%d",&num2);

	if(cal== 1 )
	add (num1, num2);
	else if(cal==2)
	sub( num1, num2);
	else if(cal==3)
	div( num1, num2);
	else if(cal==4)
	mult( num1, num2);
	while (1);
	return 0;
	}
	
	 

	int add( int num1, int num2)
	{
		printf ("%d+%d=%d\n", num1, num2, num1+num2);}

	
	int sub( int num1, int num2)
		{	printf ("%d-%d=%d\n" , num1, num2, num1-num2);}
	int div (int num1, int num2)
	{ 
		printf("%d/%d=%d\n", num1, num2, num1/num2);}
	
	int mult( int  num1, int num2)
	{
		printf("%d x %d=%d\n", num1, num2, num1*num2);}
	

후기



도위반
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2014-04-11 10:22:00
Processing time 0.3904 sec