Selamun aleyküm bu makale'de sizlere 5 farklı yazılım diliyle konsola Fibonacci sayılarını yazdıracağım.
Kullanacağımız yazılım dileri :
Java, C#, Swift, C, C++
İlk önce Fibonacci dizilimini tanıyalım sonra algoritmasını bulalım ve kodları yazarak satır satır açıklayalım.
İsterseniz biraz Fibonacci sayılarını tanıyalım :
Fibonacci dizisi, her sayının kendinden öncekiyle toplanması sonucu oluşan bir sayı dizisidir.Daha iyi anlaşılabilmesi için sizlere şöyle bir görsel hazırladım :
Kullanacağımız yazılım dileri :
Java, C#, Swift, C, C++
İlk önce Fibonacci dizilimini tanıyalım sonra algoritmasını bulalım ve kodları yazarak satır satır açıklayalım.
İsterseniz biraz Fibonacci sayılarını tanıyalım :
Fibonacci dizisi, her sayının kendinden öncekiyle toplanması sonucu oluşan bir sayı dizisidir.Daha iyi anlaşılabilmesi için sizlere şöyle bir görsel hazırladım :
Fibonacci dizisi ile ilgili daha ayrıntılı bilgi almak için Vikipedi sayfası buraya tıklayarak ziyaret edebilirsiniz.
Fibonacci dizisini formülle göstermek istersek :
"n" inci Fibonacci sayısı = F olursa :
F = F(n-1) + F
Algoritması :F = F(n-1) + F
1. sayı ve 2.sayıları toplanır.
Toplanan sayılar "sonuc" isimli değişkene atanır.
Ve sonra değerler bir adım kaydırılır.
- Kaydırma işlemini şu şekilde açıklayabiliriz :
2. Sayı, 1.Sayı'ya atanır "sonuc" ise 2. sayıya atanır:
- Bu yaptığımızı a, b ve sonuc değişkenleri üzerinde yaparsak daha iyi anlayacaksınız :
a = 1. Sayı
b = 2.Sayı
sonuc = a+b ((3.Sayı) Yani sıradaki sayıyı bulduk.)
Sonra bir adım sayıları kaydırıyoruz :
a = b
b = sonuc
sonuc = a+b
Not : Bir yazılımın farklı algoritmalarla yazılabileceğini unutmayınız. Yani kendinizde farklı bir algoritma üretebilirsiniz.Toplanan sayılar "sonuc" isimli değişkene atanır.
Ve sonra değerler bir adım kaydırılır.
- Kaydırma işlemini şu şekilde açıklayabiliriz :
2. Sayı, 1.Sayı'ya atanır "sonuc" ise 2. sayıya atanır:
- Bu yaptığımızı a, b ve sonuc değişkenleri üzerinde yaparsak daha iyi anlayacaksınız :
a = 1. Sayı
b = 2.Sayı
sonuc = a+b ((3.Sayı) Yani sıradaki sayıyı bulduk.)
Sonra bir adım sayıları kaydırıyoruz :
a = b
b = sonuc
sonuc = a+b
Hadi gelin kurduğumuz algoritmayı 5 farklı yazılım diliyle yazıp satır satır açıklayalım:
Java ile:
Kod:
public class JavaFibonacciDizilimi {
public static v o i d main(String[] args) {
int a, b = 1, sonuc = 0;
// int tipinde a,b ve sonuc isimli değişkenler oluşturuyoruz.
// b değişkenini, 1'e eşitliyoruz.
// sonuc değişkenini, 0'a eşitliyoruz.
for(int i = 0; i<10; i++){
// Bir döngü oluşturuyoruz.
// int tipinde i isimli bir değişken oluşturuyoruz.
// i, 10'a eşit olana kadar döngümüz tekrarlanacak.
// i değişkenini bir arttırıyoruz.
// Bu şekilde düngünün 10 kere dönmesinş sağladık.
a = b;
// b değişkeninin değerini, a değişkenine atıyoruz.
b = sonuc;
// sonuc değişkeninin değerini, b değişkenine atıyoruz.
sonuc = a + b;
// a ile b değerlerini topluyoruz ve sonuc değişkenine atıyoruz.
System.out.println(sonuc);
// sonuc değerini konsola yazdırıyoruz.
}
}
}
C# ile:
Kod:
using System;
namespace CSharpFibonacciDizilimi
{
class MainClass
{
public static v o i d Main (string[] args)
{
int a, b = 1, sonuc = 0;
// int tipinde a,b ve sonuc isimli değişkenler oluşturuyoruz.
// b değişkenini, 1'e eşitliyoruz.
// sonuc değişkenini, 0'a eşitliyoruz.
for(int i = 0; i<10; i++){
// Bir döngü oluşturuyoruz.
// int tipinde i isimli bir değişken oluşturuyoruz.
// i, 10'a eşit olana kadar döngümüz tekrarlanacak.
// i değişkenini bir arttırıyoruz.
// Bu şekilde düngünün 10 kere dönmesinş sağladık.
a = b;
// b değişkeninin değerini, a değişkenine atıyoruz.
b = sonuc;
// sonuc değişkeninin değerini, b değişkenine atıyoruz.
sonuc = a + b;
// a ile b değerlerini topluyoruz ve sonuc değişkenine atıyoruz.
Console.WriteLine(sonuc);
// sonuc değerini konsola yazdırıyoruz.
}
}
}
}
Swift ile:
Kod:
var a = 0, b = 1, sonuc = 0
// int tipinde a,b ve sonuc isimli değişkenler oluşturuyoruz.
// b değişkenini, 1'e eşitliyoruz.
// sonuc değişkenini, 0'a eşitliyoruz.
for(var i = 0; i<10; i++){
// Bir döngü oluşturuyoruz.
// int tipinde i isimli bir değişken oluşturuyoruz.
// i, 10'a eşit olana kadar döngümüz tekrarlanacak.
// i değişkenini bir arttırıyoruz.
// Bu şekilde düngünün 10 kere dönmesinş sağladık.
a = b
// b değişkeninin değerini, a değişkenine atıyoruz.
b = sonuc
// sonuc değişkeninin değerini, b değişkenine atıyoruz.
sonuc = a + b
// a ile b değerlerini topluyoruz ve sonuc değişkenine atıyoruz.
print(sonuc)
// sonuc değerini konsola yazdırıyoruz.
}
C ile:
Kod:
// main.c
// cFibonacciDizisi
//
#include <stdio.h>
int main(int argc, const char * argv[]) {
int a, b = 1, sonuc = 0;
// int tipinde a,b ve sonuc isimli değişkenler oluşturuyoruz.
// b değişkenini, 1'e eşitliyoruz.
// sonuc değişkenini, 0'a eşitliyoruz.
for(int i = 0; i<10; i++){
// Bir döngü oluşturuyoruz.
// int tipinde i isimli bir değişken oluşturuyoruz.
// i, 10'a eşit olana kadar döngümüz tekrarlanacak.
// i değişkenini bir arttırıyoruz.
// Bu şekilde düngünün 10 kere dönmesinş sağladık.
a = b;
// b değişkeninin değerini, a değişkenine atıyoruz.
b = sonuc;
// sonuc değişkeninin değerini, b değişkenine atıyoruz.
sonuc = a + b;
// a ile b değerlerini topluyoruz ve sonuc değişkenine atıyoruz.
printf("%d \n",sonuc);
// sonuc değerini konsola yazdırıyoruz.
}
return 0;
}
</stdio.h>
C++ ile:
Kod:
//
// main.cpp
// c++FibonacciDizilimi
//
//
#include <iostream>
int main(int argc, const char * argv[]) {
int a, b = 1, sonuc = 0;
// int tipinde a,b ve sonuc isimli değişkenler oluşturuyoruz.
// b değişkenini, 1'e eşitliyoruz.
// sonuc değişkenini, 0'a eşitliyoruz.
for(int i = 0; i<10; i++){
// Bir döngü oluşturuyoruz.
// int tipinde i isimli bir değişken oluşturuyoruz.
// i, 10'a eşit olana kadar döngümüz tekrarlanacak.
// i değişkenini bir arttırıyoruz.
// Bu şekilde düngünün 10 kere dönmesinş sağladık.
a = b;
// b değişkeninin değerini, a değişkenine atıyoruz.
b = sonuc;
// sonuc değişkeninin değerini, b değişkenine atıyoruz.
sonuc = a + b;
// a ile b değerlerini topluyoruz ve sonuc değişkenine atıyoruz.
std::cout << sonuc << std::endl;
// sonuc değerini konsola yazdırıyoruz.
}
return 0;
}
</iostream>
Bu kodların konsol çıktısı şu şekilde olur : 1 1 2 3 5 8 13 21 34 55
Umarım yararlı olmuştur.
İyi çalışmalar.