Categories
Algorithms and Programming I

Final Sample Questions

Test ve Hata Ayıklama

  1. Aşağıdaki programların her biri 1’den 10’a kadar olan sayıların toplamını ekrana bastırmaya çalışıyor. Hata’ların nerede olduğunu ve nasıl düzeltileceğini açıklayınız.
  2. Aşağıdaki kod parçacıklarında derlenme hatasına neden olacak çeşitli hatalar bulunmaktadır. Sadece derlenme hatalarının nereden kaynaklandığı ve nasıl çözüleceğini yazınız. Tüm değişkenlerin tanımlanmış olduğunu varsayınız.
  3. Aşağıdaki uygulamada klavyeden alınan girişlerdeki bazı karakterleri filtreleyen bir uygulama verilmiştir. Bu filtrelemede yapılması istenen şey sadece alfabe karakterleri, rakamlar ve boşluk karakterleri geçsin, diğer karakterler filtrelenmelidir. Verilen uygulama çalışmamaktadır. Sorun(lar)’ı tespit ediniz. Örnek giriş “Saat 6:00 da bulusalim” için çıkış “Saat 600 da bululsalim”
    olmalıdır.

İşaretçiler

  1. Aşağıdaki kod parçacığının çıktısı nedir?
    #include 
    int main(){
        int i = 10;
        printf("%u",&i); 
        return 0;
    }
  2. Aşağıdaki kod parçacığının çıktısı nedir?
    #include 
    int main(){
        int i = 10;
        printf("%d",*(&i)); 
        return 0;
    }
  3. Tanımlanmış olan bir char işaretçisine malloc komutu ile 100 byte’lık bir alan tahsis ediniz. Bu 100 byte’lık alanın içerisine 0-3 arasında rasgele sayılar doldurunuz. Kullanıcıdan yeni bir giriş alınız (0-3) arasında. Alınan girişin bu alanda kaç adet olduğunu ekrana gösteriniz. Not: Dizilerin kullanımı yasaktır.
  4. Bir fonksiyona 4 int işaretçisi argüman olarak verilmektedir. Main’den kullanıcıdan alınan 3 sayı ve bir tanımlanmış tamsayıların adresleri bu fonksiyona verilmektedir. Fonksiyon tamsayı işaretçilerinin değerlerine bakarak ortanca sayıyı 4. tamsayı işaretçi argümanının içerisine yazmalıdır. Main’de içerisine yazılmış olan değişkenin değeri ekrana gösterilmelidir.

