COMP 131 Programlamaya Giriş Kodlama Ödev Rehberi

Programlamaya giriş dersleri, bilgisayar bilimleri eğitiminin temel taşlarından biridir ve COMP 131 bu yolculuktaki ilk adımlardan birini oluşturur. Bu rehber, kodlama ödevlerinizde başarılı olmanız için gerekli tüm stratejileri, ipuçlarını ve pratik çözümleri içermektedir. Python programlama dili üzerinden ilerleyerek, temel kavramları ve uygulama tekniklerini detaylandıracağız.

1. Temel Programlama Kavramlarını Anlama

COMP 131 dersinin temelini oluşturan programlama kavramları:

  • Değişkenler ve Veri Tipleri: int, float, string, boolean
  • Operatörler: Aritmetik, karşılaştırma, mantıksal operatörler
  • Kontrol Yapıları: if-else, for ve while döngüleri
  • Fonksiyonlar: Parametreler, return değerleri, kapsam
  • Listeler ve Diziler: Temel veri yapıları ve işlemleri

2. Python Temel Sözdizimi ve Örnekler

Python’da temel programlama yapıları:

Örnek 1: Temel Değişken Kullanımı

# Değişken tanımlama
isim = "Ahmet"
yas = 20
not_ortalamasi = 3.75
ogrenci_mi = True

# Ekrana yazdırma
print("İsim:", isim)
print("Yaş:", yas)
print("Not Ortalaması:", not_ortalamasi)
print("Öğrenci mi?", ogrenci_mi)

Örnek 2: If-Else Kontrol Yapısı

# Not değerlendirme programı
not = 85

if not >= 90:
    print("Harf Notu: AA")
elif not >= 80:
    print("Harf Notu: BA")
elif not >= 70:
    print("Harf Notu: BB")
elif not >= 60:
    print("Harf Notu: CB")
else:
    print("Harf Notu: FF - Kaldı")

3. Döngüler ve Tekrarlı İşlemler

For ve while döngülerinin kullanımı:

Örnek 3: For Döngüsü ile Liste İşlemleri

# Liste oluşturma
ogrenci_notlari = [85, 92, 78, 65, 90, 88]

# For döngüsü ile notları işleme
toplam = 0
for not in ogrenci_notlari:
    toplam += not
    print("Not:", not)

ortalama = toplam / len(ogrenci_notlari)
print("Sınıf Ortalaması:", ortalama)

# Range kullanımı
print("1'den 10'a kadar sayılar:")
for i in range(1, 11):
    print(i, end=" ")

Örnek 4: While Döngüsü

# Şifre kontrol programı
dogru_sifre = "python123"
girilen_sifre = ""
deneme_sayisi = 0

while girilen_sifre != dogru_sifre and deneme_sayisi < 3:
    girilen_sifre = input("Şifreyi giriniz: ")
    deneme_sayisi += 1
    
    if girilen_sifre == dogru_sifre:
        print("Giriş başarılı!")
    elif deneme_sayisi == 3:
        print("3 deneme hakkınız doldu!")
    else:
        print("Yanlış şifre! Tekrar deneyin.")

4. Fonksiyon Yazımı ve Kullanımı

Fonksiyonlar, kodunuzu modüler hale getirir:

Örnek 5: Temel Fonksiyonlar

# Üs hesaplayan fonksiyon
def us_hesapla(taban, us):
    """Bu fonksiyon üs hesaplar"""
    sonuc = 1
    for i in range(us):
        sonuc *= taban
    return sonuc

# Fonksiyonu kullanma
print("2^3 =", us_hesapla(2, 3))
print("5^2 =", us_hesapla(5, 2))

# Faktoriyel fonksiyonu
def faktoriyel(n):
    if n == 0 or n == 1:
        return 1
    else:
        return n * faktoriyel(n-1)

print("5! =", faktoriyel(5))

5. Listeler ve Veri Yapıları

Listeler üzerinde temel işlemler:

Örnek 6: Liste Metodları

# Liste oluşturma ve işlemler
meyveler = ["elma", "armut", "çilek", "muz"]

# Liste metodları
meyveler.append("portakal")  # Eleman ekleme
meyveler.remove("armut")     # Eleman silme
meyveler.sort()              # Sıralama

print("Meyveler:", meyveler)
print("İlk meyve:", meyveler[0])
print("Son meyve:", meyveler[-1])
print("Liste uzunluğu:", len(meyveler))

# Liste dilimleme
print("İlk iki meyve:", meyveler[:2])
print("Son iki meyve:", meyveler[-2:])

6. Hata Ayıklama ve Debugging Teknikleri

Kodunuzdaki hataları bulma ve düzeltme yöntemleri:

  • Print Debugging: Ara değerleri yazdırma
  • Try-Except Blokları: Hata yakalama
  • Adım Adım Çalıştırma: Kodun mantığını anlama

Örnek 7: Hata Yönetimi

