드래그 앤 드롭으로 즐겨찾기 아이콘 위치 수정이 가능합니다.
c언어 4칙연산 이상의 계산기 소스 만드는 중입니다 ! 질문이요 !!
게시물ID : programmer_17566 짧은주소 복사하기
작성자 : 빛날지어다 ★
추천 : 0
조회수 : 640회
댓글수 : 6개
등록시간 : 2016/06/10 20:57:27
c언어 공부하면서 계산기를 만들어보고 있는데요. 이게 함수 선언하면서 쉽게 하려고 사칙연산까지는 완성시켰는데 추가적으로 제곱연산이랑 나머지 연산 같은 조금 업그레이드 버전을 만들고 싶어서요 ! 근데 제가 기존에 만들어 놓은 방식에서는 어떻게 적용시켜야할지 감이 안잡혀서 여기다가 문의 드려요 ㅠㅠㅠ ---------------------------------------------------------------------------------------------- #include <stdio.h> //함수선언문 void add(double*, double, double); void subtract(double*, double, double); void multiply(double*, double, double); void devide(double*, double, double); void remainder(float*, float, float); void square(double*, double, double); int main(void) { double m,n,result; int menu; char *opstr[6]={"더하기", "빼기", "곱하기", "나누기", "나머지", "제곱"}; char op[6]={'+','-','*','/','%','^'}; void (*pfary[6]) (double*, double, double)={add,subtract,multiply,devide,(float)remainder,square}; printf("(메뉴얼 번호를 입력해\n"); printf("+:0, -:1, *:2, /:3, %%:4, ^:5 \n"); scanf_s("%d", &menu); //메뉴 선택 오류시 출력문 if (!(0<= menu && menu <6)) { printf ("메뉴선택 오류 프로그램 종료.\n"); // return 0; } //본문 printf ("\n계산할 실수 2개를 입력해:"); scanf_s ("%lf %lf", &m, &n); pfary[menu](&result,m,n); printf("\n문장: pfary[%d] 함수호출 \n", menu); printf("%s 수행: %lf %c %lf == %lf\n\n", opstr[menu],m,op[menu],n,result); return 0; } //연산 함수 void add(double*z, double x, double y) { *z=x+y; } void subtract(double*z, double x, double y) { *z=x-y; } void multiply(double*z, double x, double y) { *z=x*y; } void devide(double*z, double x, double y) { *z=x/y; } void remainder(double*z, double x, double y) { *z=x%y; //형변환 시켜줘야 하는데 } void square(double*z, double x, double y) { } ----------------------------------------------------------------------------------------- 일단 여기까지인데 함수내용에서 나머지 연산은 형변환이 문제인 것 같고... 제곱같은 경우는 for문이나 반복문 조건문을 써야할 것 같은데 백방으로 해봐도 결과가 안나와서요 ㅠ퓨 고수님들 계시면... 좀... 힌트라도 주세여..
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.
새로운 댓글이 없습니다.