Diziler

  1. 10 elemanlı bir tamsayı dizisi oluşturunuz. Kullanıcıdan alınan girişler ile bu diziyi doldurunuz. Sonrasında kullanıcıdan bir sayı girişi daha alınız. Bu alınan son giriş sayısı dizi’nin elemanları içinde varsa ekrana “Bulundu” yoksa “Bulunamadı” yazdırılan bir uygulama geliştiriniz.
  2. 20 elemanlı bir tam sayı dizisi oluşturunuz. Dizinin elemanlarını rasgele doldurunuz. Diziyi bir fonksiyona arguman olarak gönderiniz. Fonksiyonda dizinin içerisindeki kaç adet pozitif, negatif, tek, çift ve sıfır olduğunu ekrana bastırınız.
  3. 20 elemanlı bir tam sayı dizisi oluşturunuz. Dizinin elemanlarını rasgele doldurunuz. Diziyi bir fonksiyona arguman olarak gönderiniz. Fonksiyon argüman olarak ayrıca 5 işaretçi daha almaktadır. Bunlar pozitif, negatif, tek, cift ve sifir tamsayı işaretçileridir. Fonksiyon kaç adet pozitif, negatif, tek, çift ve sıfır olduğunu bu işaretçiler ile geri döndürerek, fonksiyonun çağrıldığı main’de ekrana bastırılmalıdır.
  4. Dizideki tüm elemanları toplayıp sonucunu tamsayı olarak geri döndüren bir fonksiyon yazınız. Diziyi main’de 5 elemanlı tanımlayıp, içerisindeki değerleri 10, 20, 30, 5, 3 olarak giriniz. Dönen sonucu ekrana gösteriniz.
  5. 20 elemanlı bir dizinin elemanlarını rasgele doldurunuz. Bu dizinin en büyük, en küçük ve ortalama değerini ekrana bastıran bir uygulama geliştiriniz.
  6. 10 elemanlı bir dizi tanımlayıp içeriğini rasgele doldurunuz. Bu dizide aynı elemandan tekrar eden bir eleman veya elemanlar varsa ekrana yazdıran bir uygulama geliştiriniz.Örneğin; 3,4,5,6,7,7,8,8,1,1 dizi içeriklerine göre ekrana 7, 8 ve1 yazılmalıdır.
  7. 25 elemanlı bir dizinin bütün elemanlarını kaydıran bir uygulama geliştiriniz. Dizinin içeriğini rasgele oluşturunuz.Örnek dizi içeriği, 1, 2, 3 …. 25
    Program çalıştıktan sonraki dizi içeriği 25, 1, 2, 3 … 24
  8. İki boyutlu bir dizi oluşturunuz. Dizinin boyutları 3×3 olmalıdır.Örnek dizi içeriği1, 2, 3
    4, 5, 6
    7, 8, 9

    Bu dizi aslında bir matristir. Bu matrisin simetrik olup olmadığını bulan bir uygulama geliştiriniz. Ekrana simetrik veya simetrik değil uyarıları basmalıdır.

    Not: Transpozu kendisine eşit olan matrislere simetrik matris denir. Simetrik matris örnekleri

  9. Kullanıcıdan alınan sayılar ile doldurulan 3×3 boyutlu 2 adet matrisi toplayan ve çarpıp sonuçlarını ekrana gösteren bir uygulama geliştiriniz.
  10. 9 elemanlı bir dizi tanımlayıp, içeriğini rasgele oluşturunuz. Dizinin ortanca elemanını ekrana yazdırınız. Bu işlem için öncelikle dizinin elemanlarını değerlerine göre sıralamalısınız. Bunun için bir sıralama algoritması kullanılmalıdır. “Selection Sort” algoritmasını kullanarak işlemi gerçekleştiriniz (Selection sort algoritmasını araştırınız).

Özyinelemeli Fonksiyonlar: 

  1. Aşağıdaki özyinelemeli fonksiyon ile ifade edilmiş kod parçacığının, özyinelemesiz olan karşılığını yazınız.

    Fibonacci serilerinin N. elemanını bulan özyinelemeli olarak yazınız.
  2. Aşağıdaki özyinelemeli fonksiyon ile ifade edilmiş kod parçacığının, özyinelemesiz olan karşılığını yazınız.

  3. Aşağıdaki özyinelemeli fonksiyona göre;
    arg değerinin sonsuz döngüye sokabileceği bir değer var mıdır? Varsa nedir?

    func(10) değeri ne döndürmektedir?

Karakterler, Girdi/Çıktı Formatlama, Dosya Okuma ve Yazma

  1. Aşağıda yanında satır sayısı verilmiş C kodundaki;
    /*  1 */ #include 
    /*  2 */ int main() {
    /*  3 */    FILE *textfile;
    /*  4 */    int score;
    /*  5 */    int s[10];
    /*  6 */    int n = 0;
    /*  7 */    int i;
    /*  8 */    textfile = fopen("source.txt", "r");
    /*  9 */    if (textfile == NULL) {
    /* 10 */       printf("Can't open scores.txt");
    /* 11 */       exit(1);
    /* 12 */    }
    /* 13 */    for (;;) {
    /* 14 */       fscanf(textfile, "%i", &score);
    /* 15 */       if (score == -1) break;
    /* 16 */       s[n] = score;
    /* 17 */       n++;
    /* 18 */    }
    /* 19 */    close(textfile);
    /* 20 */    
    /* 21 */    s[n] = 99;
    /* 22 */    n++;
    /* 23 */    
    /* 24 */    textfile = fopen("source.txt", "w");
    /* 25 */    for (i = 0; i < n; i++) {
    /* 26 */       fprintf(textfile, "%i ", s[i]);
    /* 27 */    }
    /* 28 */    fprintf(textfile, "-1");
    /* 29 */ }
    
    8-12. satırlar arasında ne yapılmaktadır?
    13-19. satırlar arasında ne yapılmaktadır?
    21-22. satırlar arasında ne yapılmaktadır?
    24-28. satırlar arasında ne yapılmaktadır?
    source.text dosyasının içeriği
    90 87 56 78 -1
    
    ise, program çalıştıktan sonra ne olacaktır?
    Program değişmiş olan source.text ile tekrar çalıştırıldığında source.text dosyasının içeriği ne olacaktır?
  2. Bir dosyadaki içeriğin tamamını tersten diğer bir dosyaya yazdıran uygulamayı geliştiriniz.Örn giris dosyası içeriği abcdef
    Beklenen çıkış dosyası fedcba
  3. Bir kaç cümle içeren bir metin dosyası hazırlayınız. Tüm harler küçük olmalıdır. Hazırlanmış olan metin dosyasını alıp, her kelimenin ilk harfini büyük harf ile değiştirerek farklı bir dosyaya yazan bir uygulama geliştiriniz. (İpucu, kelimenin başı olup olmadığına, okunan bir önceki karakterin boşluk olup olmamasına göre karar verebilirsiniz)

