2010-12-04 6 views
0

단일 루프로 나선형을 만들 수 있습니까? 전에는 나선을 만들었지 만 여러 루프에서만 만들었습니다. 출력을 표시 할 코드 보너스.for/while 또는 while 루프로 나선형으로 만들기

#include "conio.h" 
#include "dos.h" 
#include "stdlib.h" 

void main() 
{  
    int p,q,r,s,t; 
clrscr(); 

for(p=8; p<14; p++) 
{ 
    for(q=5 ; q<26; q++) 
    { 
     gotoxy(5,q); 
     printf("Û"); 
    } 
    for(r=5; r<50; r++) 
    { 
     printf("Ü"); 
    } 
    for(s=25; s>4; s--) 
    { 
     gotoxy(50,s); 
     printf("Û"); 
    } 
    for(t=50; t>6; t--) 
    { 
     gotoxy(t,4); 
     printf("Ü"); 
    } 
    for(q=5; q<25; q++) 
    { 
     gotoxy(7,q); 
     printf("Û"); 
      } 
      // etc. . . I didn't write the full code. 
} 
+0

'void main()'- ew ... –

답변

1

한 가지 가능한 방법 :

const float centerX = 10, centerY = 10; 
const float speed = 0.1; 
const float max_angle = 10; 
const float angleStep = 0.1; 

for (float angle = 0; angle < max_angle; angle += angleStep) { 
    float radius = angle*speed; 
    float sX = centerX+cos(angle)*radius; 
    float sY = centerY+sin(angle)*radius; 
    createPoint(sX,sY); 
} 

대체 어떤 그리기 createPoint에 대한 기능과 매개 변수를 사용하여 재생할 수 있습니다. createPoint에 대한 (위의 것과 유사)

한 가지 방법은 다음과 같습니다 나중에 그래픽 라이브러리를 사용하려는 경우, 당신은 단지이 방법을 변경할 수 있습니다

void createPoint(int x, int y) { 
    gotoxy(x,y); 
    putchar('*'); 
} 

.

+0

어떤 종류의 드로잉 기능을 사용할 수 있습니까? 대체물로 사용해야합니다. – user517026

+0

내 게시물에 추가되었습니다. – Kos