디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

성님들 이것좀 알려달랑게 ㅠㅠ

권소현바라기(121.55) 2011.10.24 23:53:56
조회 39 추천 0 댓글 0


두 문자열을 입력받아서

문자열을 더하고 빼기하는 문제인데..

빼기에서 걸린당께..ㅠ



#include <stdio.h>
#include <string.h>

int compare(const char n1[], const char n2[]);
void add(const char n1[], const char n2[], char n3[]);
void minus(const char n1[], const char n2[], char n3[]);
void mult(const char n1[], const char n2[], char n3[]);

void main(){
 int s;
 char a[]="123456789", b[]="123456788",c[]={0};
 
 
 s = compare(a,b);
 if(s == 1)
  printf("큰 수 = %s\\n",a);
 else if(s == -1)
  printf("큰 수 = %s\\n",b);
 else
  printf(" 같음 ! \\n");

 
 add(a,b,c);
 minus(a,b,c);
 //printf("두 수의 합 = %s\\n",sum);
 //min = minus(a,b,c);
  //printf("두 수의 차 = %s\\n",min);
 //x = mult(a,b,c);
  //printf("두 수의 곱 = %s\\n",x);


}

int compare(const char n1[], const char n2[]){
 int i,len1,len2;
 len1= strlen(n1);
 len2= strlen(n2);

 if(len1>len2)
  return 1;
 else if(len1<len2)
  return -1;
 else
  for(i=0;i<len1;i++){
   if(n1[i] > n2[i])
    return 1;
   else if(n1[i] < n2[i])
    return -1;}


}