C Yapıları

  1. insan isminde bir struct tanımlayıp, struct’ın elemanları olarak boy ve kilo floating point elemanları tanımlayın. Kullanıcıdan giriş olarak iki floating point sayı alıp bu elemanların üzerine yazınız. Sonrasında bu struct’ın elemanları ile BMI hesaplamasını ekrana gösteriniz.BMI  = kg / (boy * boy), Not: Boy mt cinsinden olmalıdır.
  2. Öğrencilerin fizik, kimya ve biyoloji derslerinin notlarını içeren ogrenci isminde bir struct tanımlayınız. Bu struct’tan 25 boyutunda bir dizi tanımlayıp, bu dizinin içeriğini rasgele doldurunuz. 25 öğrencinin ortalama fizik, kimya ve biyoloji notlarını ekrana gösteriniz.
  3. Tarih isimli bir stuct tanımlayıp elemanlarını tamsayı olarak gun, ay ve yil olarak tanımlayınız. İki struct tanımlayıp ilkine 3, 5,.2000 ikincisine ise 6, 11, 2020 tanımlayınız. Bir yılı 365 gün ve bir ayı 30 gün olarak kabul ederek, verilen iki struct arasındaki kaç gün fark olduğunu hesaplayıp ekrana bastırınız.
  4. Tarih isimli bir struct oluşturun. Elemanları tamsayı olarak gun, ay ve yil olsun. Main’de tarih struct’ı olarak tanımlanmış elemanın gun, ay ve yıl değerlerine 12, 10, 2000 yazınız. Bir tarih struct’ı ve tamsayı girişi alan bir fonksiyon yazınız. Bu fonksiyon aldığı tamsayı gün’ü ifade etmektedir. Aldığı struct’ın içerisindeki tarihin üzerine, aldığı gün sayısını ekleyip, yeni tarihi ekrana bastıran bir uygulama geliştiriniz. Ay 30 gün, yıl 365 gün olduğunu kabul ediniz.

Önişlemler ve Diğer Konular

  1. Önişlemci nedir?
  2. Makro ve fonksiyon arasındaki farklar nedir?
  3. Bir dikdörtgenin en ve boyunu alarak alanını hesaplayan bir makro yazınız
  4. İki sayının ortalamasını döndüren bir makro yazınız
Categories
Algorithms and Programming I

Midterm Sample Questions

