진행사항 ¶
과제 ¶
- 간단한 계산기
- 덧셈, 뺄셈, 곱셈, 나눗셈 을 각 함수로 만들어서 실행
- 덧뺄곱나 중 어떤 과정을 실행할 지도 입력받는다.
- 덧셈, 뺄셈, 곱셈, 나눗셈 을 각 함수로 만들어서 실행
- 특별 과제 : 전역 변수 / 지역 변수 를 이용한 코드 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; } int add(int x,int y) { printf("%d + %d = %d", x, y, x+y); } int sub(int x, int y) { printf("%d - %d = %d", x, y, x-y); } int mul(int x, int y) { printf("%d * %d = %d", x, y, x*y); } int div(int x, int y) { 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; } int add(int x,int y) { printf("%d + %d = %d", x, y, x+y); } int sub(int x, int y) { printf("%d - %d = %d", x, y, x-y); } int mul(int x, int y) { printf("%d * %d = %d", x, y, x*y); } int div(int x, int y) { 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> int a, b, bunho, buho; int add(int a, int b); int sub(int a, int b); int mul(int a, int b); int div(int a, int b); int main(void) { printf("-------------------------₩n"); printf("계산기입니다.₩n"); printf("덧셈->1 뺄셈->2₩n"); printf("곱셈->3 나눗셈->4₩n"); printf("-------------------------₩n"); printf("원하는 계산 부호를 선택해 주세요.₩n"); scanf("%d", &buho); printf("수식을 계산합니다. 계산할 정수값을 입력해 주세요.₩n"); printf("a : "); scanf("%d", &a); 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) { div(a, b); if(b == 0) { printf("0으로 나눌 수 없습니다.₩n"); return; } } else { printf("ERROR!!₩n"); return; } return 0; } int add(int a, int b) { printf("덧셈 계산을 선택하셨습니다.₩n"); printf("%d + %d = %d입니다.₩n", a, b, a+b); } int sub(int a, int b) { printf("뺄셈 계산을 선택하셨습니다.₩n"); printf("%d - %d = %d입니다.₩n", a, b, a-b); } int mul(int a, int b) { printf("곱셈 계산을 선택하셨습니다.₩n"); printf("%d * %d = %d입니다.₩n", a, b, a*b); } int div(int a, int b) { printf("나눗셈 계산을 선택하셨습니다.₩n"); printf("%d / %d = %d입니다.₩n", a, b, a/b); } 손코딩이라 나중에 더손볼게요ㅎㅎㅎ
장우진 ¶
#include <stdio.h> #include <windows.h> int add(int x,int y); int subtraction(int x, int y); int multiplication(int x,int y); int division(int x,int y); int a=0, b=0, calculate=0, sum=0; float division_sum=0; int main() { printf("계산기\n\n"); printf("먼저 a와 b값을 입력해 주세요. : "); 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; } int add(int x,int y) { sum = x+y; printf("값은 a+b=%d입니다.\n",sum); } int subtraction(int x, int y) { sum = x-y; printf("값은 a-b=%d입니다.\n",sum); } int multiplication(int x,int y) { sum = x*y; printf("값은 a*b=%d입니다.\n",sum); } int 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); } }
일단 하나 만들었습니다. 원래 천천히 할 계획이였으나 영은이와 필립이가 과제하자더니 날 버리고가서...
- 선배약속이랑 여모가 겹쳐서;; 미안 코드 잘짰네~수고했어ㅎㅎ - 오영은