2011年10月1期プログラム【タートル】LOGO【パパート】 TOP カテ一覧 スレ一覧 削除依頼
・ 次のスレ
クラウド技術を語るスレ
p並の知識しかない俺をプログラマーに育てるスレ
EXE作れない糞言語を晒しあげるスレ
【文部科学省】プログラミン【おえかき】


【タートル】LOGO【パパート】


1 :10/10/10 〜 最終レス :11/11/22
亀を使ってプログラミングする、ユニークな〔LOGO〕について語りましょう。(´・ω・`)

2 :
■LOGOの説明
 LOGO - Wikipedia
  ttp://ja.wikipedia.org/wiki/LOGO
■関連スレ?
 亀(※DAT落ち)
  http://hibari.2ch.net/test/read.cgi/tech/1281337812/

3 :
このスレッドは天才pンジー「アイちゃん」が
言語訓練のために立てたものです。
アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。
                  京都大学霊長類研究所

4 :
いえいえ、真面目なスレですよ。

5 :
今まともに動く処理系あるの?

6 :
まぁ、元々教育用だからな。

7 :
小学校の時パソコン部に入ってこれですごろくゲーム作った
15年くらい前

8 :
LOGOってlispの親戚なんだな
初めて知った

9 :
関数型言語か

10 :
亀好きにはたまらない(´ー`)

11 :
Appleのハイパーカードのように、
見た目に反して実はかなりのものが作れるのかな?

12 :
30年近く前に pc-6001 で動くのを触った覚えがある

13 :
Macでも使えるお(´・ω・`)

14 :
ACS Logo

15 :
亀のように歩むことは本質的なことなのかな。

16 :
だお(´・ω・`)

17 :
このスレは何なんだよう!
サンプルプログラムの一つもなくて

18 :
なぜか英語の辞書に載ってるんだよな。PASCALは人物のことしか載ってないのに

19 :
お前らドラゴン曲線を描くLogoプログラムをちょっと書いてみろ

20 :
>>19
書いてみろだと?てめぇが書いてみろよ!

21 :
>>20
逆ギレすんなよ
書けないからってw

22 :
ヒント: しゃぶれよ

23 :
しゃぶりたい

24 :
亀大好き

25 :

26 :
やってみようかな

27 :
亀を時計回りに1週させる
Forward 100
Right 100
Forward 100
Right 100
Forward 100
Right 100
Forward 100

28 :
亀を反時計回り1週させる
Forward 100
Left 100
Forward 100
Left 100
Forward 100
Left 100
Forward 100

29 :
円運動はどうする?

30 :
どうするんだろ?

31 :
128角形を描くに決まってるじゃん。

32 :
微分的w

33 :
#一筆描き
from turtle import *
import time
from random import seed, random
def turn(d):
  if d: left(90)
  else: right(90)
def draw(n, d, s):
  '''n:depth, d:direction (True:left, False:right), s:step'''
  if n == 0:
    return
  elif (n % 2):
    draw(n - 1, ~d, s); forward(s); turn(d)
    draw(n - 1, d, s); forward(s); draw(n - 1, d, s)
    turn(d); forward(s); draw(n - 1, ~d, s)
  else:
    color((.25 + random() / 2.0, .25 + random() / 2.0, .25 + random() / 2.0))
    draw(n - 1, ~d, s); turn(d); forward(s); draw(n - 1, d, s)
    turn(~d); forward(s); turn(~d)
    draw(n - 1, d, s); forward(s); turn(d); draw(n - 1, ~d, s)
if __name__ == '__main__':
  # demo(); time.sleep(1); goto((0, 0)); clear()
  seed(None)
  for n in xrange(1, 13):
    tracer(True if n < 5 else False)
    up(); goto((-30 * n, -30 * n)); write('depth=%d' % n, True); down();
    if n % 2: left(90)
    draw(n, False, (24 / n) if n < 8 else 2 if n < 9 else 1);
    time.sleep(3); reset()

34 :
#非再帰のドラゴン曲線
from turtle import *
import time
from random import seed, random
def edges(n):
  e = b = 0
  for i in xrange(32):
    j = 1 if n & 2 ** (31 - i) else 0
    if j != b:
      e += 1
      b = j
  return e
def draw(n, d, s):
  '''n:length, d:direction, s:step'''
  for i in xrange(n):
    color((.25 + random() / 2.0, .25 + random() / 2.0, .25 + random() / 2.0))
    e = edges(i) % 4
    right(((4 + e - d) % 4) * 90)
    turn(d, e)
    d = e
    forward(s)