Akış Diyagramları

  1. 1’den 10’a kadar olan sayıların karesini hesaplayan programın akış diyagramını çiziniz?


    Flowchart uygulaması çözüm dosyasını indirmek için tıklayınız (Sağ tıklayıp, bağlantıyı farklı kaydet’e tıklayın).
  2. 3’ten 9’a kadar olan sayıların toplamını ekrana yazdıran programın akış diyagramını çiziniz?

    Flowchart uygulaması çözüm dosyasını indirmek için tıklayınız (Sağ tıklayıp, bağlantıyı farklı kaydet’e tıklayın).
  3. 1’den 100’e kadar olan sayılardan asal sayı olanları ekrana yazdıran programın akış diyagramını çiziniz?

    Flowchart uygulaması çözüm dosyasını indirmek için tıklayınız (Sağ tıklayıp, bağlantıyı farklı kaydet’e tıklayın).
  4. 0’dan 100’e kadar olan sayıları küçükten büyüğe doğru sıralayan programın akış diyagramını çiziniz?

    Flowchart uygulaması çözüm dosyasını indirmek için tıklayınız (Sağ tıklayıp, bağlantıyı farklı kaydet’e tıklayın).
  5. 0’dan 100’e kadar olan sayıları büyükten küçüğe doğru sıralayan programın akış diyagramını çiziniz?

    Flowchart uygulaması çözüm dosyasını indirmek için tıklayınız (Sağ tıklayıp, bağlantıyı farklı kaydet’e tıklayın).
  6. Aşağıda örneği verilen programın akış diyagramını çiziniz?
    1 * 6 = 6

    2 * 6 = 12

    12 * 6 = 72


    Flowchart uygulaması çözüm dosyasını indirmek için tıklayınız (Sağ tıklayıp, bağlantıyı farklı kaydet’e tıklayın).

  7. Girilen 3 sayının ortancasını bulan programın akış diyagramını çiziniz.
  8. Sıcaklık girişi alan, sıcaklık değeri 32’den büyük ise “sıcak” yazan, değilse 18’den büyükse “normal” yazan, değilse “soğuk” yazan programın akış diyagramını çiziniz.
  9. 1 vize 1 final yapılan bir okulda, final’e girmek için vizeden en az 50 almış olmak gerekmektedir. Vize notu 50 den aşağıda ise “kaldı” yazan, değilse vize notunun %40’ı ve final notunun %60’ı toplandığında 50 den yukarı ise “geçti”, değilse “kaldı” yazan programın akış diyagramını çiziniz.

Değişkenler ve Operatörler

  1. Kullanıcıdan bir tam sayı alınız. Alınan tam sayı Fahrenheit cinsinden sıcaklığı temsil etmektedir. Fahrenheit’ten Celsius’a dönüşüp yaparak, sıcaklığı ekrana Celsius cinsinden yazan bir uygulama geliştiriniz. C = 5.0 / 9.0 * (F – 32) formülü ile bulunmaktadır
  2. İki kenarının uzunluğu cm cinsinden tam sayı olarak alınan bir diktörtgenin alanını bulan programı yazınız.
  3. Bir üçgenin iki iç açısını kullanıcıdan tam sayı olarak alıp, diğer açısını ekrana çıktı veren uygulamayı yazınız. İç açılar toplamı 180 derecedir.
  4. Günümüzde bir litre benzinin fiyatı 6TL’dir. Kullanıcıdan gidilecek km bilgisini ve arabanın 100 km’de kaç lt benzin harcadığını floating sayı olarak alıp. Gidilecek KM göre kaç liralık benzin harcayacağını ekrana gösteren bir uygulama yazınız.

Seçim ve Kontrol Yapıları

  1. Kulanıcıdan alınan 3 sayının en büyüğünü bulan programı yazınız.
  2. Kullanıcıdan bir tam sayı alınız. Alınan tamsayının faktöriyelini ekrana bastıran uygulamayı yazınız.
  3. Sıcaklık girişi alan, sıcaklık değeri 32’den büyük ise “sıcak” yazan, değilse 18’den büyükse “normal” yazan, değilse “soğuk” yazan programını geliştiriniz.
  4. -1 girilene kadar, sürekli sayı alıp bir değişkenin üzerinde toplayan bir uygulama geliştiriniz. Uygulama -1 sayısını aldığı zaman önceden girilmiş olan sayıların toplamını ekrana yazmalıdır.
  5. 9999 girilene kadar, daha önceki girilen sayıların ortalamasını ekrana bastıran bir uygulama geliştirin. Uygulama 9999 sayısını aldığı zaman sayıların ortalamasını ekrana yazdırmalıdır.
  6. Kullanıcıdan iki tamsayı alınız. Bu iki tam sayı arasındaki çift sayıların toplamını ekrana yazdıran bir uygulama geliştiriniz. İlk sayı küçük, ikinci sayının büyük girileceğini varsayabilirsiniz.
  7. Aşağıdaki örüntüyü oluşturacak programı döngü kurarak yazınız. 1 * ile başlayıp, 10 yıldız ile bitmektedir.

    *
    **
    ***
    ****
    *****
    ******
    *******
    ********
    *********
    **********

  8. Aşağıdaki örüntüyü oluşturacak programı döngü(ler) kurarak yazınız.

    *
    ***
    *****
    *******
    *********
    *******
    *****
    ***
    *

  9. Kullanıcıdan -1 girişi gelen kadar 1 ile 5 arasında sayılar alın. Bu sayılardan kaç adet geldiğini sürekli değişkenlerde toplayın. Örn. 1 sayısından 25 defa girildiğini, 2 sayısından 30 defa girildiğini … tutan değişkenleriniz olsun. -1 girildiğinde, ekrana
    1: *******************************
    2: ***************
    3: **************************************
    4: **************
    5: **
    gibi, kaç adet geldi ise, ekrana o kadar * bastıran uygulamayı geliştiriniz.
  10. Bir üçgenin kenar uzunluklarının koşulu aşağıdaki şekilde verilmektedir.


    Kullanıcıdan üç tamsayı alıp, bu kenar ölçüleri ile geçerli bir üçgen olup olmayacağını ekrana yazan bir uygulama geliştiriniz.

