[1] 행렬 크기와 값을 쓰고, [행렬 만들기] 클릭
  열   값  


[2] 클릭해서 미로 모양을 만들고,    

 


===== (순차구조) doit 소마큐브  ====


doit(" s4l su4r ");
item = 5;
doit(" ss lu ");
item = 6;
doit(" 3s r ");
item = 7;
doit(" sd sl ");



===== (반복구조) 치환문자와 for  =====


item = 8;
for( i= 1; i<= 4; i+= 1 ) {
  doit(" s4l su4r ");
}
item = 9;
A = ' s4l s 4r  ';
doit(" 2A ");


===== (선택구조) 조건수식과 if =====


beginxyz();
if(  x > 0  ){
  return 0;
}



======== (AI수학) 행렬과 데이터 =====


행렬 = [
[0,0,1,1,0,0],
[0,1,0,0,1,0],
[1,1,1,1,1,1],
[1,0,0,0,0,1],
[1,0,0,0,0,1] ];
dovt( 행렬 );
// 행렬벡터 표현
item = 43;
map  = [
'001100',
'010010',
'111111',
'100001',
'100001' ];
dovt( map );


========== 미로 게임 코딩 ==========


item = 8;
cubeset(7,7,1 , 6);
cubeset(7,7,2 , 6);
cube(1,12,1,0);
cube(1,12,2,0);
// item=0 통로를 만들자
미로 = [[2, 2, 2, 2, 2, 0, 2, 2, 0, 2, 2],
       [0, 0, 0, 0, 2, 0, 2, 0, 0, 0, 2],
       [2, 2, 2, 2, 2, 0, 2, 0, 2, 2, 2],
       [2, 0, 0, 0, 2, 0, 2, 0, 2, 0, 2],
       [0, 2, 2, 2, 2, 2, 2, 0, 0, 2, 2],
       [2, 2, 0, 0, 0, 0, 0, 2, 2, 0, 2],
       [2, 0, 2, 2, 2, 2, 2, 0, 2, 0, 2],
       [2, 0, 2, 0, 0, 0, 2, 2, 2, 0, 2],
       [2, 0, 2, 2, 2, 0, 0, 0, 2, 2, 2],
       [2, 0, 2, 0, 0, 2, 2, 0, 2, 0, 2],
       [2, 2, 2, 2, 2, 2, 0, 2, 2, 0, 2]];
goto( 1, 12, 1 );
item = 0;
dovt( 미로 );
cube(10,1,1, 0);
cube(10,1,2, 0);
cube(7,7,2, 43);



======== (AI수학) 함수와 변수 =======



function 나무(a,b,c) {
item = 2;
cubeset( a, b, c  , 0, 0, 3 );
item = 43;
cubeset( a, b, c+3  , 1, 0, 1 );
cubeset( a, b, c+3  , 0, 1, -1 );
}
// [실행톡] 반복해서 누르세요
for( i=1; i<=10; i+=1 ) {
  x = random(10);
  y = random(60);
  나무(x,y,1);
}


======================================





===== (준비) doit 과 dovt ====


doit( "ssusu L sususu : ");
item = 7;
dovt( ' 12345  > 6789 : ');

===== (목표) 점프대 게임 =====


goto( -6, -2, -13 );
A = ' s4l s 4r  ';
doit(" 2A ");
B = ' s4l ds 4r  ';
item = 45;
doit(" 15B ");
beginxyz();
// return 0;


===== doit 계단 만들기 =====


item = 9;
doit(" s4l su4r ");
doit(" s4l su4r ");
doit(" s4l su4r ");
doit(" s4l su4r ");
item = 6;
doit(" s4l s 4r ");
doit(" s4l s 4r ");


======= 코딩수학 (치환) ======


B = ' s4l su4r ' ;
A = ' s4l s 4r ';
item = 9;
doit(" 4B ");
item = 6;
doit(" 2A ");
doit(" 10B ");


====== dovt 계단 만들기 ======

dovt( ' 12345  < 6789 : ' ) ;
item = 4;
dovt( ' 12345  5<5  6789 : ' ) ;
item = 5;
dovt( ' 12345  55<55  6789 : ' ) ;
item = 6;
dovt( ' 12345  555<555  6789 : ' ) ;



======  쌓기나무 코딩 (행렬벡터) =====


goto( 0, 5, 1 );
dovt( '001100 :' );
dovt( '010010 :' );
dovt( '111111 :' );
dovt( '100001 :' );
dovt( '100001::' );
// 행렬표현
item = 43;
map =[
'001100',
'010010',
'111111',
'100001',
'100001' ];
dovt( map );


============ 성탑 코딩 =================

dovt(' 23232: 30003: 20002: 30003: 23232: ');
goto( 0, 1, 1 );
item = 46;
dovt(' 23232 > 3232 > 3232 > 3232 ');

============ 성탑 코딩 =================

dovt(' 23232: 30003: 20002: 30003: 23232: ');
goto( 0, 1, 1 );
item = 46;
map =[
'23232',
'30003',
'20002',
'30003',
'23232' ];
dovt( map );

=========================================

