Türev ve Değişim Hızı

Türevde değişim oranı, bir fonksiyonun belirli bir noktadaki eğimini ifade eder. Matematikte türev, bir fonksiyonun herhangi bir noktadaki anlık değişim hızını hesaplamak için kullanılır. Değişim oranı fonksiyonun ne kadar hızlı değiştiğini gösterir ve genellikle bu değişim hızı, birim zamandaki değişimin büyüklüğü olarak ifade edilir. Türevde değişim oranı, bir fonksiyonun eğiminin o noktada ne kadar keskin olduğunu belirlememizi sağlar ve bu sayede optimize etme, modelleme ve analitik hesaplamalar gibi birçok alanda kullanılır.
Bir fonksiyonun bir aralıktaki değişim oranı, o aralıktaki fonksiyon değerlerinin farkının, o aralıktaki bağımsız değişkenin değerlerinin farkına bölünmesi ile hesaplanır.
Matematiksel olarak değişim hızı, (f(b) - f(a)) / (b - a) formülü ile ifade edilir, burada f(b) ve f(a) sırasıyla aralığın sağ ve sol uçlarındaki fonksiyon değerlerini, a ve b ise aralığın sağ ve sol uçlarındaki bağımsız değişken değerlerini temsil eder.
Bir fonksiyonun değişim oranı, o fonksiyonun belirli bir aralıktaki eğimi ya da artış hızını temsil eder. Bu değişim oranı genellikle iki nokta arasındaki eğimi ölçmek için kullanılır. Eğer bu oran (eğim) pozitif ise fonksiyon artıyor, (eğim) negatif ise fonksiyon azalıyor demektir. Değişim oranı, bir fonksiyonun davranışını anlamak ve analiz etmek için önemli bir kavramdır ve matematiksel modellemede ve çeşitli alanlarda sıkça kullanılır. Bağımsız değişkenler arasındaki ilişkiyi belirlemek ve trendleri anlamak için değişim oranı oldukça faydalı bir araçtır. Aşağıda konu ile ilgili çeşitli örnek soru çözümleri verilmiştir.

Örnek: Bir eşkenar üçgenin bir kenarı 4 cm/sn hızla büyümektedir. Bir kenar uzunluğu 12 cm olduğu anda alanının büyüme hızı kaç
cm²/sn  olur?
Örnek: Küre şeklindeki bir balon üzerinde bulunan bir delikten hava kaçırmaktadır. Balonun yarıçapı 6cm olduğu anda hacminin azalma hızı 24 cm³/sn olduğuna göre yarıçapının azalma hızı kaç cm/sn olur?
Örnek: Kare dik prizma şeklindeki cam su deposunun altında yer alan bir musluktan saniyede 3 m³ su boşalmaktadır. Buna göre depo içindeki suyun yüksekliğinin azalma hızı kaç m/sn olur?

Örnek: Başlangıçtaki yarıçapı 5 cm olan küre şeklindeki bir balon t = 0 anından itibaren geçen sürede t saniye sonra r=(80-t)/16 cm olacak şekilde içinden sürekli hava sızdırmaktadır. Buna göre, t= 40 iken içerdeki hava kaç cm³/sn hızla dışarı sızar?

Örnek: İçi tamamen su dolu olan taban yarıçapı 9cm ve yüksekliği 18 cm olan koni şeklindeki bir cisim tepe noktasındaki A noktasından delinip ters çevrildikten sonra içindeki su akmaya başlamıştır. Su yüksekliği 6 cm olduğu anda, kaptaki suyun yüksekliğine bağlı değişim oranı kaç cm³ olur?
Örnek: Bir pistte yer alan roket dik doğrusal hareket etmektedir. Başlangıçta zemine dik bir şekilde sabit bir noktada olan roketin, aynı zeminde bulunan bir A noktasına uzaklığı 80 m'dir. Roketin kalkış yaptıktan sonra aynı zemindeki başlangıç noktasına uzaklığı 60 m olduğu andaki değişim hızı 10 m/sn olduğuna göre roketin zeminde bulunan A noktasına olan uzaklığının değişim hızı kaç m/sn olur?
Örnek: Sokak lambasından 5 m/s hızla yürüyerek uzaklaşan ve boyu 2 metre olan bir kişinin lambadan uzaklığı 10 m olduğu anda bu kişinin gölgesinin ucu da 6 m/s hızla kendisinden uzaklaşarak hareket ediyorsa sokak lambasının boyu kaç m'dir?

Örnek: Dik üçgen biçimindeki oda yeniden düzenlenirken zemine dik olacak sekilde bir kontrplak zemine yerleştiriliyor. Yerleştiriken kontrplak duvara doğru ok yönünde saniyede 28 cm hızla hareket ettirildiğinde x uzunluğunun artma hızı kaç cm/sn olur?


Örnek: Boyu 5 metre olan dikdörtgen biçimli bir kutu duvara dayalı halde dururken kutunun alt kısmından çekildiğinde kutunun üst ucu duvardan ayrılmadan aşağıya doğru kaymaktadır. Kutunun alt ucu saniyede 8 cm hızla 3 metre kaydığında üst ucun kayma hızı kaç metre/sn olur?

