|
1. 파일명
cal.cpp(source file)
2. 프로그램 설명
이 프로그램은 Stack을 이용해서 중위표기법으로 입력받아 후위표기 법으로 변환, 연산되는 프로그램이다. 덧셈, 뺄셈, 곱셈, 나눗셈, 나머지 연산, 괄호처리, 마이너스 처리가 되는 계산기 프로그
|
- 페이지 1페이지
- 가격 3,000원
- 등록일 2006.11.07
- 파일종류 기타
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
c]\",c); //스택문자출력
else printf(\"[%d]\",stack[i]->state); //스테이트정보일경우 표기한다.
}
}
}
3. LR파싱을 이용하여 계산하는 프로그램을 작성한다.
4. 실행결과
5. discussion
LL파싱에서 만든 메인부분과 lexan을 이용하여 LR계산기를 만들어 보았는
|
- 페이지 9페이지
- 가격 2,000원
- 등록일 2007.04.09
- 파일종류 한글(hwp)
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
소수 6번째짜리까지 데이터형 입력가능. 연산지 입력 가능.
0으로 나누면 에러메세지 처리 및 다시 입력하게 함.
연산자 잘 못 입력하면 에러메세지.
|
- 페이지 2페이지
- 가격 1,000원
- 등록일 2005.02.28
- 파일종류 기타
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
계산기의 핵심 함수이다.
Compare: Calc에서 호출되는 함수로 연산자의 우선순위를 비교하여 비교 결과 값을 calc에 리턴한다.
Compute: 실제 사칙연산이 수행되는 함수이다. Calc에서 호출되며 연산 후 값을 Calc로 다시 리턴한다.
|
- 페이지 2페이지
- 가격 3,000원
- 등록일 2012.02.07
- 파일종류 압축파일
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
c);
p++;
}
else if (*p == \'%\')
{
c = pop_s();
push_s((double)((int)pop_s() % (int)c)); //modulus 연산자는 정수연산밖에 안되기때문에 형변환 하여 수식//
p++;
}
else if (*p == \'/\')
{
c = pop_s();
push_s(pop_s() / c);
p++;
}
else
p++;
}
return pop_s();
} 1. 계산기 알고리즘
2.
|
- 페이지 9페이지
- 가격 1,000원
- 등록일 2010.04.07
- 파일종류 한글(hwp)
- 참고문헌 있음
- 최근 2주 판매 이력 없음
|
|
rec(int n)
{
static int sum = 0; // int sum = 0;으로 하면 매번 초기화 된다. 따라서 static으로 한번만 초기화 시키면 된다 !!
sum += n;
if(n==0)
{
printf(\" 총합 : %d\\n\", sum);
return;
}
rec(n-1);
} <계산기>
<구구단>
<난수>
<별>
<소수>
<알파벳거꾸로>
<합계>
|
- 페이지 7페이지
- 가격 1,000원
- 등록일 2011.10.16
- 파일종류 한글(hwp)
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
선정시 고려한 사항
1.수업 시간중 배운 소스를 이용하여 만들기
2.쉽고 간단하게 만들어 학우들이 이해할수 있는 프로그램
3.가장 크게 고려한 사항: 실생활에 도움되는,직접 사용가능한 프로그램!!!
사용한 소스 설명
Switch ~case문
|
- 페이지 19페이지
- 가격 2,000원
- 등록일 2011.03.28
- 파일종류 피피티(ppt)
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
/* STACK */
double stack[MAX];
int top;
int main(void)
{
char dest[MAX], src[MAX];
double res, res_list[RES_SIZE];
int calc_ok, pos; 없음
|
- 페이지 15페이지
- 가격 700원
- 등록일 2005.09.13
- 파일종류 워드(doc)
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
\\n\",num1-num2);
}
void mul(int num1,int num2)
{
printf(\"= %d\\n\",num1*num2);
}
void div(int num1,int num2)
{
if(num2)
printf(\"= %d\\n\",num1/num2);
else
printf(\"어떤 숫자를 0으로 나눌수는 없자나.~!!\");
}
|
- 페이지 2페이지
- 가격 600원
- 등록일 2006.12.11
- 파일종류 한글(hwp)
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
, a,b,r);
}
void Mul(double a, double b)
{
double r;
r = a * b;
printf(\"\\t%lf * %lf = %.2lf\\n\", a,b,r);
}
void Div(double a, double b)
{
double r;
r = a / b;
printf(\"\\t%lf / %lf = %.2lf\\n\", a,b,r);
}
|
- 페이지 2페이지
- 가격 600원
- 등록일 2006.12.11
- 파일종류 한글(hwp)
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|