kim

kim

kimkim· 4년

질문하노이탑 for문(반복문) 틀린거 알려주세요..

#include <stdio.h> #include <conio.h> #define pause getch() int main() {     int i, j, n[10]={1,1,1,1,1,1,1,1,1,1}, c[10]={0};     char p;       j=4; //초기 탑의 높이, 여기에서는 1~10까지만 가능...     for(i=0;i<j;)  if(n[i]!=0||!(i+++1)){     if(p=c[i], (i+j)%2) c[i]--==0 && (c[i]=2);     else c[i]++==2 && (c[i]=0);     printf("%3d원판을 %c에서 %c로 옮긴다\n", i+1,&#39;A&#39;+p,&#39;A&#39;+c[i]);     for(n[i]--, i--;n[i]==0||(i=0);n[i--]=1);     }       pause;     return 0; }     실행결과 cmd가 이상하게 나옵니다.    
1.2K
1
0
케이플
케이플·2024-12-17
#include <stdio.h> #define NUM_DISKS 3 // 원판 개수 설정 int main() { int moves = (1 << NUM_DISKS) - 1; // 총 이동 횟수 char peg[] = {'A', 'B', 'C'}; for (int i = 1; i <= moves;...
kimkim· 4년

질문c언어 하노이탑 for문 구현 질문

재귀함수로 하노이탑 구현은 알겠는데 for문(반복문)으로 구현하는게 감도 안잡힙니다. 선배님들 도움 부탁드립니다.
2.9K
1
0
라이너
라이너·2021-04-11
아래 코드를 참고해보시기 바랍니다. #include <stdio.h> #include <conio.h> #define pause getch() int main() { int i, j, n[10]={1,1,1,1,1,1,1,1,1,1}, c[10]={0}; char p; j = 4; //초기 탑의 높이, 여기에서는 ...