Kadane Algoritması

Kadane Algoritması, belirli bir sayı dizisi içindeki maksimum alt dizi toplamını bulmak için kullanılan dinamik bir programlama tekniğidir. Dinamik Programlama, karmaşık bir problemi daha basit alt problemlerden oluşan bir koleksiyona bölerek, bu alt problemlerin her birini yalnızca bir kez çözerek ve çözümlerini bellek tabanlı bir veri yapısı (dizi, harita vb.) kullanarak saklayarak çözme yöntemidir. Yani bir dahaki sefere aynı alt problem ortaya çıktığında, çözümünü yeniden hesaplamak yerine, daha önce hesaplanan çözüme bakılır ve böylece hesaplama süresinden tasarruf edilir. Adını mucidi Jay Kadane'den alan algoritma; bilgisayar bilimi ve veri analizinden finans ve görüntü işlemeye kadar çeşitli alanlarda uygulamalara sahiptir. Algoritma 1984 yılında Jay Kadane tarafından önerilmiştir ve O(n) zaman karmaşıklığına sahiptir. 
Kadane Algoritması, belirli bir dizideki maksimum alt dizi toplamını bulmak için kullanılan doğrusal bir zaman algoritmasıdır. Bir alt dizi, dizi içindeki öğelerin bitişik bir alt kümesi olarak tanımlanır. Algoritma, pozitif ve negatif sayıları çok verimli bir şekilde ele alır, bu da onu alt dizileri içeren birçok sorunu çözmek yerine daha pratik çok yönlü bir çözüm aracı haline getirir.Kadane'nin algoritmasından önce, maksimum alt dizi problemini çözmek için tüm olası alt dizileri kontrol eden kaba kuvvet yaklaşımı ve böl ve yönet algoritması gibi başka algoritmalar önerilmişti. Ancak bu algoritmalar daha yüksek zaman karmaşıklığına sahiptir ve Kadane'nin algoritmasından daha az verimlidir. Kadane'nin Algoritmasının altında yatan mekanizmaları, Java kodu uygulamalarını, adım adım süreci, Kadane'nin algoritma leetcode'unu, C, C++'yi, zaman karmaşıklığını, avantajlarını ve dezavantajlarını, pratik uygulamaları ve daha fazlasını anlamanız sizin için faydalı olacaktır.

