Python Programlamaya Giriş yazı dizimize Python fonksiyonlarının temelleriyle devam ediyoruz. Yazı dizimizin şimdiye kadarki bölümlerinde bir programı inşa etmek için gereken bütün yapı taşlarını gördük. Prosedürel programlama denen paradigma içinde programlar birbiri arkasından işlenir, bir karar verilmesi gerektiğinde program akışı iki yoldan birini seçer, veya bir döngü içindeki bir kod parçası tekrarlanır. Teorik olarak, her türlü programı yazmak için bu yapılar yeterli. Ancak, Yogi Berra’nın dediği gibi: Teoride teori ve pratik arasında fark yoktur, ama pratikte vardır. Kod yazarken işlemleri sık sık farklı yerlerde tekrarlamamız gerekir. Söz gelişi, bir yatırımın belli bir dönem sonunda bileşik faizle ne miktara ulaştığını yazmak için bir döngü yazabiliriz. Bu tür bir işlemi büyük bir program içinde değişik yerlerde (mesela farklı yatırım araçları için) kullanmamız gerekebilir. Programcılar böyle tekrarlanan işler için aynı kodu tekrar tekrar yazmaktansa, bunları bir fonksiyon (prosedür veya yordam olarak da bilinir) olarak paketleyip kullanmayı tercih ederler. Fonksiyon kullanmak sayesinde:
Devamı...
- En uzun Collatz zinciri
- Üstel fonksiyon Taylor serisi
- Karekök bulma
- Machin formülüyle pi’yi bulma
- Lojistik fonksiyon ve kaos
- SIR salgın modeli
Devamı...
Asal sayıları listelemek
Verilen bir (N) sayısından küçükeşit bütün asalları listeleyen bir program yazalım.
Bir önceki yazıda, belli bir sayının asal olup olmadığını tespit eden bir program yazmıştık. Burada, o programı 2 ile $N$ arasındaki her tamsayı için çalıştıracağız.
Devamı...
Döngüler, daha önce bahsettiğimiz karar yapısı if ile benzer bir yapıya sahiptir. Blok kaydırma yapısı ve mantıksal şartlara aşina değilseniz önce python mantık işlemleri ve karşılaştırmaları okumanız iyi olur.
Devamı...
En basit programlarda bile sık sık “şu şart doğruysa şöyle yap, yoksa yapma”, veya “doğruysa şöyle yap, yanlışsa öbür türlü yap” şeklinde düzenlemelere ihtiyaç duyarız. Sözgelişi, “cevap doğruysa puanı bir arttır”, veya “yanlış sayısı dördün katıysa puanı bir azalt” gibi. Birçok dil gibi Python’da da seçim yapısı if-else komutlarıyla kurulur.
Devamı...
Yeni başlayanlar için Python programlamayı anlatan yazı dizimizin ikinci bölümünde sayıları, aritmetik işlemlerini, ve Python’daki temel veri tiplerini (listeler, çokuzlar, dizeler, sözlükler) işliyoruz.
Devamı...
Python programlarını yazmak için gereken şeyler çok az: Sadece bir metin editörüne (text editor) ve Python yorumlayıcısına ihtiyacınız var. Metin editörü ile programı yazarsınız, ve yorumlayıcıya bu dosyayı okuyup çalıştırmasını söylersiniz. Hepsi bu.
Devamı...
Ali ile Veli tutukludur. Bir gün gardiyan gelir ve bir oyun oynayacaklarını, eğer kazanırlarsa serbest bırakılacaklarını söyler. Oyunun kuralları şöyle: Gardiyan sabah gelip Ali’yi bir odaya götürecek. Veli başka bir odada bekleyecek. Ali’nin getirildiği odada birden dörde kadar numaralanmış dört adet boş kutu olacak. Ali bu kutuları görürken gardiyan bir kutuya cebinden çıkardığı bir kağıdı koyacak. Ali kağıdın hangi kutuya koyulduğunu bilecek yani. Sonra gardiyan cebinden dört adet hilesiz madeni para çıkaracak ve sırayla yazı tura atıp her bir parayı birer kutunun üzerine koyacak. Ali hangi paranın yazı ya da tura geldiğini ve hangisinin hangi kutu üzerinde olduğunu da bilecek. Sonra gardiyan Ali’ye bir parayı seçmesini söyleyecek. Alinin seçtiği para yazı ise turaya, tura ise de yazıya döndürülecek ve Ali odadan çıkarılacak.
Devamı...
Üzerinde birden onikiye kadar sayıları yazılı olduğu oniki tane kartımız var. Bu kartla Anaximander, Boethius, Confucius ve Diogenes arasında eşit olarak paylaştırılıyor, yani her biri üç tane kart alıyor. Sonra sırayla aralarında şöyle bir konuşma geçiyor.
Devamı...
Bu oyun iki kişi arasında ve yanyana dizili 13 taşla oynanıyor. İki oyuncu da sırayla aşağıdaki hamlelerden birini yapıyor:
Devamı...