Fonksiyonlar

  1. Bir otoparkta giriş ücreti 10TL’dir. Her bir saat için ek 2 TL ücret alınmakta ve 24 saat içerisinde en fazla 30 TL’lik ücret istenmektedir. Yani ücret 30TL’e geldiğinde 24 saat içinde 30TL’i aşmamaktadır. Buna göre ucretHesapla isminde bir fonksiyona, main’den alınan kaldığı saat değerini argüman olarak gönderip otopark ücreti hesapladıktan sonra mainden ekrana yazdıran bir uygulama geliştiriniz.

    Örnek çıktı

    Kaldığı saat 3, 16 TL
    Kaldığı saat 4, 18 TL
    Kaldığı saat 20, 30 TL
    Kaldığı saat 25, 32 TL

  2. Dik bir üçkenin, dik kenarları kullanıcıdan tam sayı olarak alınıyor. hipotenusHesapla fonksiyonu, iki tam sayı argüman almaktadır. Aldığı argümanlar ile hipotenüs’ü geri döndürmektedir. Mainden hipotenusHesapla fonksiyonuna argümanları gönderip, döndürdüğü sonucu ekrana bastıran bir uygulama yazınız. İpucu: Karakök için math.h kütüphanesinin altındaki sqrt fonksiyonunu kullanabilirsiniz.

  3. Bir sayının tersini alan tersiniAl isminde bir fonksiyon yazınız. Örneğin 7654 sayısı fonksiyona argüman olarak verildiğinde, fonksiyon geriye 4567 sayısını geri döndürmelidir. Fonksiyona giriş için main’den kullanıcı girişi alınız, fonksiyonun çıktısını ekrana bastırınız.
  4. Öğrencilerin notlarının değerlendirileceği bir ogrenciDegerlendir isminde bir fonksiyon yazınız. Bu fonksiyon argüman olarak 4 tam sayı girişi alsın. Bu tam sayı girişleri öğrencilerin notlarını ifade etmektedir. Notların ortalamasını alıp,

    90-100 arasında ise 5,
    80-89 arasında ise 4,
    70-79 arasında ise 3,
    60-69 arasında ise 2,
    50-59 arasında ise 1,
    hiçbiri değilse 0

    döndüren bir fonksiyon yazınız.
    Bu fonksiyona mainde kullanıcıdan alınan 4 girişi argüman olarak veriniz. Fonksiyonun döndürdüğü sayıyı ekrana bastırınız.

  5. Rand fonksiyonu ile rasgele sayılar üretilebilmektedir. Rand fonksiyonu kullanarak bir döngü içerisinde 100 defa, bir paranın yazı veya tura gelme durumunu sayınız. Bunun için rand fonksiyonunu geri döndürüğü değerin %2 sini alabilirsiniz. Dönecek olan 0 ve 1’lerin gelme sıklıklarını değişkenlerde sayınız. 100 adet denemede, kaç defa 0 kaç defa 1 geldiğini ekrana bastıran bir kod yazınız. İpucu, random sayı üretimi için kodun başında srand( time( NULL ) ); tanımlaması yapılmalıdır. stdlib.h ve time.h kütüphaneleri uygulamaya eklenmelidir.
Categories
Algorithms and Programming I

Exams and Sample Questions

Vize

Final

Categories
Algorithms and Programming I

Labs