Kadane Algoritması, dizi üzerinde yineleme yaparak ve her konumda biten alt dizinin maksimum toplamını takip ederek çalışır. Her i konumunda, iki seçeneğimiz vardır: ya i konumundaki elemanı geçerli maksimum alt diziye ekleyin ya da i konumunda yeni bir alt dizi başlatın. Bu iki seçeneğin maksimumu i konumunda biten maksimum altdizidir.
Yazılım dilinde bu algoritma şu şekilde işler: Başlangıç toplamı max_so_far ve max_ending_here değerleri 0 olarak alınıp dizi öğeleri tek tek incelenir. Sırasıyla şu ana kadar görülen maksimum toplamı ve geçerli konumda biten maksimum toplamı takip etmek için max_so_far ve max_ending_here olmak üzere iki değişkeni her dizi elemanında korunur. Algoritma, her iki değişkeni de dizinin ilk öğesinden başlayarak sırasıyla değiştirir. Daha sonra dizinin elemanlarını aldıktan sonra geçerli toplamı maksimum toplamla kıyaslayarak ikinci öğeden dizinin sonuna kadar aynı işlemler tekrarlanır. Her i konumunda, geçerli öğenin maksimumunu ve önceki maksimum alt diziye eklenen geçerli öğeyi alarak max_ending_here'i güncellenir. Daha sonra max_so_far'ı max_so_far ve max_ending_here'nin maksimumu olacak şekilde güncelleme işlemine devam edilir. Geçerli toplam maksimum toplamdan büyük ise artık yeni maksimum toplam değeri buna göre güncellenir aksi halde önceki maksimum toplam aynı kalır. Algoritma, dizideki herhangi bir alt dizinin maksimum toplamı olan max_so_far değerini sürekli olarak döndürür. Dizinin son terimine gelince işlem biter ve maksimum toplamı veren alt dizi elde edilir.
Kadane Algoritmasını şöyle bir sayı dizisi örneğiyle gösterelim:
Giriş Dizisi: [-2, 1, 6, -3, 4, -1, -7, -3, 5] Bu dizinin maksimum altdizi toplamını bulmak istiyoruz. Bu sorunu çözmek için Kadane'nin algoritmasını uygulayabiliriz.
İki değişkeni başlatarak algoritmayı başlatıyoruz:
1) max_so_far: Bu değişken şu ana kadar gördüğümüz maksimum alt dizi toplamını takip edecektir. (Geçerli Toplam)
2) max_ending_here: Bu değişken mevcut endekste biten maksimum toplamı takip edecektir. (Max Toplam)
3) İlk başlangıç toplamı max_so_far ve  max_ending_here=0 olur. Daha sonra ikinci elemandan başlayarak dizi boyunca toplamları yineliyoruz: Öğe -2 ye gidip yeni toplam -2 olur. (0+(-2)=-2) [Sub:-2]
4) Geçerli öğeyi önceki toplama ekleyerek geçerli toplamı güncelleyin: Geçerli Toplam=0+(-2)=-2 [Sub:-2]
5) Şu ana kadar görülen maksimum toplamı güncelleyin: 0+(-2)=-2 olur.(Maksimum Toplam=-2) [Sub:-2, Max:-2]
6) Dizi boyunca ilerleyerek yerel toplam (Geçerli toplam) ve maksimum toplam sonuçlarını yinelemeye başlayalım.
Dizide öğe 1 elemanına gelince: Geçerli toplam -1 olur. (-2+1=-1)  [Sub:-1]
Maksimum toplam, geçerli toplam olan -1, max toplam -2 yi geçtiği için -1 olarak güncellenir. [Sub:-1, Max:-1]
7) Öğe 6 elemanına gidelim: Yeni geçerli toplamı 5 olur. ((-1)+6=5) Maksimum toplamı ise 5 toplamı önceki maksimum toplam olan -1 sayısını geçtiği için güncellenir ve maksimum toplam 5 olur.  [Sub:5, Max:5]
8) Öğe -3'e gelince:Yeni geçerli toplamı 2 olur. (5+(-3)=2) Maksimum toplamı ise 2 toplamı önceki maksimum toplam olan 5 sayısını  sayısını geçemediği için aynı kalır. Yeni maksimum toplam halen 5'tir. [Sub:2, Max:5]
9)Öğe 4'e gelince:Yeni geçerli toplamı 6 olur. (2+4=6) Maksimum toplamı 6 ise önceki max toplam 5'i geçtiği için yeniden güncellenir ve yeni maksimum toplam 6 olur. [Sub:6, Max:6]
10)Öğe -1'e gelince:Yeni geçerli toplamı 5 olur. (6+(-1)=5) Maksimum toplamı ise 5 toplamı önceki maksimum toplam olan 6 sayısını geçemediği için halen aynı kalır ve 6 olur. [Sub:5, Max:6]
11)Öğe -7'e gelince:Yeni geçerli toplamı -6 olur. (5+(-7)=-2) Maksimum toplamı ise -2 önceki maksimum toplam olan 6 sayısını geçemediği için aynı kalır. [Sub:-2, Max:6]
12)Öğe -3'e gelince:Yeni geçerli toplamı -5 olur. ((-2)+(-3)=-5) Maksimum toplamı ise -5 önceki maksimum toplam olan 6 sayısını geçemediği için aynı kalır. [Sub:-5, Max:6]
13)Öğe 5'e gelince:Yeni geçerli toplamı 0 olur. ((-5)+5=0) Maksimum toplamı ise 0 toplamı önceki maksimum toplam olan 6 sayısını artık geçemediği için aynı kalır. [Sub:0, Max:6]
Tüm dizi için bu işleme devam edip en son öğeye gelindiği için işlem biter. Bu örnekteki maksimum alt dizi, toplamının en büyük olduğu değer 6 olduğundan buna uygun bir alt dizi [-2, 1, 6, -3, 4] olur.
Java ve C++ programlamada Kadane Algoritması şöyle çalışır:
1)İki değişkeni, max_so_far ve max_ending_here'i 0'a başlatın.
2)Diziyi soldan sağa doğru yineleyin ve her öğeyi tek tek inceleyin.
3)Her öğe için, maksimum değer ya geçerli öğe ya da geçerli öğe ile max_ending_here'in toplamı olduğundan max_ending_here'i güncelleyin.
4)Max_so_far'ı mevcut max_so_far veya max_ending_here'in maksimumu kadar güncelleyin.
5)Dizideki tüm öğeler için 3. ve 4. adımları tekrarlayın.
6)Yinelemenin sonundaki max_so_far değeri maksimum altdizi toplamı olacaktır.
#include <iostream>
using namespace std;
int maxSubarraySum(int arr[], int size) {
  int maxEndingHere = arr[0];
  int maxSoFar = arr[0];
  for (int i = 1; i < size; i++) {
      maxEndingHere = max(arr[i], maxEndingHere + arr[i]);
      maxSoFar = max(maxSoFar, maxEndingHere);
  }
  return maxSoFar;
}
int main() {
  int nums[] = {-2, -1, -3, 4, -1, 2, 1, -5, 4};
  int size = sizeof(nums) / sizeof(nums[0]);
  int maxSum = maxSubarraySum(nums, size);
  cout << "Maximum subarray sum: " << maxSum << endl;
  return 0;
}
Kaynakça:
https://www.tpointtech.com/kadanes-algorithm
https://www.simplilearn.com/kadanes-algorithm-article
https://www.interviewbit.com/blog/maximum-subarray-sum/
https://www.guru99.com/tr/largest-sum-contiguous-subarray.html
https://www.codecademy.com/resources/docs/general/algorithm/kadanes-algorithm
 

Eratosthenes Kalburu