item = 17;
dovt(' 6868 < 6868< ');
dovt(' 6868 < 6868< ');
map = [
'86868',
'60006',
'80008',
'60006',
'86868' ];
goto( 0, 15, 1 );
item = 43;
dovt( map );


============  공룡 map =================









======= 알고리즘 코딩 (반복구조) ========





B = ' s4l su4r ' ;
A = ' s4l s 4r ' ;
item = 9;
doit(" 4B ");
item = 6;
doit(" 2A ");
doit(" L sss ");
item = 9;
doit(" 4B ");
item = 6;
doit(" 2A L 3s ");


==================================


B = ' s4l su4r ' ;
A = ' s4l s 4r ' ;
for( i= 1; i<= 10; i+= 1 ) {
  item = 9;
  doit(" 4B ");
  item = 6;
  doit(" 2A ");
  doit(" L sss ");
}



===== 지하세계 계단게임 =======



item = 9;
hitem = 6;
A = ' s4l su4r ';
B = ' s4l s 4r ';
C = ' L sss ';
D = ' tttt R ';
doit(" 4A  2B ");
doit(" C ");
doit(" 4A  2B ");
doit(" D ");
doit(" 4A  2B ");
doit(" C ");


===============================


goto( -9, -2, -12 );
item = 9;
hitem = 6;
A = ' s4l su4r ';
B = ' s4l s 4r ';
C = ' L sss ';
D = ' tttt R ';
for( i= 1; i<= 6; i+= 1 ) {
  doit(" 4A h 2B ");
  doit(" C ");
  doit(" 4A h 2B ");
  doit(" D ");
  doit(" 4A h 2B ");
  doit(" C ");
}
item = 0;
cubeset( 6, 11, 0, 4, 2);


===========================




==== (준비) doisxyz 와 doit  ====


doitsxyz();
item = 7;
doit(" SSS X SSS Y S ZZZZ S  ");

========== doitsxyz 명령 ========


doitsxyz();
item = 7;
doit(" 5SX 5SX 5SX 5SX ");
goto( 10, -1, 1 );
item = 17;
dovt(' 6868 < 6868< ');
dovt(' 6868 < 6868< ');


===== (목표) 만리장성 성탑 ======

doitsxyz();
doit(" 5SX 5SX 5SX 5SX ");
item = 17;
goto( 10, -1, 1 );
dovt(' 6868 < 6868< ');
dovt(' 6868 < 6868< ');
// stop ;
item = 7;
goto( -2, 0, 1 );
doit(" LL 20Z ");



=====(최종목표) 만리장성 성탑 =====


doitsxyz();
goto( 0, 0, 1 );
doit(" 5SX 5SX 5SX 5SX ");
item = 17;
goto( 10, -2, 1 );
dovt(' 6868 < 6868< ');
dovt(' 6868 < 6868< ');
item = 37;
cubeset( 12, 0, 9, 3, 3, 3 );
item = 0;
cubeset( 12, 2, 3  , 1, 3, 2 );
cubeset( 10, 0, 3  , 0, 1, -2 );
// stop ;
item = 7;
goto( -2, 0, 1 );
doit(" LL 20Z ");
item = 17;
cubeset( -20, 0, 10  , 3, 3, 9 );
item = 0;
cubeset( -20, 0, 5  , 2, 2, 13 );
goto(-20, 0, 20);


========= cubeset 준비 ========

dovt(' 12321: 12321: 12321: 12321: 12321: ');
item = 43;
cubeset( 3, -1, 1 , 2, 2, 2 );


====== cubeset 성탑 지붕 ======


item=17;
dovt(' 6868 < 6868< ');
dovt(' 6868 < 6868< ');
item = 0;
cubeset( 2, 1, 1  , 1, 0, 2 );
cubeset( 0, 3, 1  , 0, 1, 2 );
item = 7;
cubeset( 2, 3, 9  , 3, 3, 3 );



========= cubeset 준비 ========

dovt(' 11111: 22222: 33333: 22222: 11111: ');
item = 43;
cubeset( 3, -1, 1 , 2, 2, -2 );


========== 음수 사용 =========


item = 46;
cubeset( 9, 9, 1  , 3, 8, 6 );
cubeset( 9, 9, 1  , 8, 3, -6 );
item = 0;
cubeset( 9, 9, 1  , 1, 8, 3 );
cubeset( 9, 9, 1  , 8, 1, -3 );
cube( 9, 1, 7, 49 );



====== cubeset 나무를 심자 ====


item = 2;
cubeset( 1, 1, 1  , 0, 0, 3 );
item = 43;
cubeset( 1, 1, 4  , 1, 0, 1 );
cubeset( 1, 1, 4  , 0, 1, -1 );



======== 만리장성과 나무 ======


doitsxyz();
goto( 0, 0, 1 );
doit(" 5SX 5SX 5SX 5SX ");
item = 17;
goto( 10, -2, 1 );
dovt(' 6868 < 6868< ');
dovt(' 6868 < 6868< ');
item = 7;
goto( -2, 0, 1 );
doit(" LL 20Z ");
// cubeset 나무를 심자
item = 2;
cubeset( 1, 2, 4  , 0, 0, 3 );
item = 43;
cubeset( 1, 2, 7 , 1, 0, 1 );
cubeset( 1, 2, 7 , 0, 1, -1 );



