Introducing
Your new presentation assistant.
Refine, enhance, and tailor your content, source relevant images, and edit visuals quicker than ever before.
Trending searches
A
C
PROBLEM ÇÖZME SÜRECİ
3
PROBLEM ÇÖZME TEKNİKLERİ
Belirsiz bir durumu yaşamak yerine her zaman bir planınız olmalıdır. Bu, en önemli kuraldır.
Bazen problemi tekrar ifade etmek, göremediğimiz bir ayrıntıyı görmemizi ya da problemi daha kolay çözmek adına bir ipucu yakalamamızı sağlayabilir.
Verilen problemi adımlara ya da bölümlere, çözümü kolaylaştırır. Bir problemi iki bölüme ayırdığımız düşünüldüğünde, her bir parçanın çözümünün tümünü çözmeye göre yarı yarıya kolaylaştığını düşünebiliriz.
Programlama yaparken öncelikle bildiklerimiz ile başlamalı ve sonra yeni çözümler arayışına girmeliyiz. Problemi küçük parçalara bölerek çözebildiğiniz parçadan başlayınız. Bu parçaları çözerken diğer parçalarla ilgili olarak aklınıza yeni fikirler geldiğini ve aynı zamanda kendinize olan güvenin arttığını göreceksiniz. Programlama süreci boyunca çoğu zaman çok iyi olduğunuz konular, zorlandığınız konular ve henüz öğrenmediğiniz konular olacaktır.
Çözmekte zorlandığınız bir problemle karşılaşırsanız problemin kapsamını daraltmayı deneyebilirsiniz. Bunun için koşulları azaltmayı ya da çözebileceğiniz biçime dönüştürmeyi, değişkenleri azaltmayı ya da problemin kapsama alanını küçültmeyi düşünebilirsiniz. Temel amacınız problemi basitçe ifade etmeye çalışmak olmalıdır. Çözüm için denediğiniz yaklaşımlar, size gerçek çözüm için yol gösterecektir. Problemi basitleştirmek size aslında problemdeki zorluğun neden kaynaklandığını da gösterecektir.
Burada ele aldığımız benzerlik kavramı, çözülmesi istenen problemle önceden çözülen problem arasındaki olası örtüşme ya da yeni çözüme ilham verme olarak tanımlanabilir. Benzerlik, farklı biçimlerde karşımıza çıkabilir. Bazen problemler aynı, değişkenler ya da veriler farklıdır. Bazen problemin belirli bir bölümü başka bir problemle benzerlik gösterebilir. Problem çözme sürecinde benzerliklerin farkına varacak kadar problem çözmek ve deneyim kazanmak gereğinden ortaya çıkmaktadır. Bu nedenle programlamaya yeni başlayanlar için bir problemi çözerken hazır yazılmış bir kodu bulmak ve onu güncelleyerek problemi çözmeye çalışmak son derece yanlıştır. Bir çözümü kendiniz üretmezseniz tamamen anlayamaz.
Bazen bir problemi çözmenin en kolay yolu denemek ve sonuçlarını gözlemlemektir. Bu, tahmin etmekten çok farklıdır. Bir çözümü tahminen öngörmek ile kodu yazarak denemek ve sonuçlarını incelemek çok farklı sonuçlar verir. Böylece problemi çözebilmek için gereken ipuçlarını elde edebilirsiniz.
Asla vazgeçmemek, kişisel bir özelliktir. Kararlılık, güven ve istek kaybolduğu zaman açık düşünemezsiniz, işlemler olması gerektiğinden uzun sürer ve gittikçe zorlaşır. Ekrandaki program kodu çalışmadığı zaman programcı koda değil, kendisine
ve aslında problemin kaynağına, yani kendi aklına kızmaktadır. Bu noktada moralimizinbozulmasına izin vererek aslında başarısız olmak için bir bahane üretmiş oluruz. Böyle durumlarda enetkili çözüm ara vermektir.
Problemlerin çözümünün mantıksal sıralamasıdır. Günlük hayatta yapacağımız işler için hazırladığımız planlar aslında algoritmanın günlük hayatta kullanıldığının ispatıdır.Tüm programlama dillerinin temeli algoritmadır.
Algoritmanın akış sembolleriyle oluşturulmasına denir. Programcılığı yeni öğrenen arkadaşların önce problemin algoritmasını veya akış diyagramını hazırlayaması önerilir.
Algoritma bir programlama dili değildir. (Programlama dillerine yol gösteren bir yöntem dizisidir.)
Dikdörtgenin Alanını Hesaplayan Algoritma Verilmiştir. Akış Diyagramını Çizin.
ALGORİTMASI
Dikdörtgenin Kısa Kenarı : a ,
Dikdörtgenin Uzun Kenarı : b ,
Dikdörtgenin Alanı : Alan olarak kullanılacak
1.Başla
2.a değerini gir
3.Eğer a<0 ise 2. Adıma git
4.b değerini gir
5.Eğer b<0 ise 4. Adıma git
6.Alan = a*b
7.Alan değerini yaz
8.Bitir