Eratosthenes MÖ. 276-194 yılları arasında yaşamış bir Yunan bilgindir ve bilim tarihi boyunca pek çok alana önemli katkılar yapmıştır. En önemli buluşlarından biri, dünyanın çevresini etkin bir şekilde hesaplama yöntemidir. Bu yöntem kendi adıyla anılan "Eratosthenes kalburu" (veya Eratosthenes Gözü) olarak bilinir. 
Eratosthenes kalburu, antik dönemde yaşamış, matematik ve coğrafya alanlarında çalışmalarda bulunmuş Eratosthenes tarafından geliştirilmiş bir usturlab türüdür. Bir usturlab, genellikle gökyüzündeki cisimlerin yüksekliğini veya konumunu belirlemek için kullanılan bir astronomik alet türüdür. Usturlabın temel bileşenleri arasında genellikle bir halka şeklindeki ölçek, eğik bir iğne (çubuk) ve bir gözlem düzlemi yer alır. Gözlem düşey açıları ölçerken usturlabın halkasındaki ölçek ile referans alınarak gökyüzündeki nesnelerin konumları belirlenebilir. Geleneksel olarak denizcilikte de kullanılan usturlaplar, gökyüzündeki yıldızlar ve Güneş'in konumunu belirlemek için önemli bir araçtır. Eski zamanlarda oluşturulan usturlab modeli, Anadolu'da eş-benzerlik anlamına gelen "delik deseni" olarak da bilinir. Üzerinde çeşitli geometrik desenler bulunan bu modellerin genellikle astronomi bilimine ve çeşitli dini inanışlara hizmet ettiği düşünülmektedir. Anadolu'da bu delik deseni, seramiklerde, halı ve dokumalarda yaşatılarak, geometrik motiflerin kullanıldığı Anadolu çini sanatının özgün ve dikkat çekici bir özelliği haline gelmiştir. Dünyanın en eski tapınağı olarak kabul edilen, devasa taş sütunların bulunduğu dairesel yapısıyla tanınan Göbekli Tepe  de halk arasında "delik deseni" olarak da bilinir. Göbekli Tepe'deki delik desenleri, genellikle T şeklini temsil eder. Bazı araştırmacılar, bu delik desenlerinin astronomik gözlemlerle bağlantılı olduğunu düşünmektedir.
Eratosthenes kalburu, bir çeşit usturlab tekniğine dayanan dünyanın çevresini ve çapını yaklaşık olarak hesaplamak için kullanılan bir yöntemdir. Esas amacı güneş ışınlarının dik geldiği noktayı belirlemek ve mesafe ölçmek içindir. Bu yöntemde, aynı anda güneşin ışınlarına maruz kalan iki farklı noktadaki gölgelerin oluşturduğu açıya dayanarak yeryüzündeki bir noktanın enlemini hesaplamak mümkündür. Bu sayede, dünyanın çevresi ve çapı hakkında önemli bilgiler elde edilir. 
Eratosthenes, icat ettiği bu kalbur yardımıyla güneş ışınlarının dünya üzerinde dik geldiği noktayı ölçerek yaptığı hesaplamalarla dünya yüzeyinin çevresini günümüz dünyasındaki verilere göre kısmen doğru bir şekilde hesaplamış ve bugünkü coğrafyanın gelişimine önemli katkılarda bulunmuştur.
Eratosthenes'in bu kalbur yöntemini kullanması, Asvan ve İskenderiye gibi iki farklı yerleşim yerinin güneş ışınlarından nasıl etkilendiğini gözlemleyerek oldu. Raweh'deki (günümüzde Asvan) yaz günlerinde güneşin tam bir kuyu dibine düşmek suretiyle kuyunun dibini aydınlattığını gözlemledi. Ancak İskenderiye’de aynı tarihlerde güneş tam tepeden gelmediğini ve yer ile bir açı yaptığını gördü. Buna dayanarak Eratosthenes, yeryüzündeki Mesir (Assuan) şehrine dik bir kuyu (direnge) açarak, o kuyunun dibindeki çubuğa (dikme) dolan güneşin gölgesini ölçerek Güneş’in o yerden yüksekliğini hesapladı. Bu ölçüm sonucunu, yanındaki kentin gölgesiyle karşılaştırarak, kentin Güneş'e olan mesafesini hesapladı. Eratosthenes, daha sonra bu iki yerleşim yeri arasındaki mesafeyi hesapladı. Bu yöntemlere aynı şekilde devam ederek dünyanın çapını hesapladı Eratosthenes, dünyanın çevresini bulmak için bugünün biliminde bilinen trigonometrik hesaplamaların benzerlerini kullandı. Böylece dünyanın çevresini yaklaşık olarak 40000 km (39,375 km) olarak hesaplamış oldu ki bu ölçüm sonucu güncel bilgilere göre yaklaşık olarak doğrudur. 
Eratosthenes, Mısır'da gerçekleştirdiği ölçümlerde kullandığı yöntem, Firavun Ptolemy III tarafından desteklenmiştir. Eratosthenes Kalaburu, dünyanın çevresini doğru bir şekilde hesapladığı için yaşadığı dönem açısından önemli bir buluş olarak kabul edilir.
Eratosthenes'in yöntemini günümüzde kullanmak istediğimizde bu yöntem şöyle işler: İlk olarak, aynı anda güneş ışınlarının dik olarak düştüğü iki farklı konum veya noktada  (örneğin, bugün Türkiye ve Mısır arasında aynı anda iki çubuk dikilir) birer çubuk dikilir. Ardından, bu çubuklara göre güneş ışınlarından çubuğun gölgesinin uzunluğu tam olarak ölçülür. Aynı anda diğer yerde bulunan çubuğun gölgesinin uzunluğu da ölçülür. Bu sayede, iki gölge uzunluğu arasındaki farktan hareketle güneş ışınlarının bu iki noktaya geliş açıları bulunur. Bugün bildiğimiz trigonometrik toplam ve fark formülleri kullanılarak bu yerlerin güneşe uzaklıkları ve dünyanın şekli baz alınarak da dünyanın çapını ve çevresini hesaplamak mümkün hale gelir. 
Eratosthenes, asal sayıları hızlı bir şekilde belirlemek için de bir algoritma oluşturmuştur. "Eratosthenes kalburu" adı verilen yöntem ve asal sayıların tespitinde kullandığı algoritma, yazılım dünyası için bir döngü oluşturması açısından önemli bir buluştur. Bu yöntemde, bir sayı kümesindeki asal olmayan sayılar eleme yoluyla belirlenir. İlk adımda 2'den başlayarak sırasıyla tüm katları çıkarılarak elenir ve kalan sayılar asal olarak kabul edilir. Bu basit ve etkili yöntem, asal sayıları belirlemede yaygın olarak kullanılmaktadır. Eratosthenes'in keşfi, asal sayıları hızlı ve verimli bir şekilde belirlemede oldukça kullanışlıdır. Bu algoritma, bilgisayar biliminde ve kriptografi gibi alanlarda da yaygın olarak uygulanmaktadır. Eratosthenes kalburu, asal olmayan sayıları hızla eleme yöntemiyle çalışır ve büyük sayılar üzerinde de etkili bir şekilde işlev görür. 
Eratosthenes kalburu yoluyla asal sayıları bulmak için aşağıdaki adımlar sırayla izlenir:
1. İlk olarak, istenen belirli bir aralık içindeki sayıları bir liste şeklinde sıralarsınız. Örneğin 1 den 100'e kadar olan sayılardan asal olanları bulmak istiyorsak bütün bu sayılar sıralanır.
2. Listenin ikinci elemanından itibaren başlayarak, her bir sayının katlarından başlayarak listeden çıkartırsınız. Örneğin, listemizde ikinci sayı 2 olduğundan tüm 2'nin katı olan sayıları listeden çıkarırsınız. Geriye sadece tek sayılar ve 2 elemanı kalır.
3. Her seferinde bir sonraki elemandan başlayarak işlemi tekrar ederek, liste üzerinde ilerlersiniz. Her adımda yeni bir asal sayı ortaya çıkar. Listede 3 sayısına geçirip bunun katları tek tek elenir. Sonra 5 sayısına geçilip bunun katları elenir. Bu şekilde devam edilir.
4. İşlem sonucunda listenin son elemanına ulaşıncaya kadar devam edersiniz. Elenmeden kalan sayılar asal sayılardır.
Yazılım algoritması yardımıyla aşağıdaki işlem adımları ile elde edilir. 
1. adım: 2’den belirlenen bir n tamsayı değerine kadar ardışık tamsayılardan bir liste oluşturun. (n=100 olsun)
2. adım: Başlangıçta en küçük asalsayı olan 2’yi alarak işleme başlayın. 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,... Oluşturulan listeden 2’nin tüm tam katlarını bulup (4,6,8,10,12,…) işaretleyerek listeden çıkarın.
3. adım: İşaretlenmemiş bir sonraki sayıyı alın, örneğin 3 ve tüm tam katlarını (6,9,12,15,18,....) işaretleyip bunları listeden çıkarın. 
4. adım: Aynı işlemlere 3.adımı algoritma sonlanana kadar tekrarlayarak devam edin. Tümsayılar işaretlenmişse veya bir sonraki işaretlenmemiş sayı artık bulunamıyorsa durun. 
5.adım: Listede işaretlenmemiş olarak kalan sayılar, n=100 tamsayısına kadar olan tüm asal sayılar bulunmuş olur. Artık İşlem tamamlanmıştır. Kalan asal sayıları yazarak işlemi bitirin.
Bu eleme yöntemi, asal sayıları belirlemek için oldukça etkili ve hızlı bir yöntemdir. Eratosthenes kalburu, küçük aralıklardaki asal sayıları bulmak için yaygın olarak kullanılan bir algoritmadır.Büyük aralıklarda bu yöntem, matematik ve bilgisayar bilimlerinde temel bir konsept olup, bugün bile önemini korumaktadır. Eratosthenes'in bu akıllıca icadı, sayı teorisindeki gelişmelere büyük katkı sağlamıştır.

