디시인사이드 갤러리

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

갤러리 본문 영역

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

권소현바라기(121.55) 2011.10.24 23:53:56
조회 38 추천 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/07/21 - -
AD 곧 휴가!! 홈캉스, 바캉스 SALE 운영자 25/07/21 - -
281579 뜬금없이 미안한데 윈도우 api 뭣좀 물어보자. [1] 이세상끝에서갤로그로 이동합니다. 11.10.17 64 0
281577 ★ [랭킹시스템] 구구단 퀴즈 게임! ★ [10] 반짝단풍갤로그로 이동합니다. 11.10.17 134 0
281576 이와중에 김충일 배일도는.. 534F444D61737465갤로그로 이동합니다. 11.10.17 44 0
281575 해당 영어단어를 순차검색하는 소스를 이진검색으로 바꾸려는데 코딩을 어디에 [1] ㅇㅇㅇ(119.202) 11.10.17 74 0
281573 책 드뎌 삿다 [2] 로하로하알로하갤로그로 이동합니다. 11.10.17 71 0
281572 학교 운동장 트랙에서 뜁니다 三didas갤로그로 이동합니다. 11.10.17 53 0
281571 강남역 삼성생명에서 플젝 뜁니당 [6] 꼬꼬월드갤로그로 이동합니다. 11.10.17 126 0
281570 인체 감지 선풍기 대해서 알려주세요ㅜㅜ [3] 캡스톤준비생(203.234) 11.10.17 396 0
281568 프갤보다빵터짐 [14] 三didas갤로그로 이동합니다. 11.10.17 209 0
281567 요새 나오는 윈7 배포판들은 좀 짱인 듯 [2] 분당살람갤로그로 이동합니다. 11.10.17 95 0
281566 보통 칼퇴하면 몇시를 말하는거야? [9] 얼빠진호랑이갤로그로 이동합니다. 11.10.17 115 0
281565 클럽 프렌즈 <-- 이거 뭐하는 싸이트냐 [4] 장어구이(211.245) 11.10.17 77 0
281564 천조국의 흔한 운동기구.swf [7] 534F444D61737465갤로그로 이동합니다. 11.10.17 272 0
281563 siri의 적절한 사용법 다시.jpg [3] 534F444D61737465갤로그로 이동합니다. 11.10.17 145 0
281562 곽노현팀장에게 [15] 서울시민(168.248) 11.10.17 182 0
281561 왜 맞는거 같은데 안되죠?c++ [1] ㅠㅠ(182.214) 11.10.17 67 0
281560 형들 컴퓨터구조론 질문 좀 하자 [1] 시네(175.116) 11.10.17 77 0
281557 블로그 사진 말야.. [10] blackd갤로그로 이동합니다. 11.10.17 154 0
281556 형들 c언어 문제랑 답만 있는 교제는 없엉?? [1] healslave갤로그로 이동합니다. 11.10.17 62 0
281554 포트란을 사용하여 성적 입력 [1] 프갤충(203.252) 11.10.17 97 0
281553 ★ [랭킹시스템] 구구단퀴즈 게임! ★ [4] 반짝단풍갤로그로 이동합니다. 11.10.17 80 0
281552 책도 없고 컴터도 없어서 공부도 못하고 [6] 얼빠진호랑이갤로그로 이동합니다. 11.10.17 106 0
281551 하트... [2] iljeomobolt갤로그로 이동합니다. 11.10.17 37 0
281550 사용자정보 찾기 프로그램 어떻게 만들지.. dddd(119.202) 11.10.17 35 0
281549 웹사이트 캡쳐 프로그램 아는형 있어? [1] (121.66) 11.10.17 75 0
281546 책산거 지금 오고있다.. ㄲㄲ [3] .3(124.137) 11.10.17 90 0
281545 할것도 없는데 졸리지도 않네 [2] 얼빠진호랑이갤로그로 이동합니다. 11.10.17 60 0
281544 단맛은 혀끝에서.. [4] iljeomobolt갤로그로 이동합니다. 11.10.17 137 0
281543 대학교 시험기간+월요일이라 그른가 [1] Dawnwalkre갤로그로 이동합니다. 11.10.17 61 0
281540 64비트 컴파일러 [2] 수크라제갤로그로 이동합니다. 11.10.17 91 0
281539 개초봇 내일 시험에 힌트.... madcat_mk2갤로그로 이동합니다. 11.10.17 45 0
281538 형들 Aven갤로그로 이동합니다. 11.10.17 42 0
281537 txt 파일을 불러와서 입력한 값을 읽을 때, 특정위치만 읽게하고싶어요 [5] dddd(119.202) 11.10.17 59 0
281536 대세는 안드로이드에서 웹으로 ... [1] 장어구이(211.245) 11.10.17 73 0
281535 여러분 솔로는 진리입니다 모두 솔로가 됩시다 [1] 얼빠진호랑이갤로그로 이동합니다. 11.10.17 68 0
281534 리눅스 vmware로 설치법좀 ㅠㅠ [4] rdfsdaf(211.105) 11.10.17 188 0
281533 siri의 적절한 사용법.jpg [2] 534F444D61737465갤로그로 이동합니다. 11.10.17 142 0
281532 윈덤프 깔아본사람 존벨(210.123) 11.10.17 73 0
281530 ㅋㅋㅋ 웃기당.. [3] 일광면(119.198) 11.10.17 98 0
281527 ★ [랭킹시스템] 구구단 퀴즈 게임 ★ [6] 반짝단풍갤로그로 이동합니다. 11.10.17 99 0
281526 으아.. 매틀랩 이거 해석이안되요. [4] 매틀랩컨티뉴(121.134) 11.10.17 81 0
281525 사람은 폭풍전야를 느낄줄 알아야 하는거 같아. [4] blackd갤로그로 이동합니다. 11.10.17 111 0
281524 형들 void포인터에 대해 질문있어 [11] 얼빠진호랑이갤로그로 이동합니다. 11.10.17 154 0
281522 형들 부탁이야 도와줘영 힝힝 ㅠㅠ [9] 개초봇(155.230) 11.10.17 89 0
281521 딱풀? [2] iljeomobolt갤로그로 이동합니다. 11.10.17 72 0
281520 근데 확실히 웹개발자가..... .3(124.137) 11.10.17 88 0
281519 졸립다.. [3] 쿄스케갤로그로 이동합니다. 11.10.17 47 0
281518 그래 개발이 족같지... 534F444D61737465갤로그로 이동합니다. 11.10.17 48 0
281517 전에 누가 핸드폰에서 코딩할수 있는 어플있다고 했던것 같은데 [1] ㅇㅇ(222.113) 11.10.17 93 0
281515 후느님 책 로하로하알로하갤로그로 이동합니다. 11.10.17 47 0
뉴스 하정우, 팬 별명으로 ‘최음제’ 썼다가… 인스타 난리났다 디시트렌드 07.21
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2