if __name__ == '__main__':
  # demo(); time.sleep(1); goto((0, 0)); clear()
  seed(None)
  for n in xrange(16):
    tracer(True if n < 5 else False)
    up(); goto((0, 0)); write('length=%d' % 2 ** n, True); down();
    draw(2 ** n, 0, (100 / (n + 1)) if n < 12 else 2);
    time.sleep(3); reset()

35 :
間違えた
    turn(d, e)
の一行削除です

36 :
>>33,34
LOGOじゃないし....。そんな汚い言語じゃなくてLOGOのコードが見たいんだよ!!

37 :
本質は同じ
エロいひとにはそれが判らんとです

38 :
#ドラゴン曲線(再帰) 丸め誤差のモアレっぽいの出てるけど気にしない
from turtle import *
import math
import time
def draw(n, q, p):
  if n == 0:
    up(); goto((int(p[0]), int(p[1]))); down(); goto((int(q[0]), int(q[1])))
  else:
    x1, y1 = p
    x2, y2 = q
    dx, dy = x2 - x1, y2 - y1
    x0, y0 = (x1 + x2) / 2.0, (y1 + y2) / 2.0
    if dy == 0:
      s = (x0, y1 + dx / 2.0)
    else:
      d = dx / float(dy)
      r = math.sqrt(((y1 - y0) ** 2 + (x1 - x0) ** 2) / (1 + d ** 2))
      if dy > 0: r = -r
      s = (x0 + r, y0 - r * d)
    draw(n - 1, s, p)
    draw(n - 1, s, q)
if __name__ == '__main__':
  for n in xrange(20):
    q = (128, 128); p = (-128, -128)
    tracer(False); up(); goto(p); write('depth=%d' % n, True); down();
    draw(n, q, p); time.sleep(3); reset()

39 :
そもそも日本語だったような気がするんだが

40 :
それはドリトルでは?

41 :
LOGOにもある

42 :
亀大好きさね

43 :

44 :

45 :
亀という文字は一筆書きが可能ですか?

46 :
無理

47 :
グラフ理論やね

48 :
開発キット欲しい

49 :
import turtle
t = turtle.Turtle()
a = [(-14, 30), (24, 9), (-16, 6), (10, 6), (2, 4), (-14, 8), (17, 6),
(33, 2), (33, 2), (32, 1), (32, 1), (32, 1), (32, 4), (33, 4), (32, 2),
(32, 2), (32, 2), (-1, 2), (1, 4), (2, 5), (-15, 7), (30, 6), (-13, 3),
(13, 7), (33, 2), (33, 2), (-12, 2), (4, 8), (-16, 5), (10, 7), (33, 2),
(32, 1), (32, 1), (32, 1), (32, 2), (32, 2), (33, 3), (32, 3), (32, 2),
(32, 2), (-19, 7), (27, 2), (-27, 8), (2, 4), (2, 4), (-14, 8), (17, 6),
(33, 2), (33, 2), (32, 1), (32, 1), (32, 1), (32, 4), (33, 4), (32, 2),
(32, 2), (32, 2)]
for d in a:
  (p, q) = (t.down, d[0]) if d[0] > 0 else (t.up, -d[0])
  p(); t.left(q * 10); t.forward(d[1] * 10)

50 :

51 :
int main ( Turtle )

52 :

53 :
懐かしい
小竹向原

54 :
これって亀で線引く以外に何が出来るの

55 :
実装、ライブラリ次第で一応なんでもできるけど
線引く用途以外なら他の言語使うよろし

56 :
あなごるにlogoがはいった。
logoは、lispだった。

57 :
>>52
ハッアアアアアアアアアアアアアアアアア???????????????

ゴミが散らかってんじゃねえよ

58 :
2011年、Ruby,Perl,PHP,Pythonって並べたときにさ
ここで、Ruby以外を選ぶ奴ってマジでなんなんだろうな
放射性廃棄物のほうがマシ

59 :11/11/22
(´・ω・`)へえ
TOP カテ一覧 スレ一覧 削除依頼
・ 次のスレ
クラウド技術を語るスレ
p並の知識しかない俺をプログラマーに育てるスレ
EXE作れない糞言語を晒しあげるスレ
【文部科学省】プログラミン【おえかき】