Algoritmik Düşünce Nedir? Oops!

Evet o da ne?
Bu konu aslında yazılım ve bilgisayar bilimlerine kendini vermiş kişilerin ihtiyacı olmayan bilgileri iceren bir yazıdır.
 Evet konumuza dönelim :)
 Algoritmik düşünce aslında bir hareket, durum yada oluşumu A'dan Z'ye düşünüp burada karşılaşabileceğiniz  hatalar yada durumları öngörerek buna karşı izleyeceğiniz hareket tarzını oluşturmaktır...
 Mesela Web sayfanızda bir kullanıcı  eklemek istiyorsunuz
Ancak şartlarınız var

İlk Yaşadığı ülke yada kayıt olmaya çalıştığı Ülke Türkiye olmalı,
Yaşı +15 olmalı
Daha Önce Kayıt olmuş mu kontrol edilmeli

Sadece 3 şarta göre kayıt işlemi gerçekleştireceğiz.Sadece bu kadar mı? Hayııırrrr...

Kayıt olurken kayıt kutusunda herhangi bir boşluk bırakılmış mı?
örneğin adı kısmını boş bırakmış mı yada soyadı yada mail adresi vs.vs.vs.vs.vs.vs.vs.

Yada bu kutuları doldururken qwewqerqwerew gibi karakterler mi kullanılmış?
Parola kontrolü yaparken ardarda iki giriş yaptırılıp bu iki kutuya aynı şifreyi girip girmediğini kontrolu vs vs diye uzayıp gidiyor.

Yukarıdaki 3 şarta dönersek FlowChart çıktımız bu şekilde oluyor.

Tabi bunları programa anlatırken IF Else deyimleriyle anlatıyoruz. Bu diyagram sadece bu 3 kıstasa göre bu kıstas sayısının 10 olduğunu düşünün bazen öyle durumlar oluyor ki iç içe 20 döngü kullanıyorsunuz.Böyle düşününce yukarıdaki diyagram sadece oyuncak kalıyor. Yada başka bir örnek verirsek arabanızı çalıştırmak istiyorsunuz değilmi bunu bir robota anlatacaksınız.
öncelikle olayları sıralayalım
- bu araç sana mı ait kontrol et. Evet se devam et değilse aracını bul
- aracın anahtarını x-y kordinatlarında anahtar deliğine göre ayarla. Doğru ayarlanmışsa devam et
- z ekseninde anahtarı deliğe sok. anahtarı z ekseninde iteklediğinde karşı koyulan basınç 2 bardan büyükse anahtar deliğe girmiştir ve yerine oturmuştur. Anahtarı çevir ve kapı kolundan -z ekseninde kapıyı hareket ettir.
- Kapı girilebilecek kadar açılmış ise anahtarı -z yönünde çıkar ve çek.
-Araca giriş yap
-Araca bin (bu arada robotun kol-bacak vs kısımlarının kordinatları vs girilmeli)
herneyse
- Önce debriyaj pedalına bas sonuna kadar ayaktaki basınç 3 bara ulaştığında dur.
-Vitesi 0 offset konumuna al.
-Anahtarı anahtar deliğine x ve y kordinatlarında sabitle ve z kordinatında deliğe sok ve çevir
- Eğer devir göstergesi 1 ve üzerinde ise anahtarı ters yönde 1 kademe çevir


Yukarıdaki algoritmanın gerçekleşebilmesi için yüzlerce sensör ve ara algılayıcılar eklenmeli.
Sistem bundan ibaret değil tabiki arada yüzlerce if kullanılarak bu işlemler yapılıyor :)

Algoritma mantığı bu işlemleri A'dan Z' ye en ince detayına kadar düşünüp öngörüp planlanmasından ibaret. Algoritmik düşünce de bunların tamamını içine alan düşünce mantığı. Bu yazıma ekleme yapmak isteyenler sayfanın altına yorum yapabilirler....
















Yorumlar