Archive

Archive for the ‘Scheme’ Category

Çıkmaz Demeyin Şansınızı Deneyin

January 22nd, 2008 1 comment

Bu girdi Burdaki girdiden esinlenilerek yazıldı.

E madem pyton ile sayısal kuponu yapılıyor biz niye scheme ile yapmayalım bunu demi:)
Probleme göre kod bana çok uzun geldi. Belki ilerde optimize edebilirim. Ama şimdilik böyle oynayalım demi:)

(define (sayisal)
  (display "Oynamak istediginiz kolan sayisini giriniz: \n")
  (let ((kolon (read)))
    (do ((i 1 (+ i 1))) ((> i kolon))
      (let loop ((lst (list (+ (random 49) 1))) 
                   (sayi (+ 1 (random 49))))
        (if (= (length lst) 6)
            (printf "~a. kolon: ~a\n" i (sort lst < ))
            (if (member sayi lst)
                (loop lst (+ (random 49) 1))
                (loop (append lst (list sayi)) 
                       (+ (random 49) 1))))))))
(sayisal);burası kodun çalıştırılması için. 
;aslında define kısmı çıkartılarak buna gerek kalmamayabilir
;ama  ilerde belki başka birşey içinde kullanırım:)

DrScheme v372 Çıktı

December 29th, 2007 No comments

DrScheme LogoDrScheme v372 çıktı. Bu versiyonunda birçok hatanın düzeltildiği ve birkaç yeni özellik eklendiği belirtiliyor. Sanırım beni ençok etkileyen özellik kod tamamlama özelliği. Siz bir kod yazarken o size ekleyebileceğiniz konutları sıralıyor. Ancak bu özellik çok kullanışlı bir halde gelmiyor. Tamamlama istediğimiz zaman [ Ctrl / ] tuş kombinasyonunu kullanmamız gerekmekte. Bende [ Ctrl Shift 7 ] kombinasyonunun kullanılması gerekiyor.
Kod tamamlama
Ayrıca burdan indirebilirsiniz.

Alın size bir güzel kod:)

December 28th, 2007 No comments

Alın size bir güzel kod:) Benim hoşuma gitti eminim sizin hoşunuzada gidecek.

(define (goster str)
  (let loop ((str str))
    (if (equal? str "")
        (begin
          (sleep 0)
          (display ""))
        (begin
          (sleep 1/2)
          (display (string-ref str 0))
          (loop (substring str 1))))))
Categories: Programlama, Scheme Tags:

Scheme ile ekrana içi boş dikdörtgen bastırmak

December 20th, 2007 No comments
(define (kare x y)
  (do ((i 0 (+ i 1))) ((= i x))
    (newline)
    (do ((j 0 (+ j 1))) ((= j y))
      (if (or (= i 0) (= i (- x 1)))
          (display "*")
          (if (or (= j 0) (= j (- y 1)))
              (display "*")
              (display " "))))))

bu kod aşağıdaki gibi bir şekil oluşruracak

**********
*        *
*        *
*        *
*        *
*        *
*        *
*        *
*        *
**********

Ancak bu şekil pek hoş değil. Eğer display’in içini biraz düzenlersek çok dahahoş şekilerle karşılaşırız.

(define (kare x y)
  (do ((i 0 (+ i 1))) ((= i x))
    (newline)
    (do ((j 0 (+ j 1))) ((= j y))
      (if (or (= i 0) (= i (- x 1)))
          (display "* ")
          (if (or (= j 0) (= j (- y 1)))
              (display "* ")
              (display "  "))))))

Bu kod

* * * * * * * * * * 
*                 * 
*                 * 
*                 * 
*                 * 
*                 * 
*                 * 
*                 * 
*                 * 
* * * * * * * * * *

şeklini oluşturacaktır. Tabiki etkileşim penceresinde şekil daha düzgün çıkacaktır.

Categories: Programlama, Scheme Tags: