C ile iç içe switch-case kullanmak

Empathy-

Hectopat
Katılım
2 Temmuz 2017
Mesajlar
124
Yer
Denizli-Turgutlu
Daha fazla  
Cinsiyet
Erkek
Meslek
Öğrenci
Okulumun verdiği projeyle uğraşırken iç içe switch-case kullanma fikri geldi ama ne yaptıysam tam istediğim gibi çalışmıyor. Yapmam gereken şu; bir tane menüye sahibim ve bu menünün bi alt menüsü olacak ve de bu alt menüde ise ana menünün Case'inde yaptığım işlemlerin istatistiği gösterilecek.

Proje amacı şu:

Televizyonda düzenlenen yarışma programlarına benzer bir yarışma programının simüle edilmesini sağlayacak bir program istenmektedir. Yarışmada en az 5 en çok 20 yarışmacı yer alabilmekte ve her yarışmacıya bir koç eşlik etmektedir. Yarışmacılara ve koçlarına 1’den başlayarak numara verilmektedir. Yarışmanın devam ettiği haftalar boyunca, yarışmacılar haftada 1 kez performanslarını sergilemekte ve sonrasında hem koçlar hem seyirciler yarışmacılara puan vermektedirler. Buna göre, program ilk çalıştırıldığında ekranda aşağıdaki gibi bir ana menü görüntülenmelidir:

ANA MENÜ
1. Yeni Yarışma Düzenleme
2. Son Düzenlenen Yarışmanın İstatistiklerini Görüntüleme
3. Çıkış
Seçiminizi giriniz:

Kullanıcı, [1-3] aralığı dışında bir değer girerse seçimi tekrar sorulmalıdır. 1 ya da 2 değerini girerse, kullanıcının isteği yerine getirilmeli ve ana menüye geri dönülmelidir. Kullanıcı 3 değerini girerse, programdan çıkmak istediğinden emin olup olmadığı sorulmalı [e/E/h/H], emin değilse tekrar ana menüye dönülmeli, eminse programdan çıkılmalıdır.
Yeni Yarışma Düzenleme: Yeni bir yarışma düzenlemek için önce yarışmacı sayısı (en az 5 en çok 20) ve yarışmanın devam edeceği hafta sayısı (en az 3) kullanıcıdan alınır. Daha sonra her hafta için şu şekilde bir puanlama gerçekleştirilir: koçların sırasıyla 1, 2 ve 3 puanı verdikleri, kendi yarışmacıları dışındaki 3 farklı yarışmacının numaraları alınır; aynı şekilde seyircilerin de sırasıyla 1, 2 ve 3 puanı verdikleri, 3 farklı yarışmacının numaraları alınır. Yarışmacıların o haftaki puanları şu şekilde hesaplanır: koçların ve seyircilerin verdikleri puanlar eşit ağırlıkta dikkate alınarak toplanır, bunun için seyircilerin verdikleri puanlar (koç_sayısı-1) ile çarpılır. Her haftanın puanlaması bittikten sonra, o haftanın puanlama sonuçları ve genel durum, puana göre büyükten küçüğe doğru sıralı olarak aşağıdakine benzer şekilde listelenir (puanlar eşitse koçlardan aldığı puanı yüksek olana, o da eşitse yarışmacı numarası küçük olana öncelik verilmektedir.): Buraya kadar yaptım sıkıntı yok.Sıkıntı buradan sonra başlıyor.Yarışmayı düzenliyorum ama bi alt menüye girdiğimde verdiğim değerlere ulaşamıyorum.

Son Düzenlenen Yarışmanın İstatistiklerini Görüntüleme: Son düzenlenen yarışma sonucunda elde edilen bazı istatistiksel bilgilerin görüntülenebilmesi için önce ekranda aşağıdaki gibi bir alt menü görüntülenmelidir:
İSTATİSTİK ALT MENÜSÜ
  1. Sadece koçların puanlaması dikkate alındığında genel durumun listelenmesi
  2. Sadece seyircilerin puanlaması dikkate alındığında genel durumun listelenmesi
  3. Yarışmacıların her hafta aldıkları toplam puanların listelenmesi
  4. Yarışmacıların her koçtan aldıkları toplam puanların listelenmesi
  5. Ana Menü Seçiminizi giriniz:
Kullanıcı, [1-5] aralığı dışında bir değer girerse seçimi tekrar sorulmalıdır. [1-4] aralığında bir değer girerse, kullanıcının isteği yerine getirilmeli ve istatistikler alt menüsüne geri dönülmelidir. Kullanıcı 5 değerini girerse, ana menüye dönülmelidir.


Fikri olan varsa paylaşabilir mi?
 
Son düzenleyen: Moderatör:
Sanırım artik çok geç ama yine de yardimci olmak isterim forumda ilgilenip girenlerin de görmesi adına.
Simdi öncelikle menüyü bi while döngüsü icinde yapmani öneririm. (char cevap='h'; while(cevap=='h'){ } ) menünün cikis kisiminda da cevabi e olarak değiştirirsen döngü sonlanır. Diğer sorun icin bi veri tabani tutarsan yani eklenen silinen bilgileri bir txtye atarsan daha iyi olabilir fakat diyorsan ki bu verilere programı sonlandırdıktan sonra ihtiyacım yok o zaman struct yazıp diziler icinde tutup o verileri gerekli fonksiyonlara yolladiginda veriler Call-By-Refrence olarak gecicektir ve icindeki degerlere ulaşabiliceksin.
iyi forumlar,iyi programlamalar...
 
Uyarı! Bu konu 7 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Yeni konular

Geri
Yukarı