남은코드있는데..이건 문제될것같아서못올림 내가짠거긴함
add 가이드라인잡아둬서 곱셈이나 나눗셈 뺄셈은 알아서들 만들어쓰고 속도는 꾀빠름..
#include <iostream>
#include <string>
#include <stack>
using namespace std;
class BigBoy{
public:
string num;
BigBoy* Add(BigBoy* b);
BigBoy(){}
BigBoy(string n){
num = n;
}
};
BigBoy* BigBoy::Add(BigBoy* b) // BIG Int 덧셈
{
BigBoy* reVal;
char ground = '0';
char max = '9';
char up = 0;
char atom;
int size1, size2,i;
size1 = num.size() - 1;
size2 = b->num.size() - 1;
stack<char> charStack;
if (size1 > size2){
for (i = size1; i > 0; i--){
atom = num[i] + b->num[i - 1] + up - ground;
up = 0;
if (atom > max){
up = 1;
atom -= 10;
}
charStack.push(atom);
}
if (up == 1){
atom = num[0] + 1;
if (atom > max){
atom -= 10;
charStack.push('0');
charStack.push('1');
}
else
charStack.push(atom);
}
else
charStack.push(num[0]);
}
else{
for (i = size1; i >= 0; i--){
atom = num[i] + b->num[i] + up - ground;
up = 0;
if (atom > max){
up = 1;
atom -= 10;
}
charStack.push(atom);
}
if (up == 1)
charStack.push('1');
}
string calcResult(charStack.size(),' ');
i = 0;
while (!charStack.empty())
{
calcResult[i++] = (char)charStack.top();
charStack.pop();
}
reVal = new BigBoy(calcResult);
return reVal;
}
꾀->꽤
ㅋㅋㅋㅋㅋ 맞춤법도사 도대체 언제자는지모르겠다 언제나있어
혹시 프로그램돌리는건아니죠ㅕ??
Java기초 예제 공부를 오늘 조금 했는데 C언어에서 파생된 언어라 명령어가 비슷한 부분이 자주 나옵니다.
ㅋㅋㅋ 저도 c 언어쭈욱하다가 자바 1달공부하고 바로 졸작만들었어요 자바는 참쉬워요... 특히 파라미터 넘길때 너무너무너무 쉽고 하 컬렉션프레임웤 개짱... 근데 컬렉션중에 가끔 내부동작 이해못하면 속도하락의 지름길 암튼 자바도 좋음
손인데염
맞춤법장인인정
꾀가 아니라 꽤입니다. 코드 작성하기 전에 맞춤법부터 제대로 쓰시길^^..