=====  나무심기 (20그루 실행톡) =====


// 실행톡 누르세요
function tree(a,b,c) {
item = 12;
cubeset( a, b, c  , 0, 0, 3 );
item = 43;
cubeset( a, b, c+3  , 1, 0, 1 );
cubeset( a, b, c+3  , 0, 1, -1 );
}
for( i=1; i<=20; i+=1 ) {
  x = random(40);
  y = random(40);
  tree(-x-5,y+10,1);
}



===================================


item = 2;
cubeset( 1, 1, 1  , 0, 0, 3 );
map = [
'010',
'121',
'010' ];
goto( -1, 2, 4 );
item = 43;
dovt( map );


===============================



doitsxyz();
item = 16;
goto( 0, 3, 1 );
doit(" 5SX 5SX 5SX 5SX ");
goto( 10, 1, 1 );
item = 17;
cubeset( 12, 3, 5, 2, 2, 5 );
item = 47;
cubeset( 12, 16, 5, 2, 2, -5 );


================================


doitsxyz();
goto( 0, 0, 1 );
doit(" 5SX 5SX 5SX 5SX ");
item = 17;
goto( 10, -2, 1 );
dovt(' 6868 < 6868< ');
dovt(' 6868 < 6868< ');
item = 37;
cubeset( 12, 0, 9, 3, 3, 3 );
item = 0;
cubeset( 12, 2, 3  , 1, 3, 2 );
cubeset( 10, 0, 3  , 0, 1, -2 );


========== 산에 성을 올리자 ======

doitsxyz();
item = 7;
goto( -2, 0, 1 );
doit(" LL 20Z ");
item = 17;
cubeset( -20, 0, 10  , 3, 3, 9 );
item = 0;
cubeset( -20, 0, 5  , 2, 2, 13 );
goto(-20, 0, 20);


====== 알고리즘 (변수코딩) ======


for( i= 1; i<= 5; i+= 1 ) {
  item = i;
  cubeset( 5, 5, i  ,  5-i );
}



===================================


doitsxyz();
call("A","5SX 5SY 2SX");
item = 7;
doit(" 4A ");
goto( 10, -1, 1 );
item = 17;
dovt(' 6868 < 6868< ');
dovt(' 6868 < 6868< ');
item = 47;
cubeset( 12, 1, 9, 3, 3, 3 );


========  반복치환  ========


doitsxyz();
call("C","5SX");
call("B","C5SY");
call("A","BSSX");
item=7;
doit(" 4A ");

===========================






======== (준비) dovt 미로 =========


goto( 0, 7, 1 );
dovt( '2220222 :' );
dovt( '2020022 :' );
dovt( '2002002 :' );
dovt( '2200202 :' );
dovt( '2220202 :' );
dovt( '2000002 :' );
dovt( '2022222 :' );


====== 행렬 표현을 통한 미로 =====


map = [
'2220222',
'2020022',
'2002002',
'2200202',
'2220202',
'2000002',
'2022222'];
goto( 0, 7, 1 );
item = 43;
dovt( map );


===== (dovt 미로) 나무를 심자 ======


map = [
'2220222',
'2020022',
'2002002',
'2200202',
'2220202',
'2000002',
'2022222'];
goto( 0, 7, 1 );
item = 13;
dovt( map );
// 나무를 심자
item = 2;
cubeset( 7, 7, 1  , 0, 0, 3 );
item = 43;
cubeset( 7, 7, 4  , 1, 0, 1 );
cubeset( 7, 7, 4  , 0, 1, -1 );




===== (준비) cubeset 피라미드 =====


cubeset( 5, 5, 1  , 4 );
cubeset( 5, 5, 2  , 3 );
cubeset( 5, 5, 3  , 2 );
cubeset( 5, 5, 4  , 1 );
cubeset( 5, 5, 5  , 0 );


======= for 명령 변수 활용  ========


for( i= 1; i<= 5; i+= 1 ) {
  cubeset( 5, 5, i  , 5-i );
}



===== cubeset 피라미드 만들기 ======


item = 16;
for( i= 1; i<= 10; i+= 1 ) {
  cubeset( 10, 10, i  , 10-i );
}
item = 0;
for( i= 1; i<= 9; i+= 1 ) {
  cubeset( 10, 10, i  , 9-i );
}
cubeset( 2, 10, 1 ,  1, 1, 1 );
item = 9;
goto( 5, 10, 1 );
A = 'su';
doit(" s 2A lssrrttls ");
doit(" s 3A ");
cube( 12, 10, 8, 0 );
cube( 13, 10, 7, 0 );




======== dovt 피라미드 미로 =======


map = [
'2220222',
'2020022',
'2002002',
'2200202',
'2220202',
'2000002',
'2022222'];
goto( 1, 8, 1 );
item = 43;
dovt( map );
item=16;
dovt( '10111111<11111111<' );
dovt( '11101111<11111111<' );
cubeset( 5, 5, 3 , 2 );



=========== dovt 피라미드 =========

