C# Kare Bulmaca Uygulaması

Arkadaşlar Merhaba, C# kare bulmaca uygulamasını lise döneminde programlamıştım. Programın ilk ortaya çıkış fikri okullarda oyunlar yardımı ile alınan ders, kelime anlamları ve ingilizce kelimlerin bir yarışma ortamı ile rekabetçi bir ortam çıkartacağı ve okul dönemi çocukların(programı yazarken bende dahil tabii) daha akılda kalıcı öğrenme ortamı yaratılması gerekliliğidir. Lise döneminde Studio 2005 ile yazmıştım. Bulmaca için'de dataGridview kullandım. Program mantığından ve fomlarını görsel olarak paylaşacağım. Yorumlarda isteğe bağlı kodları da paylaşabilirim. Çok emek günlerce kağıda yazarak çizerek yapmaya çalıştığım için direkt olarak kare bulmaca kodlarını paylaşmak istemedim anlayış gösterirsiniz umarım. 

C# Kare Bulmaca Uygulaması Genel Mantık

C# kare bulmaca programındaki temel amaç admin-yetkili kişiler ellerindeki soru cevap havuzu ile bulmaca oluştursun ve bu bulmacalara havuzdan dikey ve yatay sorular ekleyebilsinler. Her bulmacanın kendine özel şifresi vardır istenilen bir bulmacanın şifresi girilerek güncelleme yapılabilir yada satır sütün sayısı, bulmaca adı ve şifresi ayarlanarak yeni bir bulmaca yaratılabilir. Bir örnek görüntü paylaşalım:

c# kare bulmaca uygulaması

Soruyu seçip yatay veya dikey yerleştirme mantığına dayanmaktadır. Datagridview'e çift tıkladığımızda ilgili alanı siyah renge boyar. Kontrolden tamamen geçmesi için tüm olanların doldurulması gerekmektedir.

Not: Kontrolden geçmeyen bulmacalar oyun formunda gözükmez.

Bu formda her editör bulmacalar şifreli olduğu için yetkili olduğu bulmacada değişiklik yapabilirler. İstedikleri bulmacıları da silebilirler bu ekrandan.

C# Kare Bulmaca Uygulama Diğer Formlar

Ana Form

c# kare bulmaca ana form

Not: Editör kısmının solundaki butonlar Editör şifresini giridkten sonra çıkmaktadır. İlk Formda Kullanıcı İçin önemli kısımlar Oyuna başla, Kayıt ol, Sıralama kısımlarıdır. Kayıt olmayan kullanıcı oyun oynayamaz.

Oyuna Başla Formu

Formun amacı kayıt olan öğrenciler giriş yapar. Giriş yaptıklarında sol üst kısımdan mevcut puanlarını ve doğru yanlış sayılarını bulabilirler. Onaylanmış bulmaca isimlerinden istediklerini seçerler ve oyuna başlarlar. Ekran Görüntüsü şöyledir:

c# kare bulmaca oyun formu

Bir sorunun hangi konumda olduğunu yandaki x,y değerinden bilirsiniz. Ayrıca bulmacada alanlara tıkladığınız zaman aktif x,y bilgisi gözükür. En son Sonuçları Kontrol et deriz. Doğru yaptıklarımız yeşil renge yanlış alanlar kırmızı renge boyanır.

C# kare bulmaca kayıt formu

Kullanıcıların oyun oynamak için kayıt oldukları ekrandır görüntüsü aşağıdaki gibidir:

c# kare bulmaca kullanıcı kayıt

 

Bu form üzerinde fazla durmaya gerek yok klasik veritabanı kullanıcı kayıt işlemidir detaylar için bu örneğe bakabilirsiniz.

C# Kare bulmaca Sıralama Formu

Oyun oynayan kullanıcıların doğru yanlış harf üzerinden aldığı puanlara göre sıralamasının yapıldığı formdur. Ekran görüntüsü aşağıdaki gibidir:

c# kare bulmaca kullanıcı sıralama

C# Kare Bulamaca Son Açıklama

Diğer admin formlarıda soru ve kullanıcı düzenleme, silme, güncelleme ve listeleme ekranlarıdır. Programdan az daha bahsetmek gerekirse iş datagridview x,y değerlerinde bitmektedir. Bir kelime harflerine bölünür uzunluğuna göre ilgili alana sığıp sığmadı kontrol edilir. Örneğin "TEST" kelimesinde dikey şekilde "TEST" geçirebiliriz. 2. harfleri "E" olduğu için dikeyden ikinci TEST kelimesini yerleştirmemize izin verecektir. Örneğin ilk kelimem X,y = 0 dan başlıyorsa kelimemim harf sayısı 15 ise, benim bulmacam 12'lik ise yatayda o kelime sığmayacağı için kelimeyi hiç yerleştirmez. Bunun gibi soru yerleştirirken çeşitli kontrelleri sağlamak gerekmektedir. İsterseniz Kelimeyi harflere böldükten sonra döngü ile isterseniz sağa, sola, yukarı, aşağı çapraz şekilde bile yerleştirebiliriz. Başta dediğim gibi direkt kodları paylaşmak istemedim. Kafanızda böyle bir proje varsa elimden geldiğince yardımcı olurum. Çok istek olursa da kodların olduğu bir paylaşım yaparım kolay gelsin.

Yeni yorum ekle

Plain text

  • Hiç bir HTML etiketine izin verilmez
  • Web sayfası ve e-posta adresleri otomatik olarak bağlantıya çevrilir.
  • Satır ve paragraflar otomatik olarak bölünür.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.