LabKonuTarihİndirme
1Değişkenler22.10.2019
2Seçim ve Kontrol Yapıları5.11.2019
3Fonksiyonlar12.11.2019
4Test ve Hata Ayıklama26.11.2019
5İşaretçiler3.12.2019
6Diziler10.12.2019
7Özyinelemeli Fonksiyonlar17.12.2019
8Karakterler, Girdi/Çıktı Formatlama, Dosya Okuma ve Yazma24.12.2019
9C Yapıları31.12.2019
Categories
Algorithms and Programming I

Tools

Bu sayfada ders içeriklerine destek olması amacıyla sunulmuş çeşitli araçlar bulunmaktadır. LAB, ödev ve vize ve final sınavlarına hazırlık için kullanılacaktır.

Araç AdıİçerikAdres
Akış Diyagramı UygulamasıAkış diyagramlarının öğrenilmesinde faydalı bir araçtır. Aracın kullanım kılavuzuna erişmek için tıklayınızİndirme
Categories
Algorithms and Programming I

Feedback

Ders hakkında geri bildirimleriniz önemlidir.

Kayıtlı öğrencilerin her hafta geri bildirimleri için LMS sistemi üzerinden “Geri Bildirim Formu” açılacaktır. 

Her doldurulan geribildirim için 0.5 puan sene sonu notuna eklenecektir.

Anonim olarak geri bildirimde bulunmak için aşağıdaki linki kullanabilirsiniz.

https://docs.google.com/forms/d/e/1FAIpQLSd23R8gvWSKOiA5h3YC6Cdgq9iZ-En9I-5Y1wR9AwKhAXGaTA/viewform?vc=0&c=0&w=1

Categories
Algorithms and Programming I

Grades

Categories
Algorithms and Programming I

LMS and Piazza

Öğrencilerin soru sorup yanıt alabileceği bir soru cevap sistemi sunulmaktadır. Ders duyuruları, öğrenci soruları ve cevapları için bir platformdur. Aşağıdan erişebilirsiniz. 

https://piazza.com/class/k1gtkm99i1vl9

LMS (Learning Management System), bazı ödevlerin teslimi için LMS sistemi üzerinden olması istenecektir.

Categories
Algorithms and Programming I

Projects

2019-2020 Yılı Verilen Projeler ve Öğrencilerin Hazırladığı Proje Teslim Dosyaları:

  • Yapay Zeka ile Kanser Tespiti

Bu proje yapay zeka uygulamalarında kullanılan bir algoritma olan kNN (k Nearest Neighborhood, En Yakın k Komşu) algoritması gerçeklenecektir. Gerçeklenen algoritma ile, UC Irvine Üniversitesi’nin sağlamış olduğu Göğüs Kanseri verileri işlenecektir. Hasta olup olmadığı belli olmayan bir kişinin verileri sisteme beslenerek, hastalık tahmini yapılacaktır.

Detaylı proje spesifikasyonu için;

http://levent.tc/files/courses/algorithms_and_programming_i/projects/project1/BLM103_proje1_yapay_zeka.pdf

  • İlhan Ersoy, Hasan Demir


Rapor: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_yapay_zeka_rapor_ilhan_hasan.pdf

Sunum: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_yapay_zeka_sunum_ilhan_hasan.pdf

Kaynak Kodlar: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_yapay_zeka_kaynakkod_ilhan_hasan.c

Github: https://github.com/ilhan-ersoy/Yapay-Zeka-ile-Kanser-Tespiti—ilhan-Ersoy-Hasan-Demir

Youtube: https://www.youtube.com/watch?v=iAQvrZIx6uI
 

  • Özlem Çalı, Deniz Uzun
     

Rapor: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_yapay_zeka_rapor_ozlem_deniz.pdf

Sunum: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_yapay_zeka_sunum_ozlem_deniz.pdf

Kaynak Kodlar: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_yapay_zeka_kaynakkod_ozlem_deniz.c

Github: https://github.com/ozlemcali/Yapay-Zeka-le-Kanser-Tespiti

Youtube: https://www.youtube.com/watch?v=bKQm0-GV7e8
 

  • Evrim Arda Kalafat, Arda Alhan
     

Rapor: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_yapay_zeka_rapor_evrim_arda.pdf

Sunum: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_yapay_zeka_sunum_evrim_arda.pdf

Kaynak Kodlar: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_yapay_zeka_kaynakkod_evrim_arda.c

Github: https://github.com/rhgod/Yapay_zeka_ile_kanser_tespiti