item = 16;
goto( 0, 9, 1 );
dovt(' 111111111: 122222221: ');
dovt(' 123333321: 123444321: ');
dovt(' 123454321: 123444321: ');
dovt(' 123333321: 122222221: ');
dovt(' 111111111 : ');


========= 피라미드 미로코딩 =======

item = 16;
goto(0, 9, 1);
dovt(' 111011111 : ');
dovt(' 122022221 : ');
dovt(' 122000021 : ');
dovt(' 120022021 : ');
dovt(' 120200221 : ');
dovt(' 120020221 : ');
dovt(' 120000021 : ');
dovt(' 122202221 : ');
dovt(' 111101111 : ');
goto(2, 7, 3);
dovt(' 11111 : ');
dovt(' 12221 : ');
dovt(' 12321 : ');
dovt(' 12221 : ');
dovt(' 11111 : ');


======= 게임코딩 교재 코드 =======

map = [
'2220222',
'2020022',
'2002002',
'2200202',
'2220202',
'2000002',
'2022222'];
for( i= 0; i<= 6; i+= 1 ) {
  for( j= 0; j<= 6; j+= 1 ) {
    if( map[i][j] == 2 ) {
    cube( j+1, 7-i, 1 ,  44 )}
    }
}


========= doit 피라미드 ===========


item = 16;
doit(" 8sL8sL 8sL8sL slu ");
doit(" 6sL6sL 6sL6sL slu ");
doit(" 4sL4sL 4sL4sL slu ");
doit(" 2sL2sL 2sL2sL slu ");



=================================

goto( 0, 1, 1 );
item = 5;
for( i= 1; i< 6; i+= 1 ) {
  doit(" s10l s10r");
}
goto( 0, 1, 1 );
item = 9;
for( i= 1; i<= 4; i+= 1 ) {
  dovt('3333333333<');
}
goto( 4, 1, 4 );
doit(" suuu Ls ");
item = 0;
doit(" u ");





=============  피타고라스 정리와 토러스 ========



beginxyz();;
R = 30;
r = 10;
d = Math.sqrt(x*x+y*y);
D = (d-R)*(d-R) +z*z -r*r;
if( Math.abs(D) < 22 && y >0 ) {
    return 16;
}



============ won 과 solid == 콜로세움 ============


beginxyz();;
size = 35;
if(z>0 && z<10)  {
if( x*x+y*y < size*size ) {
   if( won(0,0,1,size-10) ) { return 0 ;}
   if( won(0,0,2,size-8) ) { return 0 ;}
   if( won(0,0,3,size-6) ) { return 0 ;}
   if( won(0,0,4,size-4) ) { return 0 ;}
}
if( won(0,0,1,size-2)  && z<10 )  {return 16 ;}
if( solid(0,-size+z,z,2) && z<4 )  {return 9 ;}
}


========= won 과 solid == 파르테논 신전 ===========


beginxyz();;
if(z>0 && z<=25) {
for(n=0; n<5; n++) {
  if( won(16-8*n,29,1,1) && z<15) {return 16;}
  if( won(16-8*n,-29,1,1) && z<15) {return 16;}
}
for(n=0; n<6; n++) {
  if( won(-16,20-8*n,1,1) && z<15) {return 16;}
  if( won(16,20-8*n,1,1) && z<15) {return 16;}
}
if( solid(0,0,15,15-2*(z-15),31) ) {return 40;}
if( solid(0,0,15,19-2*(z-15),31) ) {return 16;}
if( solid(0,0,25,0,31) ) {return 16;}
}



==================================================



화면의 [ beginxyz ] 단추를 눌러 터북크래프트 세상으로 !!
다음, [실행톡] 버튼으로 터북이 거북명령을 실행시킨다 !!
이제, 마우스로 터북크래프트 화면을 클릭하고 들어가자.

Shift = 중력작동 : 동서남북 이동 WASD : 위아래 이동 ZXC
Esc = 편집기로 : 블록 조작 Ctrl, Alt + 클릭 : 숫자키로 item
[콘진원] 피라미드 미로게임 코딩책 : [클릭: 교재 다운받기]


for( i= 1; i<= 10; i+= 1 ) {
  for( j= 1; j<= 5; j+= 1 ) {
    item = i+(j-1)*10;
    cube( i, j, 0 );
  }
}


===== (순차구조) doit 소마큐브  ====


doit(" s4l su4r ");
item = 5;
doit(" ss lu ");
item = 6;
doit(" 3s r ");
item = 7;
doit(" sd sl ");



===== (반복구조) 치환문자와 for  =====


item = 8;
for( i= 1; i<= 4; i+= 1 ) {
  doit(" s4l su4r ");
}
item = 9;
A = ' s4l s 4r  ';
doit(" 2A ");


===== (선택구조) 조건수식과 if =====


beginxyz();
if(  x > 0  ){
  return 0;
}



======== (AI수학) 행렬과 데이터 =====


행렬 = [
[0,0,1,1,0,0],
[0,1,0,0,1,0],
[1,1,1,1,1,1],
[1,0,0,0,0,1],
[1,0,0,0,0,1] ];
dovt( 행렬 );
// 행렬벡터 표현
item = 43;
map  = [
'001100',
'010010',
'111111',
'100001',
'100001' ];
dovt( map );


