Bilgisayar Kavramlarıwww.bilgisayarkavramlari.com |
Orijinal ismi Sierpiński olan Polonyalı matematikçi tarafından 1915 yılında tanımlanan bu üçgen, yapı olarak özyineli (recursive) iç üçgenlerden oluşur. Kısaca üçgenin her parçası, üç adet alt üçgen oluşturacak şekilde bölünür. Örneğin aşağıdaki eşkenar üçgeni ele alalım: Bu üçgenin üç köşesinde üç ayrı üçgen oluşturarak işlemimize başlayabiliriz. Yukarıdaki şekilde görüldüğü üzere 3 adet siyah eşkenar üçgen [...]
Soru: Bir listeyi alıp hızlı sıralama algoritmasına göre (quick sort algorithm) sıralayan kodu yazınız. Çözen : Şadi Evren ŞEKER Çözüm: Hızlı sıralama algoritması hatırlanacağı üzere parçala fethet (divide and conquere) yaklaşımı kullanmaktadır. Buna göre problem önce iki parçaya bölünür ve her iki parça kendi içerisinde sorun çözülene kadar parçalanır. En sonunda tek eleman kalınca problem [...]
Soru: Üç noktanın koordinatlarını alarak bu noktalardan geçen eğriyi bezier algoritması ile ekrana çizen kodu yazınız. Çözen : Şadi Evren ŞEKER Çözüm: Bezier eğrisini çizebilmek için ikinci dereceden bir denkleme ihtiyaç duyulur. Burada denklemin ikinci derece olmasının sebebi 3 nokta ile çizim yapılmasının istenmesidir. Öncelikle programımızda kullanacağımız basit temel fonksiyonları kodlayalım: İki nokta verildiğinde bu [...]
Soru: Bir adet ikili arama ağacı (binary search tree) oluşturunuz ve bu ağaç üzerinde ssn numarası ve bir isim tutunuz. Bu bilgileri ssn numarasına göre ağaca yerleştirin ve yerleşen bu verileri içsıraya göre (inorder) dolaşan bir kod yazınız. Bu kodu kullanarak ağaçta arama yapan bir fonksiyon yazınız. Çözen : Şadi Evren ŞEKER Çözüm : Bu [...]
Soru: Bir öğrencinin okul numarası, ve aldığı dersler bulunur. Bir dersin ise kodu bulunur. Öğrencinin aldığı her dersin bir kodu ve öğrencinin bu dersten aldığı not bulunur. Buna göre bir öğrenci tanımlandığında aşağıda verilen not tablosuna göre bu öğrencinin ortalamasını hesaplayan bir kod yazınız. Harf Notu (4 üzerinden) A 4 A- 3.7 B+ 3 B- [...]
Soru: Sırasıyla, ekrana üç adet kırmızı, sarı, yeşilden oluşan trafik ışıklarını çiziniz, ışıklardan birini söndüren fonksiyonu, ışıklardan birini yakan fonksiyonu, ışık değiştiren fonksiyonu ve sıradaki ışığı yakan fonksiyonu yazınız. Çözen : Şadi Evren ŞEKER Çözüm fonksiyonları: Öncelikle çizim yapacağımız için dr. Scheme üzerinde draw.ss teachpack’ini yüklememiz gerekiyor: Ardından poligonu çizim için değişkenlerimizi tanımlayalım: ;;6.2.1 (define [...]
Soru: Bir poligonu ve bir sayıyı parametre olarak alan, verilen sayı kadar poligonu büyüterek iç içe çizen kodu yazınız. Çözen : Şadi Evren ŞEKER Çözüm fonksiyonları: Öncelikle çizim yapacağımız için dr. Scheme üzerinde draw.ss teachpack’ini yüklememiz gerekiyor: Ardından poligonu çizim için tanımlı noktalardan tanımlayalım: (define a (make-posn 240 240)) (define b (make-posn 250 260)) (define [...]
Soru: Saat başına 12 dolar ödenen bir firmada çalışanların fazla mesailerini bir liste halinde alıp ödenecek miktarları liste olarak döndüren fonksiyonu yazınız. Çözen : Şadi Evren ŞEKER Çözüm fonksiyonları: (define (wage h) (* 12 h)) (define (hours->wages alon) (cond [(empty? alon) empty] [else (cons (wage (first alon)) (hours->wages (rest alon)))])) Çözüm çalıştırması: (hours->wages (list 20 [...]
Soru: Bir sayı listesindeki bütün elemanların değerlerini bir arttıran kodu yazınız. Çözen : Şadi Evren ŞEKER Çözüm fonksiyonu: (define (increment-list numbers)(cond [(empty? numbers) empty][else (cons (+ (first numbers) 1)(increment-list (rest numbers)))])) Çözüm çalıştırması: (increment-list (list 1 2 3 6 7 4 3)) Açıklama: Fonksiyonun ismi increment-list olarak tanımlanmış ve bir parametre alınmıştır. Buradaki parametre “numbers” [...]