Youtube: https://www.youtube.com/watch?v=CfSBGO9qAhU

  • Ekrem Büyükkaya, Mustafa Berk Taşkın


Rapor: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_yapay_zeka_rapor_ekrem_mustafa.pdf

Sunum: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_yapay_zeka_sunum_ekrem_mustafa.pdf

Kaynak Kodlar: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_yapay_zeka_kaynakkod_ekrem_mustafa.rar

Github: https://github.com/ekrembk/fbu-blm103

Youtube: https://www.youtube.com/watch?v=9veZF0cZj7U


  • Görüntü İşleme Filtreler

Bu projede görüntü işleme uygulamalarında sıklıkla kullanılan bazı filtreler gerçeklenecektir. Filtreler, görüntüyü yumuşatma, görüntüdeki gürültüleri azaltma, kenar bulma, görüntü keskinleştirme ve inceltme olarak sıralanabilir.

Detaylı proje spesifikasyonu için;

http://levent.tc/files/courses/algorithms_and_programming_i/projects/project2/BLM103_proje2_goruntu_isleme.pdf


  • Kriptografi: Sezar Şifreleme ve Çözme

Tarihte ilk bilinen şifreleme yöntemi olan Sezar şifreleme yöntemi ile şifreleme ve çözme yapılacaktır. Bu şifrede, her harf o harften birkaç sonraki harf kullanılarak yazılır. Bir metin içeren dosya okunup, şifrelenerek kaydedilecektir. Şifrelenmiş dosyalar çözülerek kaydedilecektir. 

Detaylı proje spesifikasyonu için;

http://levent.tc/files/courses/algorithms_and_programming_i/projects/project3/BLM103_proje3_kriptografi.pdf

  • Aysen İpek Çakır, İrem Kalkanlı

Rapor: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_yapay_zeka_rapor_aysen_irem.pdf

Sunum: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_yapay_zeka_sunum_aysen_irem.pdf

Kaynak Kodlar: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_yapay_zeka_kaynakkod_aysen_irem.c

Github: https://github.com/iremkalkanli/BLM-103-Sezar-Sifreleme

Youtube: https://www.youtube.com/watch?v=S0dbjRSvVsA


  • RLE Veri Sıkıştırma

RLE (Run Length Encoding) kayıpsız bir sıkıştırma yöntemidir. Birçok büyük sıkıştırma algoritmasının alt algoritmalarındandır (Örn. JPEG sıkıştırma). Veri içindeki tekrarları tespit eder ve tekrarları ortadan kaldırarak veri boyutunu azaltır. Bu projede verilecek test dosyası RLE algoritması ile sıkıştırılarak kaydedilecek. Sıkıştırılmış olan dosya tekrar çözülerek orijinal dosya geri elde edilecektir. 

Detaylı proje spesifikasyonu için;

http://levent.tc/files/courses/algorithms_and_programming_i/projects/proje4/BLM103_proje4_veri_sikistirma.pdf

  • Ahmet Hazar Haspolat, Ömer Sait Yorulmaz


Rapor: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_rle_rapor_ahmet_omer.pdf

Sunum: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_rle_sunum_ahmet_omer.pdf

Kaynak Kodlar: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_rle_kaynakkod_ahmet_omer.c

Github: https://github.com/espeniola/Run-Length-Encoder-Decoder

Youtube: https://www.youtube.com/watch?v=DoMQBqVTZ8I

  • Berk Tunç, Cüneyt Balcı


Rapor: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_rle_rapor_berk_cuneyt.pdf

Sunum: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_rle_sunum_berk_cuneyt.pdf

Kaynak Kodlar: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_rle_kaynakkodlar_berk_cuneyt.c

Github: https://github.com/cuneytbalci/FBU-RleVeriSikistirma

Youtube: https://www.youtube.com/watch?v=ptir-Scy2WY


  • Pong Oyunu

Pong Oyunu, 2 boyutlu grafiklere sahip bir tenis oyunudur. Tek kişilik bir oyundur. Bilgisayar’a karşı yarışılır. Görsel içeriğin hazırlanması için SDL (Simple DirectMedia Layer) kütüphanesi kullanılmaktadır. Verilen başlangıç tasarımının üzerine bilgisayar’ın otonom hareketlerini yapacak bir algoritma geliştirilecektir.