========== 미로 게임 코딩 ==========


item = 8;
cubeset(7,7,1 , 6);
cubeset(7,7,2 , 6);
cube(1,12,1,0);
cube(1,12,2,0);
// item=0 통로를 만들자
미로 = [[2, 2, 2, 2, 2, 0, 2, 2, 0, 2, 2],
       [0, 0, 0, 0, 2, 0, 2, 0, 0, 0, 2],
       [2, 2, 2, 2, 2, 0, 2, 0, 2, 2, 2],
       [2, 0, 0, 0, 2, 0, 2, 0, 2, 0, 2],
       [0, 2, 2, 2, 2, 2, 2, 0, 0, 2, 2],
       [2, 2, 0, 0, 0, 0, 0, 2, 2, 0, 2],
       [2, 0, 2, 2, 2, 2, 2, 0, 2, 0, 2],
       [2, 0, 2, 0, 0, 0, 2, 2, 2, 0, 2],
       [2, 0, 2, 2, 2, 0, 0, 0, 2, 2, 2],
       [2, 0, 2, 0, 0, 2, 2, 0, 2, 0, 2],
       [2, 2, 2, 2, 2, 2, 0, 2, 2, 0, 2]];
goto( 1, 12, 1 );
item = 0;
dovt( 미로 );
cube(10,1,1, 0);
cube(10,1,2, 0);
cube(7,7,2, 43);



======== (AI수학) 함수와 변수 =======



function 나무(a,b,c) {
item = 2;
cubeset( a, b, c  , 0, 0, 3 );
item = 43;
cubeset( a, b, c+3  , 1, 0, 1 );
cubeset( a, b, c+3  , 0, 1, -1 );
}
// [실행톡] 반복해서 누르세요
for( i=1; i<=10; i+=1 ) {
  x = random(10);
  y = random(60);
  나무(x,y,1);
}


======================================





===== (준비) doit 과 dovt ====


doit( "ssusu L sususu : ");
item = 7;
dovt( ' 12345  > 6789 : ');

===== (목표) 점프대 게임 =====


goto( -6, -2, -13 );
A = ' s4l s 4r  ';
doit(" 2A ");
B = ' s4l ds 4r  ';
item = 45;
doit(" 15B ");
beginxyz();
// return 0;


===== doit 계단 만들기 =====


item = 9;
doit(" s4l su4r ");
doit(" s4l su4r ");
doit(" s4l su4r ");
doit(" s4l su4r ");
item = 6;
doit(" s4l s 4r ");
doit(" s4l s 4r ");


======= 코딩수학 (치환) ======


B = ' s4l su4r ' ;
A = ' s4l s 4r ';
item = 9;
doit(" 4B ");
item = 6;
doit(" 2A ");
doit(" 10B ");


====== dovt 계단 만들기 ======

dovt( ' 12345  < 6789 : ' ) ;
item = 4;
dovt( ' 12345  5<5  6789 : ' ) ;
item = 5;
dovt( ' 12345  55<55  6789 : ' ) ;
item = 6;
dovt( ' 12345  555<555  6789 : ' ) ;



======  쌓기나무 코딩 (행렬벡터) =====


goto( 0, 5, 1 );
dovt( '001100 :' );
dovt( '010010 :' );
dovt( '111111 :' );
dovt( '100001 :' );
dovt( '100001::' );
// 행렬표현
item = 43;
map =[
'001100',
'010010',
'111111',
'100001',
'100001' ];
dovt( map );


============ 성탑 코딩 =================

dovt(' 23232: 30003: 20002: 30003: 23232: ');
goto( 0, 1, 1 );
item = 46;
dovt(' 23232 > 3232 > 3232 > 3232 ');

============ 성탑 코딩 =================

dovt(' 23232: 30003: 20002: 30003: 23232: ');
goto( 0, 1, 1 );
item = 46;
map =[
'23232',
'30003',
'20002',
'30003',
'23232' ];
dovt( map );

=========================================

item = 17;
dovt(' 6868 < 6868< ');
dovt(' 6868 < 6868< ');
map = [
'86868',
'60006',
'80008',
'60006',
'86868' ];
goto( 0, 15, 1 );
item = 43;
dovt( map );


============  공룡 map =================









======= 알고리즘 코딩 (반복구조) ========





B = ' s4l su4r ' ;
A = ' s4l s 4r ' ;
item = 9;
doit(" 4B ");
item = 6;
doit(" 2A ");
doit(" L sss ");
item = 9;
doit(" 4B ");
item = 6;
doit(" 2A L 3s ");


==================================


B = ' s4l su4r ' ;
A = ' s4l s 4r ' ;
for( i= 1; i<= 10; i+= 1 ) {
  item = 9;
  doit(" 4B ");
  item = 6;
  doit(" 2A ");
  doit(" L sss ");
}



===== 지하세계 계단게임 =======



item = 9;
hitem = 6;
A = ' s4l su4r ';
B = ' s4l s 4r ';
C = ' L sss ';
D = ' tttt R ';
doit(" 4A  2B ");
doit(" C ");
doit(" 4A  2B ");
doit(" D ");
doit(" 4A  2B ");
doit(" C ");


