ek olarak şunu da belirteyim, temel olarak birçok yazılım dilinde (benim bildiklerimde en azından) belli başlı fonksiyonlar var.
bunlar eğer sorgusu, for döngüsü, while döngüsü, veri girme ve veri yazdırma işlemleri, matematiksel işlemler. bunları bildikten sonra yazılım diline özel fonksiyonlar bu saydıklarımın pratikleşmiş halidir. algoritma mantığını bu fonksiyonlar üzerinden oturtursan diğerlerini @hikmetkaraman'ın dediği gibi google'da arayarak da bulabilirsin.
basit bir örnek verecek olursak, iki tane seri düşünelim (matematikteki kümeler gibi)
a: (1, 2, 3, 4, 5, 6, 7, 8, 9)
b: (2, 4, 6, 8) olsun mesela
bu iki kümenin kesişimini yukarıda belirttiğim sorgularla şu mantıkla bulabilirsin:
for i=1'den 9'a kadar (a kümesinin elemn sayısı)
for j=1'den 4'e kadar (b küme eleman sayısı)
eğer a[i] = b[j] ise,
kesişim kümesine a[i] elemanını ekle
değilse next j,
next i,
falan filan. bu kod yalancı kod olarak geçer. Önemli olan bu algoritmik yapıyla bu kodu oluşturmak. ardından eğer'in, for'un yerine neler gelecek bunu kaynaktan bulacaksın.
bu örneğe göre mesela bir kodlama dilinde direkt kesişim kümesini veren fonksiyon da olabilir. böyle kod yazmana gerek kalmaksızın atıyorum;
c[] = intersection(a[], b[]) gibi bir fonksiyon kullanıp tek satırda işi bitirirsin.
0