Cohorts
  • Discover
  • About Us
  • Blog
  • Patika.dev
  • Web3

Java101

Eğitime Genel Bakış ve Öneriler
Temel Kavramlar
Java Nedir
Java Geliştirme Araçlarının Kurulumu

Java'da Yazım ve İsimlendirme Kuralları
Main Metodu ve Kullanımı
Programlamaya Başlangıç
Yorum Satırları

Değişkenler ve Veri Tipler
Byte, Short, Int ve Long Veri Tipleri
Float ve Double Veri Tipleri
Char ve Boolean Veri Tipleri
String Veri Tipi
Temel Operatörler
Kullanıcıdan Veri Alma
Pratik - Not Ortalaması Hesaplayan Program
Pratik - KDV Tutarı Hesaplayan Program
Pratik - Dik Üçgende Hipotenüs Bulan Program
Pratik - Taksimetre Hesaplayan Program
Pratik - Dairenin Alanını ve Çevresini Bulan Program
Ödev - Vücut Kitle İndeksi Hesaplayan Program
Ödev - Manav Kasa Programı

Karşılaştırma Operatörleri
Mantıksal Operatörler
Kod Blokları (Scope)
If ve Else Blokları
Switch-Case Yapısı
Pratik - Hesap Makinesi
Pratik - Kullanıcı Girişi
Pratik - Sınıfı Geçme Durumu
Pratik - Hava Sıcaklığına Göre Etkinlik Önerme
Pratik - Sayıları Büyükten Küçüğe Sıralama
Pratik - Burç Bulan Program
Ödev - Uçak Bileti Fiyatı Hesaplama
Ödev - Çin Zodyağı Hesaplama
Ödev - Artık Yıl Hesaplama

Döngü Yapıları
While Döngüsü
Do-While Döngüsü
For Döngüsü
For ve While Arasındaki Farklar
Continue ve Break Komutları
Pratik - Girilen Sayıya Kadar Olan Çift Sayıları Bulan Program
Pratik - Tek Sayıların Toplamını Program
Pratik - Girilen Sayıdan Küçük 2’nin Kuvvetlerini Bulan Program
Pratik - Faktöriyel Hesaplayan Program
Pratik - Üslü Sayı Hesaplayan Program
Pratik - Armstrong Sayıları Bulan Program
Pratik - Harmonik Sayıları Bulan Program
Pratik - Yıldızlar ile Üçgen Yapımı
Pratik - ATM Projesi
Pratik - EBOB-EKOK Bulan Program
Ödev - Girilen Sayılardan Min ve Max Değerleri Bulma
Ödev - Mükemmel Sayı Bulan Program
Ödev - Ters Üçgen Yapımı
Ödev - 1-100 Arasındaki Asal Sayıları Bulan Program
Ödev - Fibonacci Serisi

Metot Tanımı
Return ve Void Tanımı
Metotlarda Overloading (Aşırı Yüklenme)
Metotlarda Local Değişken Yapıları
Recursive (Özyineli) Metotlar
Pratik - Palindrom Sayılar
Pratik - Recursive ile Fibonacci Serisi Bulan Program
Pratik - Gelişmiş Hesap Makinesi
Ödev - Üs Hesabı Yapan Program
Ödev - Asal Sayı Bulan Program
Ödev - Desene Göre Metot Oluşturma

Sınıf ve Nesne Kavramları
Nesne Yönelik Programlama Nedir ?
Modelleme ve Soyut Düşünme

Sınıf Tanımları
Nesne Oluşturma ve Sınıf Metotları
Constructor (Yapıcı) Metot Kullanımı
Pratik - Öğrenci Bilgi Sistemi
Pratik - Boks Oyunu
Ödev - Maaş Hesaplayıcı

Dizilerin Genel Mantıkları
Tek Boyutlu Diziler
Çok Boyutlu Diziler
ForEach Kullanımı
Arrays Sınıfı ve Metotları
Pratik - Dizideki Elemanların Ortalamasını Bulan Program
Pratik - Dizideki Maksimum ve Minimum Değerleri Bulan Program
Pratik - Çok Boyutlu Diziler ile A Harfi Yazdıran Program
Pratik - Dizideki Tekrar Eden Sayıları Bulan Program
Ödev - Dizideki Elemanları Sıralama
Ödev - Dizideki Elemanların Frekansı
Ödev - Matris Transpozunu Bulma

Math Sınıfı ve Metotları
String Sınıfı ve Metotları
Pratik - Sayı Tahmin Oyunu
Pratik - Palindromik Kelimleri Bulan Program

Mayın Tarlası Oyunu

Java dilinde Mayın Tarlası oyunu yapmanızı bekliyoruz.