===============================


goto( -9, -2, -12 );
item = 9;
hitem = 6;
A = ' s4l su4r ';
B = ' s4l s 4r ';
C = ' L sss ';
D = ' tttt R ';
for( i= 1; i<= 6; i+= 1 ) {
  doit(" 4A h 2B ");
  doit(" C ");
  doit(" 4A h 2B ");
  doit(" D ");
  doit(" 4A h 2B ");
  doit(" C ");
}
item = 0;
cubeset( 6, 11, 0, 4, 2);


===========================




==== (준비) doisxyz 와 doit  ====


doitsxyz();
item = 7;
doit(" SSS X SSS Y S ZZZZ S  ");

========== doitsxyz 명령 ========


doitsxyz();
item = 7;
doit(" 5SX 5SX 5SX 5SX ");
goto( 10, -1, 1 );
item = 17;
dovt(' 6868 < 6868< ');
dovt(' 6868 < 6868< ');


===== (목표) 만리장성 성탑 ======

doitsxyz();
doit(" 5SX 5SX 5SX 5SX ");
item = 17;
goto( 10, -1, 1 );
dovt(' 6868 < 6868< ');
dovt(' 6868 < 6868< ');
// stop ;
item = 7;
goto( -2, 0, 1 );
doit(" LL 20Z ");



=====(최종목표) 만리장성 성탑 =====


doitsxyz();
goto( 0, 0, 1 );
doit(" 5SX 5SX 5SX 5SX ");
item = 17;
goto( 10, -2, 1 );
dovt(' 6868 < 6868< ');
dovt(' 6868 < 6868< ');
item = 37;
cubeset( 12, 0, 9, 3, 3, 3 );
item = 0;
cubeset( 12, 2, 3  , 1, 3, 2 );
cubeset( 10, 0, 3  , 0, 1, -2 );
// stop ;
item = 7;
goto( -2, 0, 1 );
doit(" LL 20Z ");
item = 17;
cubeset( -20, 0, 10  , 3, 3, 9 );
item = 0;
cubeset( -20, 0, 5  , 2, 2, 13 );
goto(-20, 0, 20);


========= cubeset 준비 ========

dovt(' 12321: 12321: 12321: 12321: 12321: ');
item = 43;
cubeset( 3, -1, 1 , 2, 2, 2 );


====== cubeset 성탑 지붕 ======


item=17;
dovt(' 6868 < 6868< ');
dovt(' 6868 < 6868< ');
item = 0;
cubeset( 2, 1, 1  , 1, 0, 2 );
cubeset( 0, 3, 1  , 0, 1, 2 );
item = 7;
cubeset( 2, 3, 9  , 3, 3, 3 );



========= cubeset 준비 ========

dovt(' 11111: 22222: 33333: 22222: 11111: ');
item = 43;
cubeset( 3, -1, 1 , 2, 2, -2 );


========== 음수 사용 =========


item = 46;
cubeset( 9, 9, 1  , 3, 8, 6 );
cubeset( 9, 9, 1  , 8, 3, -6 );
item = 0;
cubeset( 9, 9, 1  , 1, 8, 3 );
cubeset( 9, 9, 1  , 8, 1, -3 );
cube( 9, 1, 7, 49 );



====== cubeset 나무를 심자 ====


item = 2;
cubeset( 1, 1, 1  , 0, 0, 3 );
item = 43;
cubeset( 1, 1, 4  , 1, 0, 1 );
cubeset( 1, 1, 4  , 0, 1, -1 );



======== 만리장성과 나무 ======


doitsxyz();
goto( 0, 0, 1 );
doit(" 5SX 5SX 5SX 5SX ");
item = 17;
goto( 10, -2, 1 );
dovt(' 6868 < 6868< ');
dovt(' 6868 < 6868< ');
item = 7;
goto( -2, 0, 1 );
doit(" LL 20Z ");
// cubeset 나무를 심자
item = 2;
cubeset( 1, 2, 4  , 0, 0, 3 );
item = 43;
cubeset( 1, 2, 7 , 1, 0, 1 );
cubeset( 1, 2, 7 , 0, 1, -1 );



=====  나무심기 (20그루 실행톡) =====


// 실행톡 누르세요
function tree(a,b,c) {
item = 12;
cubeset( a, b, c  , 0, 0, 3 );
item = 43;
cubeset( a, b, c+3  , 1, 0, 1 );
cubeset( a, b, c+3  , 0, 1, -1 );
}
for( i=1; i<=20; i+=1 ) {
  x = random(40);
  y = random(40);
  tree(-x-5,y+10,1);
}



===================================


item = 2;
cubeset( 1, 1, 1  , 0, 0, 3 );
map = [
'010',
'121',
'010' ];
goto( -1, 2, 4 );
item = 43;
dovt( map );


===============================



doitsxyz();
item = 16;
goto( 0, 3, 1 );
doit(" 5SX 5SX 5SX 5SX ");
goto( 10, 1, 1 );
item = 17;
cubeset( 12, 3, 5, 2, 2, 5 );
item = 47;
cubeset( 12, 16, 5, 2, 2, -5 );


