playXP

서브 메뉴

Page. 1 / 12523 [내 메뉴에 추가]
글쓰기
작성자 아이콘 씨새발끼
작성일 2011-01-19 20:13:24 KST 조회 238
제목
c언어 힌트좀 주세요..

2의 n제곱을 구하는 함수를 구현해야 합니다.

 

단 재귀적으로 구현해야 합니다.

 

그래서 대충 구상해본게

 

#include <stdio.h>

int square(int num)
{
 if(num==1)
  return 2;
 else
  return 2 * square((num-1) * 2);
}
int main()
{
 int a=0;
 printf("main함수 진입");
 scanf("%d", &a);

 printf("%d", square(a));
}

 

이겁니다.

재귀 함수를 처음배워서 저렇게 쓰는게 맞는지도 잘 모르겠어요.

그냥 막연하게라도 어떻게 해야될지 힌트좀 주세요 ㅠㅠ

 

 

 

스2이야기 : 아...아니...자게군요.

지속적인 허위 신고시 신고자가 제재를 받을 수 있습니다.
신고 사유를 입력하십시오:

아이콘 glados (2011-01-19 20:16:31 KST)
0↑ ↓0
센스 이미지
꼭 재귀로 하라던가요?
아이콘 씨새발끼 (2011-01-19 20:18:16 KST)
0↑ ↓0
센스 이미지
ㄴ 네....이런...
메카닉종결자 (2011-01-19 20:18:31 KST)
0↑ ↓0
센스 이미지를 등록해 주세요
int square(int num)
{
if(num==0) return 1;
else return 2*square(num-1);
}
대충이런식으로 구현해주시면되겟네요
포더윈터 (2011-01-19 20:20:29 KST)
0↑ ↓0
센스 이미지
square((num-1)*2)의 부분이 뭔가 이상하네요. 저렇게 하면 인수가 계속 커져서 재귀함수가 무한하게 호출되지 않나요?
포더윈터 (2011-01-19 20:20:59 KST)
0↑ ↓0
센스 이미지
으앙 메카닉종결자님 앙돼요 답을 알려주면 새싹밟기가 되요
아이콘 씨새발끼 (2011-01-19 20:21:12 KST)
0↑ ↓0
센스 이미지
ㄴ 헐? 그렇군요..square이란 함수에 괜히 2를 곱했구낭..
아이콘 glados (2011-01-19 20:21:18 KST)
0↑ ↓0
센스 이미지
메카닉처럼 탈출구문을 만들어 줘야됩니다
아이콘 씨새발끼 (2011-01-19 20:21:23 KST)
0↑ ↓0
센스 이미지
밢혔당 ㅠㅠㅠ
아이콘 씨새발끼 (2011-01-19 20:31:04 KST)
0↑ ↓0
센스 이미지
근데 계속커진다니... 꿈에도 몰랐어영 ㅠ
하여간 다들 감사드립니다. 예제 다른것도 해결해봐야겠어요..;;
아이콘 glados (2011-01-19 20:35:52 KST)
0↑ ↓0
센스 이미지
아이디가 그게 뭡니까 재밌지도 않고
아이콘 씨새발끼 (2011-01-19 20:45:54 KST)
0↑ ↓0
센스 이미지
ㄴ ㅠㅠ 죄송해요
아이콘 췌몬드 (2011-01-19 21:51:10 KST)
0↑ ↓0
센스 이미지를 등록해 주세요
재귀함수는 오버헤드 발생의 요인 pow(밑, 지수)
댓글을 등록하려면 로그인 하셔야 합니다. 로그인 하시려면 [여기]를 클릭하십시오.
롤토체스 TFT - 롤체지지 LoLCHESS.GG
소환사의 협곡부터 칼바람, 우르프까지 - 포로지지 PORO.GG
배그 전적검색은 닥지지(DAK.GG)에서 가능합니다
  • (주)플레이엑스피
  • 대표: 윤석재
  • 사업자등록번호: 406-86-00726

© PlayXP Inc. All Rights Reserved.