Detaylı proje spesifikasyonu için;

http://levent.tc/files/courses/algorithms_and_programming_i/projects/proje5/BLM103_proje5_pong_oyunu.pdf

  • Ogün Berat Gürses, Mehmet Çolak


Rapor: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_pong_rapor_ogun_mehmet.pdf

Sunum: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_pong_sunum_ogun_mehmet.pdf

Kaynak Kodlar: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_pong_kaynakkod_ogun_mehmet.c

Github: https://github.com/Siencer/BLM-103-PONG-OYUNU

Youtube: https://www.youtube.com/watch?v=dwF2nQ1UKfw
 

  • Serhat Erdoğan, Hüseyin Berk Işıldak


Rapor: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_pong_rapor_serhat_huseyin.pdf

Sunum: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_pong_sunum_serhat_huseyin.pdf

Kaynak Kodlar: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_pong_kaynakkod_serhat_huseyin.c

Github: https://github.com/serhaterdogan77/pongOyunu

Youtube: https://www.youtube.com/watch?v=XQANx7UP2Xs

  • Mert Meriç Karadeniz, Mehmet Rauf Füzun


Rapor: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_pong_rapor_mert_mehmet.pdf

Sunum: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_pong_sunum_mert_mehmet.pdf

Kaynak Kodlar: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_pong_kaynakkod_mert_mehmet.c

Github: https://github.com/Nygma23/fbu-pong

Youtube: https://www.youtube.com/watch?v=Hlm5o6wdOWs


  • Adam Asmaca Oyunu

Adam asmaca oyunu, daha önceden belirlenmiş olan bir kelimenin tahmin edilmesine dayalı bir oyundur. Oyun başladığında belirlenmiş olan gizli kelimenin harflerinin kullanıcıdan tahmin edilmesi istenmektedir. Kelimenin harfi doğru tahmin edildiğinde ilgili harfler yerleri ile birlikte gösterilir. Yanlış tahmin edildikçe ekrana adım adım asılan bir adam çizdirilir. 

Detaylı proje spesifikasyonu için;

http://levent.tc/files/courses/algorithms_and_programming_i/projects/proje6/BLM103_proje6_adam_asmaca.pdf

  • Ahmet Batuhan Yılmaz, Hayat Zehra Demir


Rapor: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_adam_asmaca_rapor_ahmet_hayat.pdf

Sunum: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_adam_asmaca_sunum_ahmet_hayat.pdf

Kaynak Kodlar: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_adam_asmaca_kaynakkod_ahmet_hayat.c

Github: https://github.com/lashraelrx/adamasmacafb-

Youtube: https://www.youtube.com/watch?v=CtYxN6W07-w

  • Erdem Şentürk, Alp Yılmaz


Rapor: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_adam_asmaca_rapor_erdem_alp.pdf

Sunum: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_adam_asmaca_sunum_erdem_alp.pdf

Kaynak Kodlar: http://levent.tc/files/courses/algorithms_and_programming_i/projects/2019/BLM103_adam_asmaca_kaynakkod_erdem_alp.c

Github: https://github.com/erdem106/BLM-103-Adam-Asmaca-Erdem-Alp

Youtube: https://www.youtube.com/watch?v=GlY2XJjHbGo

Categories
Algorithms and Programming I

Homeworks

ÖdevKonuTarihSon Teslim TarihiTeslim YöntemiİndirmeÇözüm
1Akış Diyagramları15.10.201922.10.2019, Ders Saatleri İçerisindeYazılı Olarak Ders Sınıfında Teslim
2Seçim ve Kontrol Yapıları5.11.201912.11.2019, Ders Saatleri İçerisindeYazılı Olarak Ders Sınıfında Teslim
3Fonksiyonlar12.11.201919.11.2019, Ders Saatleri İçerisindeYazılı Olarak Ders Sınıfında Teslim
4İşaretçiler3.12.201910.12.2019, Ders Saatleri İçerisindeYazılı Olarak Ders Sınıfında Teslim
5Diziler10.12.201917.12.2019, Ders Saatleri İçerisindeYazılı Olarak Ders Sınıfında Teslim
6Özyinelemeli Fonksiyonlar17.12.201924.12.2019, Ders Saatleri İçerisindeYazılı Olarak Ders Sınıfında Teslim