Oyun Kuralları:

  • Oyun metin tabanlıdır.
  • Proje çift boyutlu diziler kullanılarak yapılmalıdır.
  • MineSweeper sınıfı içerisinde tasarlanmalıdır. Metodlar kullanılarak kod tekrarı önlenmelidir.
  • Matris boyutunu yani satır ve sütun sayısını kullanıcı belirlemelidir. Minimum 2x2 boyutunda matris grişine izin verilmeli, 2x2 den küçük değer girişlerinde kullanıcıya uyarı verilmeli ve tekrar satır, sütun girmesi istenmelidir.
  • Diziye ait eleman sayısının çeyreği (elemanSayisi / 4) kadar rastgele mayın yerleştirilmelidir. Mayın sayısı, eleman sayısı/4'ten az ya da çok olmamalıdır. Örneğin dizi 4x3 boyutunda ise eleman sayısı (satırSayısı * sütunSayısı) formülü ile hesaplanmalı ve boyutu 12 olacaktır. Bu durumda mayın sayısı 12 / 4 = 3 adet olmalıdır. 3'ten az ya da çok olmamalıdır.
  • İpucu: 2 boyutlu diziler string veri türünde olması işinizi kolaylaştıracaktır. Mayınların konumlarını tutacak bir dizi, oyuncuya göstereceğiniz ayrı bir dizi tanımlamalısınız.
  • Oyuncuya gösterilen haritada hiç açılmamış kutucukları "-" sembolü ile göstermelisiniz.
  • Mayınlar "*" sembolü ile gösterilmelidir. Farklı semboller kullanmayınız.
  • Kullanıcı matris üzerinden bir nokta seçmeli, nokta seçimi için satır ve sütun değerlerini girmesi istenilmelidir.
  • Seçilen noktanın dizinin sınırları içerisinde olup olmadığı kontrol edilmeli ve koşul sağlanmazsa konsolda uyarı metni yazdırılıp kullanıcıdan tekrar yeni koordinat istenmelidir.
  • Daha önce girilmiş bir koordinat girildiğinde kullanıcıya "bu koordinat daha önce seçildi, başka bir koordinat girin" şeklinde uyarı gösterilmeli ve yeni giriş yapması sağlanmalıdır.
  • Kullanıcının girdiği noktada mayın var ise oyunu kaybetmelidir. Buna uygun şekilde konsolda mesaj gösterilmelidir.
  • Kullanıcının girdiği noktada mayın yok ise, noktanın etrafındaki tüm komşu konumlara bakılmalı (sağı, solu, yukarısı, aşağısı, sol üst çapraz, sağ üst çapraz, sağ alt çapraz, sol alt çapraz) ve bu komşu noktalardaki mayınların sayısının toplamı kullanıcının girmiş olduğu koordinata yazılmalıdır. Noktaya değen herhangi bir mayın yok ise "0" değeri yazılmalıdır. Farklı değer ve sembol kullanmayın.
  • Kullanıcı hiç bir mayına basmadan tüm noktaları açarsa oyunu kazanmalıdır. Bu durumda da uygun mesaj konsolda gösterilmelidir.

Kaybetme Senaryosu

Mayınların Konumu
* - - 
- - * 
- - - 
===========================
Mayın Tarlası Oyuna Hoşgeldiniz !
- - - 
- - - 
- - - 
Satır Giriniz : 0
Sütun Giriniz : 1
===========================
- 2 - 
- - - 
- - - 
Satır Giriniz : 2
Sütun Giriniz : 0
===========================
- 2 - 
- - - 
0 - - 
Satır Giriniz : 0
Sütun Giriniz : 2
===========================
- 2 1 
- - - 
0 - - 
Satır Giriniz : 1
Sütun Giriniz : 0
===========================
- 2 1 
1 - - 
0 - - 
Satır Giriniz : 2
Sütun Giriniz : 1
===========================
- 2 1 
1 - - 
0 1 - 
Satır Giriniz : 2
Sütun Giriniz : 2
===========================
- 2 1 
1 - - 
0 1 1 
Satır Giriniz : 1
Sütun Giriniz : 2
Game Over!!
===========================


Kazanma Senaryosu

Mayınların Konumu
- - - 
- * - 
- * - 
===========================
Mayın Tarlası Oyuna Hoşgeldiniz !
- - - 
- - - 
- - - 
Satır Giriniz : 0
Sütun Giriniz : 0
===========================
1 - - 
- - - 
- - - 
Satır Giriniz : 0
Sütun Giriniz : 1
===========================
1 1 - 
- - - 
- - - 
Satır Giriniz : 0
Sütun Giriniz : 2
===========================
1 1 1 
- - - 
- - - 
Satır Giriniz : 1
Sütun Giriniz : 0
===========================
1 1 1 
2 - - 
- - - 
Satır Giriniz : 2
Sütun Giriniz : 0
===========================
1 1 1 
2 - - 
2 - - 
Satır Giriniz : 1
Sütun Giriniz : 2
===========================
1 1 1 
2 - 2 
2 - - 
Satır Giriniz : 2
Sütun Giriniz : 2
Oyunu Kazandınız !
1 1 1 
2 - 2 
2 - 2 
===========================

Proje

Submit your work to complete this lesson.

Join the project workspace to share your solution and receive feedback.

Previous

Lesson discussion

Swap insights and ask questions about “Java101”.

Enroll to participate
Start the course to unlock the discussion. Enrolling helps us keep conversations relevant to learners.
Cohorts
WebsiteDiscoverBlogPatika.devRise In
CoursesCircleRustSoliditySolanaWeb3 FundamentalsBlockchain Basics
CompanyAbout UsTerms of UsePrivacy PolicyGDPR NoticeCookies
Don't miss any update!

Disclaimer: The information, programs, and events provided on https://cohorts.patika.dev is strictly for upskilling and networking purposes related to the technical infrastructure of blockchain platforms. We do not provide financial or investment advice, nor do we make any representations regarding the value, profitability, or future price of any blockchain or cryptocurrency. Users are encouraged to conduct their own research and consult with licensed financial professionals before engaging in any investment activities. https://cohorts.patika.dev disclaims any responsibility for financial decisions made by users based on the information provided here.

© 2026 Cohorts, All rights reserved