# Try-except kullanımı
try:
    sayi1 = int(input("Bir sayı girin: "))
    sayi2 = int(input("Başka bir sayı girin: "))
    
    bolum = sayi1 / sayi2
    print("Bölüm:", bolum)

except ValueError:
    print("Hata: Geçerli bir sayı girmediniz!")
except ZeroDivisionError:
    print("Hata: Sıfıra bölme hatası!")
except Exception as e:
    print("Beklenmeyen bir hata oluştu:", e)

7. Ödev Çözüm Stratejileri

COMP 131 ödevlerinde başarılı olmak için:

  • Problemi Anlama: Ödev talimatlarını dikkatlice okuyun
  • Planlama: Çözüm için adımları önceden planlayın
  • Küçük Parçalara Ayırma: Büyük problemleri küçük parçalara bölün
  • Test Etme: Kodunuzu farklı senaryolarda test edin
  • Dokümantasyon: Kodunuzu yorum satırlarıyla açıklayın

8. Sık Yapılan Hatalar ve Çözümleri

Başlangıç seviyesinde sık karşılaşılan hatalar:

  • İndeks Hataları: Listelerde son elemanın indeksi len(liste)-1’dir
  • Tip Uyumsuzluğu: String ve sayıları doğrudan karşılaştırmayın
  • Sonsuz Döngü: While döngülerinde çıkış koşulunu unutmayın
  • Değişken İsimlendirme: Anlamlı ve tutarlı isimler kullanın

9. Kod Kalitesi ve Best Practices

Temiz ve okunabilir kod yazma prensipleri:

  • Değişken isimlerini anlamlı seçin (x yerine ogrenci_adi)
  • Kodunuzu yorum satırlarıyla açıklayın
  • Fonksiyonları kısa ve tek bir iş yapacak şekilde tasarlayın
  • Gereksiz kod tekrarından kaçının
  • Python kodlama standartlarına (PEP8) uyun

10. Örnek Ödev Çözümü: Öğrenci Not Sistemi

Kapsamlı bir ödev örneği:

def ogrenci_not_sistemi():
    """Öğrenci notlarını yöneten program"""
    
    ogrenciler = {}
    
    while True:
        print("\n=== Öğrenci Not Sistemi ===")
        print("1. Öğrenci Ekle")
        print("2. Not Girişi Yap")
        print("3. Ortalama Hesapla")
        print("4. Çıkış")
        
        secim = input("Seçiminiz (1-4): ")
        
        if secim == "1":
            ogrenci_adi = input("Öğrenci adı: ")
            ogrenciler[ogrenci_adi] = []
            print(f"{ogrenci_adi} eklendi.")
            
        elif secim == "2":
            ogrenci_adi = input("Öğrenci adı: ")
            if ogrenci_adi in ogrenciler:
                not = float(input("Not girin: "))
                ogrenciler[ogrenci_adi].append(not)
                print("Not eklendi.")
            else:
                print("Öğrenci bulunamadı!")
                
        elif secim == "3":
            ogrenci_adi = input("Öğrenci adı: ")
            if ogrenci_adi in ogrenciler and ogrenciler[ogrenci_adi]:
                ortalama = sum(ogrenciler[ogrenci_adi]) / len(ogrenciler[ogrenci_adi])
                print(f"{ogrenci_adi} ortalaması: {ortalama:.2f}")
            else:
                print("Öğrenci veya not bulunamadı!")
                
        elif secim == "4":
            print("Program sonlandı.")
            break
            
        else:
            print("Geçersiz seçim!")

# Programı çalıştır
ogrenci_not_sistemi()

11. Yardımcı Araçlar ve Kaynaklar

Programlama öğrenirken faydalı araçlar:

  • Python IDLE veya Visual Studio Code
  • Online Python derleyicileri (Replit, PythonAnywhere)
  • Debugging araçları (Python Debugger – pdb)
  • Kod formatlama araçları (Black, autopep8)

Akademik Destek ve Ödev Yardımı

COMP 131 ödevlerinizde zorlanıyorsanız, profesyonel ödev yaptırma hizmetlerimizden yararlanabilirsiniz. Karmaşık programlama projeleri için uzman danışmanlık alabilirsiniz.

Sonuç: Programlama Yolculuğunuzda Başarı

COMP 131 Programlamaya Giriş dersi, bilgisayar bilimleri alanındaki yolculuğunuzun ilk ve en önemli adımlarından biridir. Düzenli pratik yapmak, ödevleri zamanında tamamlamak ve kavramları derinlemesine anlamak, bu derste ve sonraki programlama derslerinde başarılı olmanın anahtarıdır.

Unutmayın, her programcı bir zamanlar başlangıç seviyesindeydi. Hata yapmaktan korkmayın, her hatadan yeni bir şey öğrenin. Akademi danışmanlığı hizmetlerimizle programlama yolculuğunuzda yanınızdayız. Başarılar dileriz!

Bir yanıt yazın