bu bağlantıdan

ATATÜRK ÜNİVERSİTESİ
MÜHENDİSLİK FAKÜLTESİ
BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ
2014-2015 BAHAR DÖNEMİ
NESNEYE YÖNELİK PROGRAMLAMA DERSİ DÖNEM ÖDEVİ-I
SON TESLİM TARİHİ: 20.04.2014
ÖDEVİ TESLİM ALACAK OLAN ASİSTANLAR:
Arş. Gör. Işıl KARABEY
Arş. Gör. Önder ÇOBAN
BM 104 Nesneye Yönelik Programlama dersi kapsamında Visual Studio ortamında C++
programlama dili ile “Adam Asmaca” oyunu hazırlanacaktır. Oyun kuralları aşağıda
maddeler halinde verilmiştir:
 Oyunda amaç sorulan kelimeyi bilmeye çalışmaktır. Kullanıcı sorulan kelimeyi 4 kez
harf tahmin ederek ve 1 kez de kelimenin tamamını tahmin ederek bilmeye
çalışacaktır.
 Kullanıcı oyunun herhangi bir aşamasında (4 kez yanlış harf tahmini yapmadığı
sürece) “1” e basarak kelimenin tamamını tahmin etmek isteyebilecektir.
 Başarılı olma durumunda yeni bir kelime isteğini veya başarısız olma durumunda
oyunu yeniden oynama isteğini “2” ye basarak kullanabilecektir.
 Kullanıcının yaptığı her harf tahmininden sonra; adamın son durumu, kelimenin son
durumu ve o ana kadar girilen harfler ekranda gösterilecektir.
 Başarılı veya başarısızlık durumunda bunlara ek olarak o ana kadar ki toplam bilinen
kelime sayısı gösterilecek ve kullanıcıya başarılı ise yeni bir kelime isteği, başarısız
ise yeniden oynama isteği sorulacaktır. Kullanıcının başarılı olduğu durum, kelimeyi
bildiğini kullanıcının başarısız olduğu durum ise kelimeyi bilemediğini gösterir.
 Program 10 elemanlı kelimeler dizisinden rastgele bir kelime seçecek, bu kelimenin
uzunluğu kadar “–” karakterini ekrana basacaktır (her bir “– “ arasında bir karakter
boşluk bırakılacak şekilde).
 Kullanıcının doğru tahmin edemediği her harf için hak bir azalacaktır ve adamın o
anki durumu gösterilecektir. Adamın çizimi tamamlandığında yukarıda açıklanan
başarısızlık senaryosu gerçekleştirilecektir.
 Her öğrenci programda aşağıda verilen 10 elemanlı kelime dizisini kullanacaktır.
string kelimelerim[]={
"Ataturk",
"Universitesi",
"Bilgisayar",
"Muhendisligi",
"Bolumu",
"Erzurum",
"Nesne",
"Yonelimli",
"Programlama",
"Dersi"
};
 Programın gerçekleştirilmesi için 6 adet fonksiyon yazılacaktır. Bu fonksiyonların
işlevleri aşağıda açıklanmıştır.
Fonksiyonlar;
Kullanıcının yaptığı her harf/kelime tahmininden sonra örnek olarak verilecek olan ekran
görüntüsünü oluşturmak için aşağıdaki fonksiyonlar kullanılacaktır.
 aSonDurumGoster() : Adamın son durumunu girilen her harften sonra ( kafaCiz(),
govdeCiz(), kolCiz(), ayakCiz() fonksiyonlarından gereken bir veya birkaçı çağırılarak,
örneğin kullanıcı 2 tane harf bilememiş ise çağırılması gereken fonksiyon govdeCiz()
fonksiyonu olacaktır.) kullanıcıya gösterir.
 kSonDurumGoster() : Kelimenin son durumunu girilen her harften sonra kullanıcıya
gösterir.
 harfGoster() : Kullanıcının o ana kadar girdiği tüm harfleri ekrana basan
fonksiyondur.
 kafaCiz() fonksiyonu ekrana sadece adamın kafasını temsil eden “( )” karakterlerini
basacaktır.
 govdeCiz() fonksiyonu ekrana adamın kafasını ve gövdesini ( “I” karakterini
kullanarak) birlikte ekrana basacaktır.
 kolCiz() fonksiyonu ekrana adamın kafasını, gövdesini ve kollarını ( “/” ve “\”
karakterlerini kullanarak) basacaktır.
 ayakCiz() fonksiyonuyla ekrana adamın kafasını, gövdesini, kollarını ve ayaklarını (
yine “/” ve “\” karakterlerini kullanarak) basacaktır. Böylece adam asılmış ve oyun
tamamlanmış olacaktır.
Program için örnek ekran görüntüleri;
Örnek 1 - Başarısızlık Durumu.
Örnek 2 – Örnek Program Akışı.
NOT: Ödevi teslim etmeden önce; http://www.compileonline.com/compile_cpp_online.php
adresinde kodlarınızı derleyiniz. Numara_isim_soyisim_odevNo.cpp dosyası şeklinde
[email protected] adresine gönderiniz. Ayrıca bir Word belgesinde
çıktı halinde de kodlarınızı teslim ediniz. cpp dosyasını isimlendirirken lütfen Türkçe karakter
kullanmayınız.