Page 18 - Bilgisayar Bilimi Kur 1| I. Bölüm
P. 18

Problemler çözülmeye çalışılırken dikkate alınması gereken sınırlılıklar ve koşullar ile uyulması ge-
            reken kurallar vardır. Tüm bu veriler dikkate alınmaz ise doğru çözüme ulaşılamaz ya da problem geçici
            olarak göz ardı edilmiş olabilir. Bir problemi yazılım geliştirerek çözerken de çeşitli sınırlılıklar vardır:
            kullandığınız programlama dili, çalıştığınız ortam (kişisel bilgisayar, tablet vb.) ve performans (kullan-
            dığınız işlemci, hafıza, disk vb.). Bu nedenle programcılar için problem çözme, “bir dizi işlemi, belirtilen
            sınırlılıklara uygun biçimde gerçekleştirebilen programın yazılması” anlamına gelir. Programlamaya
            yeni başlayanlar işlemleri gerçekleştirip hedefe ulaşma konusunda daha fazla istekli olduklarından ge-
            nellikle belirtilen sınırlılıklara uyma konusunda zorluk yaşayabilirler. Bu nedenle böyle programlar, is-
            tenilen işlemleri yalnızca “belli şartlarda (sadece 2 basamaklı sayılar için, tek bir döngü için vb.)” yerine
            getirebilen programlara dönüşebilir. Bu nedenle bu tür uygulama hatalarından kaçınarak tüm detayları
            dikkatli bir şekilde işe koşarak programlama yapmamız son derece önemlidir.




































            2.1.5. Problem Çözme Süreci
               Problem çözme farklı biçimlerde düşünmeyi gerektiren bir eylemdir. Öncelikle klasikleşmiş bazı
            klasik bulmacaları ve bu bulmacaların çözümlerini inceleyelim.

            2.1.5.1. Tilki, Kaz ve Mısır Çuvalı

               Konuşacağımız ilk klasik problem, beraberindeki nesneleri nehrin karşısına taşıması gereken bir çift-
            çiyle ilgili bir bulmaca. Bu çiftçinin bir tilkiyi, bir kazı ve bir mısır çuvalını nehrin karşısına geçirmesi
            gerekmektedir. Çiftçinin bu işlemi gerçekleştirmek için küçük bir teknesi var ancak bu teknede çiftçi
            ile birlikte en fazla bir nesneye daha yer var. Ne yazık ki tilki ve kaz açtır. Bu yüzden tilki kaz ile yalnız
            kalamaz çünkü tilki kazı yiyebilir. Aynı şekilde kaz ve mısır çuvalı yalnız bırakılamaz çünkü kaz mısırı
            yiyebilir. Bu koşullarda çiftçi nehrin karşısına tilki, kaz ve mısırı sorunsuz bir şekilde nasıl geçirebilir?
               Bu soru, Şekil 1.1’de görülmektedir. Bu soruna daha önce hiç rastlamadıysanız burada durun ve
            çözmek için birkaç dakika harcayın. Bu bilmeceyi daha önce duyduysanız ve çözdüyseniz nasıl çözüm
            bulduğunuzu hatırlamaya çalışın.


         32
   13   14   15   16   17   18   19   20   21   22   23