Şifreleme Çeşitleri (Kriptografi)

Değişen Matematik müfredatı (2025) ile birlikte 9.sınıf matematik derslerinde şifreleme, siber güvenlik, kodlama ve algoritma dili gibi yazılım ağırlıklı yeni üniteler eklenmiştir. Bu konulardan biri şifrelemedir. Bu yazıda şifreleme hakkında kısa bir derleme yaparak günümüzde mevcut şifreleme tekniklerinden bazılarına değinilmiştir. Konunun uzmanlarından daha detaylı bilgiler elde etmek mümkündür. Burada kısaca şifreleme nedir? Şifreleme çeşitleri nelerdir? Örnek bir şifre nasıl oluşturulur? gibi sorulara karşılık kısa bir anlatım söz konusudur. 
Şifreleme yani Kriptografi (encryption); kişisel verileri korumak için kullanılan bir kodlama ve gizleme tekniğidir. Bilgilerin gizli kalmasını sağlamak amacıyla, görünen veriler gizlenerek bunların yerine yeni harfler, sayılar ve özel karakterler kullanılarak bir şifreleme belirlenir. Bu sayede kişisel bilgilere ulaşım teorik olarak engellenmiş olur. Şifreleme işlemi, kriptografik bir anahtar kullanarak düz metni şifreli metne dönüştürür. Kriptografik anahtar, hem gönderici hem de alıcı tarafından bilinen ve kabul edilen bir dizi matematiksel değerdir. Şifreleme ve şifre çözme amacıyla kriptografi algoritmasının kullandığı sayı dizisine “anahtar” denir. Anahtar ne kadar uzunsa şifrenin kırılması da o kadar zor olur. Bir algoritmanın “n” sayısının uzunluğu kriptografik güvenliği ile doğru orantılıdır. Anahtar uzunluğu “n” sayısının bit uzunluğu olarak tanımlanır. 
Doğru anahtara sahip olan herkes, şifrelenmiş verinin şifresini çözebilir veya verileri dönüştürebilir. Bu nedenle kriptografi uzmanları sürekli olarak daha gelişmiş ve karmaşık anahtarlar geliştirmektedir. Veriler 'depolamada' (saklama alanında) veya 'aktarılırken' (iletilirken) şifrelenebilir. İki ana şifreleme sınıflandırması vardır: 
Simetrik şifrelemenin yalnızca bir anahtarı vardır ve tüm taraflar aynı gizli anahtarı kullanır. Asimetrik şifreleme adını birden fazla anahtara sahip olmasından alır: biri şifreleme, diğeri şifre çözme içindir. Şifreleme anahtarı herkese açıkken, şifre çözme anahtarı özeldir. 
| | | Devamı... 0 yorum

