Algoritma ve Programlama BTÜ

Eğer bilgi yazısını okumadan direkt olarak PDF'leri yani derse ait slayatları incelemek isterseniz yazının bitiminden erişebilirsiniz.
Algoritma ve Programlama, bilgisayarlara belirli görevleri yerine getirmeleri için adım adım talimatlar vermeyi içeren bir süreçtir. Bu iki kavram birbiriyle yakından ilişkilidir, ancak farklı roller oynarlar:
Algoritma Nedir
Algoritma, bir problemi çözmek için tasarlanmış mantıksal adımların sırasıdır. Her algoritma bir başlangıç ve bitiş noktası içerir ve belirli bir girdi alıp bir çıktı üretir. Algoritmalar bir dil veya kodlama olmadan, salt mantıksal yapı olarak da düşünülebilir. Örneğin:
Günlük Hayatta: Kahve yapma, alışveriş listesi hazırlama gibi işlemler, aslında günlük hayatta yaptığımız algoritmalardır. Adımları belirleyip sıraya koyarız.
Gerçek Hayatta Kullanımı: Arama algoritmaları (Google'da), sıralama algoritmaları (veri izinde), şifreleme algoritmaları (güvenlikte) gibi birçok yerde kullanılır.
Programlama Nedir
Programlama, algoritmaları bilgisayarın anlayabileceği bir dile çevirme işlemidir. Algoritmaların kodlanması sürecine verilen addır ve bir dilde yazılır (Python, Java, C++, vb.). Programlama dilleri, algoritmayı yürütme ve gerektiğinde dış dünyayla etkileşime geçme konusunda olanak sağlar.
Günlük Hayatta: Programlama, uygulama geliştirme, web sayfaları yapma, oyun tasarlama gibi birçok işlemi mümkün kılar.
Gerçek Hayatta Kullanımı: Akıllı telefon uygulamaları, işletim sistemleri, web siteleri, veri iz programları gibi tüm yazılımlar programlama yoluyla hayata geçirilir.
Algoritma ve Programlama İlişkisi
Algoritma, problemi çözmek için mantıklı bir adım sıralamasıdır; programlama ise bu adımların bir dilde yazılarak çalıştırılabilir hale getirilmesidir. Örneğin, bir yemek tarifi (algoritma) mutfakta uygulanmadan önce tarifin yazıldığı dile (programlama dili) dönüştürülür.
- Algoritma: Problemin nasıl çözüleceğine dair genel bir yol haritası.
- Programlama: Bu yol haritasını takip eden, çalıştırılabilir bir kod yazma süreci.
Bu ikili, dijital çözümler üretmek ve otomasyon sağlamak için bir temel taş oluşturur.
Algoritmaların Hayatımızdaki Yeri ve Kullanımı
Algoritmalar günlük yaşamda, farkında olmadan kullandığımız birçok teknolojinin ardındaki işlemleri organize eder. İşte günlük yaşamdaki bazı önemli kullanım alanları:
Arama Motorları: Google, Bing gibi arama motorları, algoritmalar sayesinde interneti tarayarak kullanıcıların en alakalı sonuçları görmesini sağlar. Bu algoritmalar, hangi bilgilerin öne çıkacağını belirleyen karmaşık işlemleri içerir.
Sosyal Medya: Sosyal medya platformları, algoritmalar kullanarak ilgi alanlarımıza göre içerikleri sıralar ve karşımıza çıkarır. Bu sayede beğendiğimiz veya merak ettiğimiz içeriklere daha hızlı ulaşırız.
Tavsiye Sistemleri: Netflix, YouTube ve Spotify gibi platformlar, izlediğimiz veya dinlediğimiz içeriklere göre yeni öneriler sunar. Bu algoritmalar, kullanıcı tercihlerine göre öneriler sunarak kullanıcı deneyimini iyileştirir.
Navigasyon ve Harita Uygulamaları: Google Maps, Yandex Navigasyon gibi uygulamalar algoritmalarla çalışır. Bu uygulamalar, en kısa veya en hızlı rotaları hesaplar, trafik durumunu iz eder ve anlık olarak güncelleme yapar.
Finans ve Ticaret: Bankacılık sistemleri, kredi değerlendirme, hisse senedi alım-satımı gibi işlemler için algoritmalar kullanır. Örneğin, kredi skorunuz, bir algoritma sayesinde hesaplanır ve size uygun kredi teklifleri sunulur.
Sağlık: Tıp alanında, hastalık teşhisi veya tedavi önerileri, algoritmalarla desteklenen yazılımlar tarafından yapılır. Örneğin, bir görüntüleme algoritması, röntgen veya MR görüntülerinde olası hastalık belirtilerini tespit edebilir.
Programlamanın Gerçek Hayatta Kullanımı
Programlama, bu algoritmaların bir dille yazılarak çalıştırılabilir hale gelmesini sağlar. Günlük hayatta programlama, şu alanlarda sıkça karşımıza çıkar:
Uygulamalar ve Yazılımlar: Akıllı telefonlardaki uygulamalar, masaüstü yazılımları, işletim sistemleri programlama yoluyla oluşturulur. Bu programlar, kullanıcıların ihtiyaçlarına göre tasarlanır ve çeşitli dillerde yazılır.
Web Siteleri ve E-Ticaret: İnternette gezinirken gördüğümüz tüm web siteleri programlama ile yapılır. E-ticaret siteleri, kullanıcıların ihtiyaçlarına uygun ürünleri bulmalarını sağlar ve alışveriş sürecini kolaylaştırır.
Robotik ve Otomasyon: Fabrikalarda, depolarda veya evlerimizde çalışan robotlar programlama ile yönetilir. Örneğin, evlerde kullanılan robot süpürgeler belirli bir algoritmaya göre temizlik yapar ve yön bulur.
Akıllı Ev Sistemleri: Işıklar, termostatlar ve güvenlik kameraları gibi akıllı cihazlar, programlama sayesinde evimizi daha konforlu ve güvenli hale getirir. Cihazlar belirli komutları alır ve bu komutlara göre işlemler yapar.
Yapay Zeka ve Makine Öğrenimi: Yapay zeka uygulamaları, algoritmalar ve programlama ile hayat bulur. Örneğin, bir uygulama, fotoğraflarımızı tanıyabilir, müşteri hizmetleri için bir chatbot olarak görev yapabilir veya sürücüsüz araçları yönetebilir.
Algoritma ve Programlama BTÜ
a dan z ye c klavuzu kaan aslan.pdf
AlgorithmsNotesForProfessionals.pdf
c_how_to_program_with_an_introduction_to_c_global_edition_8th_edition.pdf