Files
ornekler/konsol/fraktal/README.md
T
semihandClaude Opus 5.5 ed201188fb KabaLang örnekleri: konsol, masaüstü ve web için dokuz proje
Konsol: fraktal (paralel şeritli 24-bit Mandelbrot/Julia + yakınlaşma),
sudoku (geri izlemeli, canlı animasyon), fatura (JSON → terminal tablosu,
PDF ve Excel).
Masaüstü: hesap makinesi (işlem önceliği, canlı bağlama), odak (Pomodoro),
parola atölyesi (entropi ölçer, SHA-256).
Web: pano (Kanban REST API + SQLite), kisalt (302 yönlendirme, SVG
istatistik), anket (adres başına tek oy, sunucuda çizilen grafik).

Hepsi `kabalang calistir` ile derlenip çalışır; web uygulamaları yalnız
127.0.0.1'i dinler, SQL parametre bağlamalı, HTML çıktısı kaçırılır.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-10-02 22:31:40 +03:00

2.0 KiB

Fraktal — terminalde 24 bit renkli Mandelbrot ve Julia

Fraktal

Terminali bir tuvale çevirir. Her karakter hücresi iki piksel taşır: üst yarım blok ▀ ön plan rengiyle üst pikseli, arka plan rengiyle alt pikseli çizer. 100 sütunluk bir terminal böylece 100 × 72 piksellik bir görüntü olur.

kabalang calistir fraktal.kbl                   # Mandelbrot kümesi
kabalang calistir fraktal.kbl -- --tur julia    # Julia kümesi (c = -0.8 + 0.156i)
kabalang calistir fraktal.kbl -- --yakinlas     # denizatı vadisine 120 karelik dalış
kabalang calistir fraktal.kbl -- -s 160 -r 44   # geniş terminal: 160 sütun × 44 satır

KabaLang'ın gösterdikleri

Özellik Nerede
birlikte: + baslat Görüntü dört şeride bölünür, şeritler aynı anda hesaplanır ve sırası korunarak birleştirilir (kare_ciz)
sayilabilir Kume.MANDELBROT / Kume.JULIA — kapalı değer kümesi
yapi Kamera (merkez, görüş genişliği, yineleme sınırı) ve palet Durakları
f-string biçimi {kam.merkez_x:.5f}{kam.merkez_y:+.5f}i — işaretli ve hassasiyetli sayı
KomutSatiri --tur, --yakinlas, --sutun/--satir ve kendiliğinden üretilen --yardim
Tipli imzalar fonksiyon kacis(zx: ondalik, ...) -> ondalik

Nasıl çalışır

  • Kaçış süresi: z ← z² + c yinelenir; |z| 2'yi aşarsa nokta kümeden kaçmıştır. Ne kadar çabuk kaçtığı rengini belirler, hiç kaçmayan nokta kümenin içidir (lacivert).
  • Palet: altı renk durağından (derin uzay → gece mavisi → mavi → camgöbeği → lavanta → beyaz) bir kez 256 tonluk bir liste üretilir.
  • Derin yakınlaşma: renk, yineleme sayısının üçgen dalgasıdır; böylece 20 yinelemede de 700 yinelemede de paletin tamamı kullanılır.

Bir kare (7.200 piksel, 120 yineleme sınırı) birkaç milisaniyede hesaplanır; süre başlık satırında yazar.