Çizge Kuramı (Graf Teorisi)

Graf teorisi veya çizge kuramı, grafları inceleyen matematik dalıdır. Graf, düğümler ve bu düğümleri birbirine bağlayan kenarlardan oluşan bir tür ağ yapısıdır. Bir graf veya çizge, düğümlerden (köşeler) ve bu düğümleri birbirine bağlayan kenarlardan (yaylardan, bağıntılardan) oluşur. Daha önceleri Çin, Hint ve İslam dünyasında kullanılmış olmakla birlikte literatür anlamında graf teorisinin temelinin 1736'da Leonhard Euler tarafından atıldığı söylenmektedir. "Graf" kelimesi, ilk kez 1822 yılında James Joseph Sylvester (1814-1897) tarafından kullanılmıştır. 1845 yılında Gustav Kirchhoff (1824-1887), elektrik devrelerinde akım ve gerilimleri hesaplamaya yardımcı olan ve kendi ismiyle anılan ünlü devre kuramlarını graf gösterimiyle yayımlamıştır. 1852 yılında Francis Guthrie (1831-1899), çözülmesi zor olan grafta dört renk problemini (İngiltere'nin kontluklarının haritasını renklendirirken, ortak bir sınırı paylaşan iki bölgenin aynı renk olmaması için en az dört renge ihtiyaç olduğundan hareketle "Herhangi bir haritayı renklendirmek için dört rengin yeterli olacağını varsayan problem") ortaya atmıştır. 1927 yılında Lev Semenovich Pontryagin (1908-1988), 1930 yılında ise Kazimierz Kuratowski (1896-1980), düzlemsel grafların özelliklerini bulmuşlardır. Macar matematikçi Denes König (1844-1944), graf teorisine ilişkin ilk kitabı 1936 yılında yayımlanmıştır. 
Graf (Çizge) Teorisi, çok farklı disiplinlerin çalışma alanına girmektedir. Network ağları, facebook, twitter gibi sosyal ağların kullanımı, kurye hizmetler, (travelling salesman problemi- en kısa yollardan müşteriye ulaşma), mektup dağıtımı, yol bakımı, kar temizleme, itfaiye, acil servis gibi araçların optimum güzergahları, çöp toplama, polislerin yollarda devriye gezinimi gibi pek çok alanda graf teorisi kullanılır. Sosyolojiden, bilgisayar bilimlerine, işletmeden, endüstri mühendisliğine kadar çok geniş alanlarda kullanımı olan bu teori, basitçe bir gerçek hayat probleminin çizge ile modellenmesini amaçlamaktadır. Model oluşturulduktan sonra çizge teorisinde bulunan yöntemler kullanılarak problem çözülebilmekte ve ardından da tekrar gerçek hayata uygulanabilmektedir. Graf (Çizge) teorisi temel olarak bir problemin hat/kenar (edge) ve düğümler (node) ile modellenmesi ve bu modelin bir çizge şeklinde gösterilmesi ilkesine dayanmaktadır. Çizge teorisinde tanımlı olan bazı özellikler bu modelin çözümüne ve dolayısıyla gerçek problemin çözümüne yardımcı olmaktadırlar. Yani çizge teorisinin işe yaraması için öncelikle gerçek dünyadan bir problem çizge olarak modellenir, bu model geometrik olarak çözülür ve daha sonra gerçek dünyaya uygulanır.
Graf teorisinin modern matematiksel tarihi, Königsberg köprüleri problemine dayanır. Leonhard Euler tarafından, 1736 yılında, Königsberg'in yedi köprüsü (Die Sieben Brücken von Königsberg) adında günümüzde hâlâ popülerliğini koruyan bir problem ile ilgili olarak yazılan bir makale, graf teorisinin başlangıç tarihi kabul edilir. Königsberg kentinde Eski Pregel ve Yeni Pregel nehirleri birleşerek Pregel (Pregolya) nehrini oluşturmaktadır. Bu nehirler, şehri dört bölüme ayırmaktadır ve nehir üzerinde bu bölgeleri birleştiren yedi köprü bulunmaktadır. Ortaya atılan probleme göre: Königsberg'in yedi köprüsünden sadece bir ve yalnız bir defa geçmek koşulu ile bir yürüyüş yapılabilir mi? Bu sorun üzerine kafa yoran matematikçiler, çeşitli çözüm önerileri sunmuş ve en sonunda 1736'da İsviçreli matematikçi Leonhard Euler tarafından bir makale yayınlanarak problem cevaplandırılmıştır.
| | | Devamı... 2 yorum