================================


doitsxyz();
goto( 0, 0, 1 );
doit(" 5SX 5SX 5SX 5SX ");
item = 17;
goto( 10, -2, 1 );
dovt(' 6868 < 6868< ');
dovt(' 6868 < 6868< ');
item = 37;
cubeset( 12, 0, 9, 3, 3, 3 );
item = 0;
cubeset( 12, 2, 3  , 1, 3, 2 );
cubeset( 10, 0, 3  , 0, 1, -2 );


========== 산에 성을 올리자 ======

doitsxyz();
item = 7;
goto( -2, 0, 1 );
doit(" LL 20Z ");
item = 17;
cubeset( -20, 0, 10  , 3, 3, 9 );
item = 0;
cubeset( -20, 0, 5  , 2, 2, 13 );
goto(-20, 0, 20);


====== 알고리즘 (변수코딩) ======


for( i= 1; i<= 5; i+= 1 ) {
  item = i;
  cubeset( 5, 5, i  ,  5-i );
}



===================================


doitsxyz();
call("A","5SX 5SY 2SX");
item = 7;
doit(" 4A ");
goto( 10, -1, 1 );
item = 17;
dovt(' 6868 < 6868< ');
dovt(' 6868 < 6868< ');
item = 47;
cubeset( 12, 1, 9, 3, 3, 3 );


========  반복치환  ========


doitsxyz();
call("C","5SX");
call("B","C5SY");
call("A","BSSX");
item=7;
doit(" 4A ");

===========================






======== (준비) dovt 미로 =========


goto( 0, 7, 1 );
dovt( '2220222 :' );
dovt( '2020022 :' );
dovt( '2002002 :' );
dovt( '2200202 :' );
dovt( '2220202 :' );
dovt( '2000002 :' );
dovt( '2022222 :' );


====== 행렬 표현을 통한 미로 =====


map = [
'2220222',
'2020022',
'2002002',
'2200202',
'2220202',
'2000002',
'2022222'];
goto( 0, 7, 1 );
item = 43;
dovt( map );


===== (dovt 미로) 나무를 심자 ======


map = [
'2220222',
'2020022',
'2002002',
'2200202',
'2220202',
'2000002',
'2022222'];
goto( 0, 7, 1 );
item = 13;
dovt( map );
// 나무를 심자
item = 2;
cubeset( 7, 7, 1  , 0, 0, 3 );
item = 43;
cubeset( 7, 7, 4  , 1, 0, 1 );
cubeset( 7, 7, 4  , 0, 1, -1 );




===== (준비) cubeset 피라미드 =====


cubeset( 5, 5, 1  , 4 );
cubeset( 5, 5, 2  , 3 );
cubeset( 5, 5, 3  , 2 );
cubeset( 5, 5, 4  , 1 );
cubeset( 5, 5, 5  , 0 );


======= for 명령 변수 활용  ========


for( i= 1; i<= 5; i+= 1 ) {
  cubeset( 5, 5, i  , 5-i );
}



===== cubeset 피라미드 만들기 ======


item = 16;
for( i= 1; i<= 10; i+= 1 ) {
  cubeset( 10, 10, i  , 10-i );
}
item = 0;
for( i= 1; i<= 9; i+= 1 ) {
  cubeset( 10, 10, i  , 9-i );
}
cubeset( 2, 10, 1 ,  1, 1, 1 );
item = 9;
goto( 5, 10, 1 );
A = 'su';
doit(" s 2A lssrrttls ");
doit(" s 3A ");
cube( 12, 10, 8, 0 );
cube( 13, 10, 7, 0 );




======== dovt 피라미드 미로 =======


map = [
'2220222',
'2020022',
'2002002',
'2200202',
'2220202',
'2000002',
'2022222'];
goto( 1, 8, 1 );
item = 43;
dovt( map );
item=16;
dovt( '10111111<11111111<' );
dovt( '11101111<11111111<' );
cubeset( 5, 5, 3 , 2 );



=========== dovt 피라미드 =========

item = 16;
goto( 0, 9, 1 );
dovt(' 111111111: 122222221: ');
dovt(' 123333321: 123444321: ');
dovt(' 123454321: 123444321: ');
dovt(' 123333321: 122222221: ');
dovt(' 111111111 : ');


========= 피라미드 미로코딩 =======

item = 16;
goto(0, 9, 1);
dovt(' 111011111 : ');
dovt(' 122022221 : ');
dovt(' 122000021 : ');
dovt(' 120022021 : ');
dovt(' 120200221 : ');
dovt(' 120020221 : ');
dovt(' 120000021 : ');
dovt(' 122202221 : ');
dovt(' 111101111 : ');
goto(2, 7, 3);
dovt(' 11111 : ');
dovt(' 12221 : ');
dovt(' 12321 : ');
dovt(' 12221 : ');
dovt(' 11111 : ');


======= 게임코딩 교재 코드 =======

map = [
'2220222',
'2020022',
'2002002',
'2200202',
'2220202',
'2000002',
'2022222'];
for( i= 0; i<= 6; i+= 1 ) {
  for( j= 0; j<= 6; j+= 1 ) {
    if( map[i][j] == 2 ) {
    cube( j+1, 7-i, 1 ,  44 )}
    }
}