void add(const char n1[], const char n2[], char n3[]){
 int i,len,len1,len2,carry=0;
 char temp1[65]={0},temp2[65]={0},sum[65]={0};
 len1=strlen(n1);
 len2=strlen(n2);
 if(len1>len2){
  temp1[0]=\'0\';
  strcat(temp1,n1);
  for(i=0;i<=len1-len2;i++)
   temp2[i] = \'0\';
   strcat(temp2,n2);}

 else if(len1<len2){
  temp2[0]=\'0\';
  strcat(temp2,n2);
  for(i=0;i<=len2-len1;i++)
   temp1[i] = \'0\';
  strcat(temp1,n1);}
 else{
  temp1[0]=\'0\';
  strcat(temp1,n1);
  temp2[0]=\'0\';
  strcat(temp2,n2);
 }
 printf(" %s. %s \\n",temp1,temp2);

 len=strlen(temp1);
 for(i=len-1;i>=0;i--){
  n3[i] = (temp1[i] -\'0\' + temp2[i] -\'0\' + carry)%10 +\'0\';//temp1과 temp2와 캐리값을 더한후에
                //10으로 나눈 나머지 값을 문자열로 변환
  carry = (temp1[i] -\'0\' + temp2[i] -\'0\' + carry)/10;}//temp1과 temp2와 캐리값을 더한후에
               //10으로 나눈 값을 문자열로 변환
 n3[len]=\'\\0\';
 
 if(n3[0]==\'0\')
  for(i=0;i<len;i++)
   n3[i] = n3[i+1];//제일 앞자리가 0일 경우 다음값을 앞으로 가져와서 0을 없앰.
 n3[len]=\'\\0\';
 printf("%s \\n",n3);
  /*
  for(i=1;i<len1;i++)
   temp1[i]=n1[i] - \'0\';
   temp2[i]=n2[i] - \'0\';
  
  for(i=len;i<0;i--)
   if(temp1[i]+temp2[i] > 9)
    temp1[i-1]+=1;
   */
 
}


---------------------이부분이 문제랑게 ㅠㅠ--------------------------------

void minus(const char n1[], const char n2[], char n3[]){
 int i,len,len1,len2,carry=0;
 char temp1[65]={0},temp2[65]={0},sum[65]={0};
 len1=strlen(n1);
 len2=strlen(n2);
 if(len1>len2){
  temp1[0]=\'0\';
  strcat(temp1,n1);
  for(i=0;i<=len1-len2;i++)
   temp2[i] = \'0\';
   strcat(temp2,n2);}

 else if(len1<len2){
  temp2[0]=\'0\';
  strcat(temp2,n2);
  for(i=0;i<=len2-len1;i++)
   temp1[i] = \'0\';
  strcat(temp1,n1);}
 else{
  temp1[0]=\'0\';
  strcat(temp1,n1);
  temp2[0]=\'0\';
  strcat(temp2,n2);
 }
 printf(" %s. %s \\n",temp1,temp2);

 len=strlen(temp1);
 for(i=len-1;i>=0;i--){
  if(temp1[i]-\'0\' > temp2[i]-\'0\')
  n3[i] = (temp1[i] -\'0\' - temp2[i] -\'0\') +\'0\';//temp1과 temp2와 캐리값을 더한후에
                //10으로 나눈 나머지 값을 문자열로 변환
  else if(temp1[i]-\'0\' < temp2[i]-\'0\'){
   if(temp1[i-1] == 0)
    temp1[i-2] = (temp1[i-3] -\'0\' - 1)+\'0\';
    temp1[i-1] = (temp1[i] -\'0\' - 1)+\'0\';
    n3[i] = (10 + temp1[i] -\'0\' - temp2[i] -\'0\') +\'0\';
   else
    temp1[i-1] = (temp1[i] -\'0\' - 1)+\'0\';
    n3[i] = (10 + temp1[i] -\'0\' - temp2[i] -\'0\') +\'0\';
   }
  else
   n3[i] = (temp1[i] -\'0\' - temp2[i] -\'0\') +\'0\';
 }
  
               //10으로 나눈 값을 문자열로 변환
 n3[len]=\'\\0\';
 
 if(n3[0]==\'0\')
  for(i=0;i<len;i++)
   n3[i] = n3[i+1];//제일 앞자리가 0일 경우 다음값을 앞으로 가져와서 0을 없앰.
 n3[len]=\'\\0\';
 printf("%s \\n",n3);


 }

void mult(const char n1[], const char n2[], char n3[]){


}


성님들은 문제를 해결해줄거라 믿음요!

추천 비추천

0

고정닉 0

0

원본 첨부파일 1

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 대박 날 것 같아서 내 꿈에 나와줬으면 하는 스타는? 운영자 25/11/17 - -
AD 대학생 필수템! What's in my Bag 운영자 25/11/21 - -
283439 과제하다가 질문이있는데 의사코드 형들(218.101) 11.10.25 43 0
283437 코딩하는데 왜 C언어 창시자를 알아야 되? [2] Aven갤로그로 이동합니다. 11.10.25 99 0
283436 c언어 시험에 c언어만든게 누구냐고나옴 [2] 저격甲갤로그로 이동합니다. 11.10.25 120 0
283435 파일 입출력 관련 질문[줄단위] [9] 호구님(121.129) 11.10.25 65 0
283434 [C++] 메인에서 숫자 받아 해당 크기의 배열만드는데 질문이 있어요 [1] 아몰(210.125) 11.10.25 56 0
283433 아 포트란 존내 어렵네.. 행렬 AB이거 곱왜 안될까..? 1212(119.17) 11.10.25 53 0
283431 지금 참조자 대충 봤는데 로하로하알로하갤로그로 이동합니다. 11.10.25 38 0
283428 정말 모르겠습니다 도와주세요.. [1] 나에갤로그로 이동합니다. 11.10.25 66 0
283427 컴퓨터와 현실 [5] 샤크라(211.224) 11.10.25 124 0
283426 오늘도 좋은 아버지는 보이지 않았다 [1] 전간디갤로그로 이동합니다. 11.10.25 94 0
283424 별 얘긴 아니지만 수고하셨습니다와 고생하셨습니다. [1] 권소현바라기(121.55) 11.10.25 67 0
283421 매틀랩 부탁드릴.. [1] 수구(175.116) 11.10.25 38 0
283420 테트리스 응용잘된... 코드 ㅠㅠ 형들 부탁해요 [8] 테트리스(175.200) 11.10.25 95 0
283419 형들 매트랩 while 적용했는데 안나와요 ㅠ 개쉬운건데 ㅠㅠ [9] 으헝헝(121.162) 11.10.25 66 0
283418 시간복잡도에서 궁금한게있어여 [10] ㅇ3(183.97) 11.10.25 95 0
283417 전산병으로 군대간 횽.있으세요? [1] 희륏갤로그로 이동합니다. 11.10.25 65 0
283416 수고했다는 말이지 웃어른한테는 쓰면안되지? [10] ㄱㄱ(112.198) 11.10.25 151 0
283415 c++에서 이부분 어디가 이상인건지 좀 알려주세여. [2] 권소현바라기(121.55) 11.10.25 65 0
283414 스샷 찍어서 올림 [14] 아마그래머(222.233) 11.10.25 162 0
283413 안철수연구소 월급 얼마냐 [3] asdfqwer(119.197) 11.10.25 133 0
283412 형들 이거 한줄만 해석해줘 주석! [4] C늅(119.197) 11.10.25 60 0
283410 시발 Rome ㅋㅋ ㅂㅈㄷ(14.45) 11.10.25 59 0
283409 프갤 컴파일러 능력 장단점 [2] [성대아싸]갤로그로 이동합니다. 11.10.25 146 0
283408 안되는데...고쳐도 똑같이 undeclared identifier에러남 [14] 아마그래머(222.233) 11.10.24 66 0
283407 레알 과제갤러리넼ㅋㅋㅋㅋㅋㅋㅋㅋ 절반이 질문글이야 Aven갤로그로 이동합니다. 11.10.24 42 0
283406 형님들 도와주세요...c언어 수행시간 구하는거요... [2] 초보자(175.116) 11.10.24 72 0
성님들 이것좀 알려달랑게 ㅠㅠ 권소현바라기(121.55) 11.10.24 39 0
283404 뭐? 언어는 툴일뿐이라고? RR(14.32) 11.10.24 36 0
283403 퍼블리싱 관련 질문염!! [1] ¥군사마갤로그로 이동합니다. 11.10.24 69 0
283402 밑에 defined_identifier:: 추가해도 안되는데 횽들 ㅠㅠ [11] 아마그래머(222.233) 11.10.24 55 0
283401 ㅋㅋㅋ 알고리즘 과제 졸라 어렵네 썅 [1] ㅈㅈㅈㅈ(118.47) 11.10.24 39 0
283400 아따 프갤 횽님들 이것좀 알려달랑께 [13] 아마그래머(222.233) 11.10.24 95 0
283398 내 인생 최대의 실수 Aven갤로그로 이동합니다. 11.10.24 43 0
283397 횽들 RWD 소스나 정보 좀 굽신굽신 [1] MEECL갤로그로 이동합니다. 11.10.24 43 0
283395 처음 프로그래밍 공부하려고 하는데 볼만한 책좀 추천해주세요 [2] 이제공부하자(124.51) 11.10.24 57 0
283394 웹디자인 프로그래밍 하시는 분께 질문 [8] 명부마도갤로그로 이동합니다. 11.10.24 150 0
283393 저의 GUI 감각 , MFC [6] [성대아싸]갤로그로 이동합니다. 11.10.24 214 0
283392 C언어 퀴즈 [3] 지성인(175.116) 11.10.24 93 0
283391 횽들 알고리즘 하나만 물어보자 [5] C초보(121.165) 11.10.24 74 0
283389 형들은 블로그 어디꺼 쓰고있어? [4] 개루링갤로그로 이동합니다. 11.10.24 92 0
283387 님들은 서버 운영할 때 [3] 로하로하알로하갤로그로 이동합니다. 11.10.24 62 0
283386 횽드라 아까에 이어서 다시 질문 [1] 음멋갤로그로 이동합니다. 11.10.24 35 0
283385 비베 질문이여.. for ~ next [6] DNB갤로그로 이동합니다. 11.10.24 78 0
283383 프갤은 실전이구나 [3] 진짜차도둑갤로그로 이동합니다. 11.10.24 100 0
283381 마타버터님 SSD질문 [3] 1(183.104) 11.10.24 55 0
283380 형들 이것좀 가르쳐주소 [4] laoshanlong갤로그로 이동합니다. 11.10.24 53 0
283379 일단 나는 둘 다 맘에 안 드는데 분당살람갤로그로 이동합니다. 11.10.24 45 0
283377 유닉스 시스템콜 코드 어디가 잘못됀겨? [7] 마타버터갤로그로 이동합니다. 11.10.24 60 0
283376 바다 SDK for linux 는 없음? [1] 샘숭(218.158) 11.10.24 38 0
283375 하아 씨발...스프링.... [5] 돌아이바갤로그로 이동합니다. 11.10.24 77 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2