Algoritma Örnekleri

Bir problemin çözümüne dair işlem basamakları oluşturulabiliyorsa, o problem çözülmüş demektir. Herhangi bir programlama dilinde, işlem basamaklarını bilgisayarın anlayabileceği şekle dönüştürme yardımıyla problem çözüm işlemi başlamış olur. Bu dönüştürme işlemini kolaylaştırmak için, işlem basamaklarımızı oluştururken bilgisayar diline yakın bir dille yazmak önemlidir. Öyle ki; bilgisayara verilecek iki sayıyı toplayıp, sonucu ekrana yazacak bir program için oluşturulan işlem basamakları, 
1. Sayıları oku 
2. Sayıların toplamlarını hesapla 
3. Toplamlarını ekrana yaz şeklinde olduğunda, bu işlem basamaklarını herhangi bir programlama dilini kullanarak bilgisayara aktarmak, yeterli değişken kullanımı olmadığında daha zor olacaktır. 
Aynı işlem basamakları aşağıdaki gibi yazıldığında programlama açısından daha kolay bir durum verir.
1. Başla 
2. A sayısını oku 
3. B sayısını oku 
4. C = A + B 
5. C sayısını yaz (ekrana yaz) 
6. Dur 
 
Örneğin bir pozitif tamsayının 5 ile tam bölünüp bölünmediği belirlemek için aşağıdaki gibi bir adımlama yapılabilir. 
1. Başla
2. Pozitif bir tamsayı gir
3. sayının birler basamağını bul b=x%10
4. eğer b=5 veya b=0 ise "x, 5 ile tam bölünür" değilse "x , 5 ile tam bölünmez"
5. bitir
 
| | | | Devamı... 0 yorum

Algoritmada akış diyagramları

Algoritmada akış diyagramlarından yararlanılarak çözüm basamakları adımlandırılır. Akış diyagramı, algoritmaların şekil ve sembollerle ifade edilmesidir. Akış şemasında her adım birbirinden farklı anlamlar taşıyan şekillerden oluşur ve adımlar arasındaki ilişki oklar ile gösterilir. Kodlanacak programın akış şemasının oluşturulması, sürecin daha kolay çözümlenmesine yardımcı olur. 
| | | | Devamı... 0 yorum

Algoritma ve Özellikleri

Algoritma, belirli bir problemi çözmek veya belirli bir amaca ulaşmak için çözüm yolunun adım adım tasarlanmasıdır. Bir problemi tanımlama, nedenini açıklama, çözümü için alternatif yolları belirleme ve bu yollar arasından en uygun olanı uygulama süreçlerinin tamamı “problem çözme” olarak adlandırılır. Algoritma, bir problemi çözmek için gerekli yolun basit, net ve belirli bir sıraya göre tasarlanmış hâlidir. Matematikte ve bilgisayar biliminde bir işi yapmak için tanımlanan, bir başlangıç durumundan başladığında, açıkça belirlenmiş bir son durumunda sonlanan, sonlu işlemler kümesi algoritma içinde yer alır. Genellikle bilgisayar programlamada algoritma sıklıkla kullanılır ve tüm programlama dillerinin temeli algoritmaya dayanır. Aynı zamanda algoritma tek bir problemi çözecek davranışın, temel işleri yapan komutların veya deyimlerin adım adım ortaya konulmasıdır ve bu adımların sıralaması algoritmada oldukça önemlidir. Bir problem çözülürken algoritmik ve sezgisel (herustic) olmak üzere iki yaklaşım vardır. Algoritmik yaklaşımda da çözüm için olası yöntemlerden en uygun olan seçilir ve yapılması gerekenler adım adım ortaya konulur. Algoritmayı belirtmek için; metinsel olarak düz ifade ve akış diyagramı olmak üzere 2 yöntem kullanılır. Algoritmalar bir programlama dili vasıtasıyla bilgisayarlar tarafından işletilebilirler. 
| | | | | Devamı... 0 yorum