========= doit 피라미드 ===========


item = 16;
doit(" 8sL8sL 8sL8sL slu ");
doit(" 6sL6sL 6sL6sL slu ");
doit(" 4sL4sL 4sL4sL slu ");
doit(" 2sL2sL 2sL2sL slu ");



=================================

goto( 0, 1, 1 );
item = 5;
for( i= 1; i< 6; i+= 1 ) {
  doit(" s10l s10r");
}
goto( 0, 1, 1 );
item = 9;
for( i= 1; i<= 4; i+= 1 ) {
  dovt('3333333333<');
}
goto( 4, 1, 4 );
doit(" suuu Ls ");
item = 0;
doit(" u ");





=============  피타고라스 정리와 토러스 ========



beginxyz();;
R = 30;
r = 10;
d = Math.sqrt(x*x+y*y);
D = (d-R)*(d-R) +z*z -r*r;
if( Math.abs(D) < 22 && y >0 ) {
    return 16;
}



============ won 과 solid == 콜로세움 ============


beginxyz();;
size = 35;
if(z>0 && z<10)  {
if( x*x+y*y < size*size ) {
   if( won(0,0,1,size-10) ) { return 0 ;}
   if( won(0,0,2,size-8) ) { return 0 ;}
   if( won(0,0,3,size-6) ) { return 0 ;}
   if( won(0,0,4,size-4) ) { return 0 ;}
}
if( won(0,0,1,size-2)  && z<10 )  {return 16 ;}
if( solid(0,-size+z,z,2) && z<4 )  {return 9 ;}
}


========= won 과 solid == 파르테논 신전 ===========


beginxyz();;
if(z>0 && z<=25) {
for(n=0; n<5; n++) {
  if( won(16-8*n,29,1,1) && z<15) {return 16;}
  if( won(16-8*n,-29,1,1) && z<15) {return 16;}
}
for(n=0; n<6; n++) {
  if( won(-16,20-8*n,1,1) && z<15) {return 16;}
  if( won(16,20-8*n,1,1) && z<15) {return 16;}
}
if( solid(0,0,15,15-2*(z-15),31) ) {return 40;}
if( solid(0,0,15,19-2*(z-15),31) ) {return 16;}
if( solid(0,0,25,0,31) ) {return 16;}
}



==================================================





========== 행렬과 벡터 (알파벳) ==========

a =[
[0, 0, 1, 1, 0, 0] ,
[0, 1, 0, 0, 1, 0] ,
[1, 1, 1, 1, 1, 1] ,
[1, 0, 0, 0, 0, 1] ,
[1, 0, 0, 0, 0, 1] ];
goto( 0, 5, 1 );
dovt( a );
dovt(':');
// 간단한 행렬표현
map =[
'001100',
'010010',
'111111',
'100001',
'100001' ];
dovt( map );
b=[
'011100',
'010010',
'011100',
'010010',
'011100' ];
dovt( b );


================ 행렬코딩 ==================

map =[
'001100',
'010010',
'111111',
'100001',
'100001' ];
dovt( map[0] );
dovt(':');
dovt( map[2][0] );


=============================================


map =[
'001100',
'010010',
'111111',
'100001',
'100001' ];
// dovt( map )
for( i= 0; i<= 4; i+= 1 ) {
    goto( 0, 5-i, 1 );
    dovt( map[i] );
}


=============== 함수와 변수 ===============

function tree(a,b,c) {
item = 2;
cubeset( a, b, c  , 0, 0, 3 );
item = 43;
cubeset( a, b, c+3  , 1, 0, 1 );
cubeset( a, b, c+3  , 0, 1, -1 );
}
for( i=1; i<=10; i+=1 ) {
  x = random(50);
  y = random(10);
  tree(x,y,1);
}


============================================






=========== for 반복명령과 변수 사용 ==========


for( i= 1; i<= 10; i+= 1 ) {
  for( j= 1; j<= 5; j+= 1 ) {
    item = i+(j-1)*10;
    cube( i, j, 0 );
  }
}

=== 인공지능수학 손실함수 == 그리이스 산토리니  ===


beginxyz();;
x=0.1*x; y=0.1*y; z=0.1*z;
function E(a,b) { return exp(-a*a -b*b) ;}
if( abs( (y*y-0.5*(x+7)*(x+7)+7)*E(0.9*(x+3),0.5*y) +
         (x*x-0.5*(y+7)*(y+7)+7)*E(0.9*(y+3),0.5*x) +
         exp(-(x-1)*(x-1)-(y-1)*(y-1)) - z ) < 0.2 ) {
  return 54+5*z;
}
M=0.5*(x-3)*(x-3);
function f(a,b) { return 0.7*a*a + 1.5*b*b ;}
if( integral(2,M+1.6,0.3,4,-M+2.4,f(x-3,y-2)+0.4 )) {
  return 8;
}
if( (abs(M +1.6-y) < 0.1 || abs(-M+2.4-y) < 0.1) &&
     abs(z-0.3)<0.1 ) {  return  6;
}
return 0;