• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            糯米

            TI DaVinci, gstreamer, ffmpeg
            隨筆 - 167, 文章 - 0, 評論 - 47, 引用 - 0
            數(shù)據(jù)加載中……

            lisp loop,dotimes,dolist,do

            Simple LOOP loops forever...

            ? (loop
                (print "Look, I'm looping!"))
            "Look, I'm looping!" 
            "Look, I'm looping!" 
            "Look, I'm looping!" 
            "Look, I'm looping!" 
            "Look, I'm looping!" 
            "Look, I'm looping!" 
            "Look, I'm looping!" 
            "Look, I'm looping!" 
            ... and so on, until you interrupt execution... 
            Aborted
            ? 

            ? (let ((n 0))
                (loop
                  (when (> n 10) (return))
                  (print n) (prin1 (* n n))
                  (incf n)))
            0 0
            1 1
            2 4
            3 9
            4 16
            5 25
            6 36
            7 49
            8 64
            9 81
            10 100
            NIL
            ?


            Use DOTIMES for a counted loop

            ? (dotimes (n 11)
                (print n) (prin1 (* n n)))
            0 0
            1 1
            2 4
            3 9
            4 16
            5 25
            6 36
            7 49
            8 64
            9 81
            10 100
            NIL
            ?


            Use DOLIST to process elements of a list

            ? (dolist (item '(1 2 4 5 9 17 25))
                (format t "~&~D is~:[n't~;~] a perfect square.~%" item (integerp (sqrt item))))
            1 is a perfect square.
            2 isn't a perfect square.
            4 is a perfect square.
            5 isn't a perfect square.
            9 is a perfect square.
            17 isn't a perfect square.
            25 is a perfect square.
            NIL


            ? (dolist (item `(1 foo "Hello" 79.3 2/3 ,#'abs))
                (format t "~&~S is a ~A~%" item (type-of item)))
            1 is a FIXNUM
            FOO is a SYMBOL
            "Hello" is a (SIMPLE-BASE-STRING 5)
            79.3 is a DOUBLE-FLOAT
            2/3 is a RATIO
            #<Compiled-function ABS #x1E9CC3E> is a FUNCTION
            NIL
            ? 

            DO is tricky, but powerful

            ? (do ((which 1 (1+ which))
                   (list '(foo bar baz qux) (rest list)))
                  ((null list) 'done)
                (format t "~&Item ~D is ~S.~%" which (first list)))
            Item 1 is FOO.
            Item 2 is BAR.
            Item 3 is BAZ.
            Item 4 is QUX.
            DONE
            ? 
            
            (do ((var1 init1 step1)
                 (var2 init2 step2)
                 ...)
                (end-test result)
              statement1
              ...)
            
            var1       = which
            init1      = 1
            step1      = (1+ which)
            var2       = list
            init2      = '(foo bar baz qux)
            step2      = (rest list)
            end-test   = (null list)
            result     = 'done
            statement1 = (format t "~&Item ~D is ~S.~%" which (first list))
            



            posted on 2011-08-22 11:05 糯米 閱讀(534) 評論(0)  編輯 收藏 引用 所屬分類: Lisp

            久久发布国产伦子伦精品| 亚洲欧美国产精品专区久久| 欧美大香线蕉线伊人久久| 久久99精品久久久久久久久久| 97久久久精品综合88久久| 99久久国产综合精品五月天喷水 | 久久久久久久综合日本| 久久人妻少妇嫩草AV蜜桃| 色偷偷88888欧美精品久久久| 亚洲国产精品久久久久婷婷软件| 久久综合给合综合久久| 国内精品伊人久久久久AV影院| 国产午夜精品久久久久九九电影| 亚洲精品乱码久久久久久蜜桃图片| 国产Av激情久久无码天堂| 欧洲国产伦久久久久久久| 久久超乳爆乳中文字幕| 国产精品久久婷婷六月丁香| AV无码久久久久不卡网站下载| 午夜精品久久久久| 久久精品国产91久久综合麻豆自制 | 国产婷婷成人久久Av免费高清| 久久综合给合综合久久| 亚洲嫩草影院久久精品| 欧洲人妻丰满av无码久久不卡| 色综合合久久天天给综看| 91亚洲国产成人久久精品网址| 国产高潮国产高潮久久久| 亚洲中文字幕无码久久精品1| 色99久久久久高潮综合影院| 久久精品18| 久久国产视屏| 国产ww久久久久久久久久| 久久亚洲国产欧洲精品一| 国产精品久久久久无码av| 久久人人妻人人爽人人爽| 99久久国产精品免费一区二区 | 久久精品国产精品国产精品污| 久久精品亚洲AV久久久无码| 午夜视频久久久久一区| 久久亚洲天堂|