İsra ve Mirac

“Bir gece, kendisine bazı âyetlerimizi gösterelim diye kulunu Mescid-i Haram’dan çevresini mübarek kıldığımız Mescid-i Aksâ’ya götüren Allah tüm eksikliklerden münezzehtir. O, gerçekten her şeyi işitmekte ve görmektedir.” (el-İsra-1)
سُبْحَانَ الَّذ۪ٓي اَسْرٰى بِعَبْدِه۪ لَيْلًا مِنَ الْمَسْجِدِ الْحَرَامِ اِلَى الْمَسْجِدِ الْاَقْصَا الَّذ۪ي بَارَكْنَا حَوْلَهُ لِنُرِيَهُ مِنْ اٰيَاتِنَاۜ اِنَّهُ هُوَ السَّم۪يعُ الْبَص۪يرُ
 
İsra ve Mirac hadisesi haktır. Ayet ile sabittir. İsra olayı, içerisinde çeşitli hikmetler barındırır. Kısa ve öz bir okumayla bu hadise, Resulullah'a ﷺ ikram edilmiş büyük bir mucizedir. Allah bizleri de o büyük peygamberin ﷺ şefaatinden mahrum etmesin. Allah bizleri, ümmeti Muhammede hediye olarak verilen namazla kurtuluşa erenlerden, Allah'a  kavuşanlardan eylesin. İsra ve Mirac hadisesi ile ilgili tefsir okumalarımdan bazı özet notları aşağıda paylaştım. Allah, tüm bunların vesilesiyle dünyada ve ahirette lütuf ve ikram görenlerden kılsın.(Amin) Kadir PANCAR 
***
1) Allah'ın ﷻ gücü her şeye yeter, onun ilmi ve kudreti hiçbir şeyle sınırlandırılmaz. 
2)  Allah, ﷻ her türlü kötülüklerden ve noksanlıklardan uzaktır, Allah, ﷻ çirkinliklerden münezzehtir. 
3) İsra hadisesinin inkarı, aklen ve naklen mümkün değildir. Bunu inkar edenler, esasında nübüvveti inkar ederler.
4) İsra hadisesinin bir hediyesi olan "Namaz", müminin miracıdır. Namaz, Allah'a ﷻ dünyada kavuşmanın bir vesilesidir. 
5) Kulluk makamı (abd), yüce bir mertebedir. Allah'ın bir insanı "abd" olarak isimlendirmesi, ona izafe edilen makamın yüceliğini gösterir. "abd"(kul) sözüyle hem rûh hem de beden murad edilmiştir.
6) Allah ﷻ için zaman ve mekan kavramının boyutu bizim idrakimizden farklıdır. Kısacık zaman dilimine istediğini sığdırabilir. Nitekim gecenin az bir bölümünde İsra hadisesi vuku bulmuştur.
7) Yer ve mekan gibi kavramlar, mahlukları bağlar; uzaklık-yakınlık gibi kavramlar, akıl dairesinde bir anlamı ve sınırı olan kavramlardır. Mekansal olarak birbirine uzak gibi görünen iki mescidin yolunu bir anda katetmek, aklen mümkündür. 
8) Allah, zaman içinde zaman, mekan içinde mekan yaratır. Bunu istediği anda ona engel olacak yoktur, dilediği kuluna böyle ikram eder. 
9) Nübüvvet, en büyük mucizedir. Tasdik edilmesi ancak hidayetle mümkündür. İsra ve mirac gibi büyük bir olayın ardında bile fitne gruplarının hezeyanları, hidayetin ancak Allah'a ﷻ ait olduğunu ifade eder. 
10) Üzüntü ve neşe gibi insana has durumlar, hep aynı hal üzere devam etmez. İnsanların halleri değişkendir. Allah ﷻ bir anda bütün bu durumları değiştirebilir. Nitekim peygamberimiz ﷺ isra ve mirac ile huzur ve kuvvet bulmuş, düşmanlarına karşı cesareti ve şecaati artmıştır.
11) Ayetin (el-İsra-1) belagatında, "Sübhân" kelimesi ile Allah'ın  yüceliği ve bütün çirkinliklerden uzak olması ile başladıktan sonra gecenin az bir bölümünde yine uzaklık bildiren "uzak mescid" Aksâ’ya, Mescid-i Haram’dan kulun yürüyüşü anlatılır. Sonra birtakım ayetlerin kuluna gösterildiği ifade edilir, Resulullah ﷺ bütün bunları müşahede ettiği, ayetleri dinlediği belirtilip, ayetleri müşahedenin iki büyük unsuru olan görme ve işitme ile ilgili iki sıfat (semi ve basar) ile ayet-i kerime biter ve Allah'ın  her şeyi "işiten ve gören" olması ile birlikte ilahi mesaj aktarılır. (26/01/2025)
***
 
| | Devamı... 0 yorum

Aşağıdaki Yazılar İlginizi Çekebilir!!!