Donanım Haber Forum
Ana Sayfa | Kayıt ol | Profilim | Gelen Kutusu | DH Hız Aşırtma VT | Adres Defteri | Email'le üyeliklerim | Benim forumlarım | Fotoğraf Albümleri
Favorileriniz | Üyeler | Arama | SSS | Şikayet listesi | Uyarı listesi | Nick işlemleri
Visual Studio C# Ödevim! Yardımcı Olun Lütfen!!!

İlgili konuları bak: (bu forumda | tüm forumlarda)

Bu isimle girdiniz: Guest
Bu konudaki kullanıcılar: hiç
  Basılabilir versiyon
Tüm forumlar >> [Web Tasarım - Programlama] >> Yazılım Geliştirme >> Projeler >> Visual Studio C# Ödevim! Yardımcı Olun Lütfen!!! Sayfa: [1]
Giriş
Mesaj << Daha eski konu   Daha yeni konu >>
coderMX

 

Mesaj: 621


 6 Temmuz 2008; 11:34:17 
Bu mesajla ilgili şikayetinizi bu icon a tıklayarak yapabilirsiniz.

1-POKER: Elinizde bir iskambil destesinin tüm kağıtlarını tutan 52 elemanlı bir dizi var. (Bu dizi size hazır olarak verilecektir) Sizden istenen bu kağıtlardan herhangi 5 tanesini bir oyuncuya dağıtmanız. Aynı kağıttan bir elde iki tane olamaz. (20 Puan)

Grafiksel olarak kartları gösterirseniz : (+10 puan) (“Symbol” fontunda gerekli karakterleri bulacaksınız)

Flowchart’ını çizerseniz: (+10 puan)

Elindeki kartlardan aynı sayıdan 2’li, 3’lü, 4’lü, 5’lü olup olmadığını söylesin. Örn: Dağıtılan elde Sinek – 2 , Maça – 2, Karo – 2, Maça Papaz, Karo 5 varsa ekranda “Elinizde bir üçlü var” yazsın” (+20 puan)

Bu dağıtım işlemini 4 oyuncu için de yapın. Hiç bir oyuncunun elinde aynı kartların olmaması gerekir. (+20 puan)

Bir iskabil destesinin string dizisini oluşturan kodlar:

string[] kartTur = new string[] { "Maça","Karo","Sinek","Kupa" };
string[] kartNo = new string[] { "As","2", "3", "4", "5", "6", "7", "8", "9", "10", "Vale", "Kız", "Papaz" };
string[] kartlar = new string[52];

for (int i = 0; i < kartTur.Length; i++)
{
for (int x = 0; x < kartNo.Length; x++)
{
kartlar[i * 13 + x] = kartTur + "-" + kartNo[x];
}
}


Ayrıca bu kodu butonun kliğine mi yoksa combobox'ın içinemi yapıştırıcaz.

-----------------------------------------------------------------------------------

2-BÜYÜK ÜNLÜ UYUMU: Verilen bir kelimenin büyük ünlü uyumuna uyup uymadığını kontrol ediniz. Kelimenin büyük harfle veya küçük harfle yazılabileciğini de dikkate alınız. (20 puan)

Büyük ünlü uyumu: Türkçe’de, bir kelimedeki sesli harflerin hepsi “a,ı,o,u” harflerinden ya da “e,i,ö,ü” harflerinden oluşuyor ise; o kelime büyük ünlü uyumuna uygundur.

Kontrol edilmesi istenilen yazının tek kelimeden oluştuğuna emin olunuz. (+10 puan)

Kontrol edilmesi istenilen yazıda sesli harf bulunduğundan emin olunuz. (+5 puan)

Flowchart’ını çizerseniz (+10 puan)

------------------------------------------------------------------------------------

3-BİLGİSAYAR KAPATICI: Kullanıcının verdiği bir saatte bilgisayarın kapanmasını sağlayınız. (20 puan)

Bilgisayarı kapatma komutu: System.Diagnostics.Process.Start("shutdown","-f -s");
Bu komut çalıştıktan sonra 30 saniye sonra bilgisayar kapanacaktır. İptal etmek için run(çalıştır) bölümüne shutdown –a yazmınz yeterlidir.

Flowchart’ını çizerseniz (+10 puan)

Verilen saat haricinde “x dakika kadar sonra kapan” diye kullanıcıya bir seçenek sunarsanız (+20 puan)

-----------------------------------------------------------------------------------

4-SLOT MAKİNASI: Slot makinası için bir program geliştirmeniz gerekiyor. Sizden istenen müşterinin değil de şirketin her zaman kazanması. Bunu da şu şekilde yapmanız gerekiyor. Kullanıcıların oynamak için kasaya 1 jeton atmak zorundalar. Kasa’nın içindeki jeton sayısı 10’dan küçükse asla müşteri kazanamaycak. 10 jetondan fazlaysa makinanın daha önce para verip vermediğine bakılacak. Eğer para vermemişse, müşterinin %20 kazanma şansı var. Eğer vermişse %5 kazanma şansı olacak. (20 puan)

Flowchart’ını çizerseniz (+10 puan)

Slot makinası oyunu eklerseniz (+30 puan)

-----------------------------------------------------------------------------------

5-ASKER DAĞITIM OTOMASYONU: Burada amacınız bir dizide tutulan askerleri, başka bir dizide tutlan bölgelere rastgele dağıtmak. Dikkat edilmesi gereken nokta asker sayısı yeterli ise her bölgeye mutlaka en az 1 asker düşmesini sağlamaktır. (50 puan)

Flowchart’ını çizerseniz (+10 puan)

-----------------------------------------------------------------------------------

6-SATRANÇ: Satranç tahtasında koordinatı verilen bir atın oynaycağı yerleri bulunuz. (30 puan)

Satrançta, at L şeklinde hareket eder. Yani bulunduğu karenin bir ilerisi ve iki solu, ya da iki sağı bir yukarısı gibi. Örnek: D3’te olan bir at F1, F3 ve G4’e oynayabilir.

Flowchart’ını çizerseniz (+10 puan)

Grafiksel olarak bir arayüz yaparsanız (+20 puan)

Hesaplamaları Kale ve Fil için de yaparsanız (+20 puan)

-----------------------------------------------------------------------------------

Arkadaşlar ödevler bunlar. İlkiyle Poker'ler başladım bu Cuma'ya bitmesi gerekiyor ödevin...

Şu ana kadar POKER'le ilgili yazıdığım kodlar bunlar. Baya bi acemiyim yazılım konusunda. :(

namespace Poker
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
{

}

private void btnKartlariDagit_Click(object sender, EventArgs e)
{
string[] kartTur = new string[] { "Maça", "Karo", "Sinek", "Kupa" };
string[] kartNo = new string[] { "As", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Vale", "Kız", "Papaz" };
string[] kartlar = new string[52];

for (int i = 0; i < kartTur.Length; i++)
{
for (int x = 0; x < kartNo.Length; x++)
{
kartlar[i * 13 + x] = kartTur + "-" + kartNo[x];
}
}

}

private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{

}
}
}



< Bu mesaj bu kişi tarafından değiştirildi coderMX -- 6 Temmuz 2008; 11:57:35 >
coderMX

 

Mesaj: 621


 6 Temmuz 2008; 13:51:44 
Bu mesajla ilgili şikayetinizi bu icon a tıklayarak yapabilirsiniz.

Bilgisayarı kapatma kodunu buldum fakat Kullanıcı TextBox'a süre girdiği zaman nasıl girilen süre sonra kapatacak bilgisayarı...

private void button2_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start("shutdown", "-f -s");
}


----------------------------------------------------------------------

Arkadaşlar timer ekledim fakat, timer1'e nasıl TextBox1 deki değeri atıycaz???

timer1 = Convert.ToString(textBox1.Text);
System.Diagnostics.Process.Start("shutdown", "-f -s");


< Bu mesaj bu kişi tarafından değiştirildi coderMX -- 6 Temmuz 2008; 13:55:20 >
grasper
Uzaklaştırılmış
¥ gün kaldı.

 6 Temmuz 2008; 15:46:24 
Bu mesajla ilgili şikayetinizi bu icon a tıklayarak yapabilirsiniz.

timer a gerek yok , shutdown komutunun -t parametresi ile yapılabilir.
System.Diagnostics.Process.Start("shutdown", "-f -s"); bu kodu

System.Diagnostics.Process.Start("shutdown", "-f -s -t 60"); şeklinde yazarsan bilgisayar 60 sn sonra kapanır. Artık sen o sayıyı kullanıcıdan alıp fonksiyona parametre olarak geçirmeyi yaparsın degil mi ?
coderMX

 

Mesaj: 621


 6 Temmuz 2008; 19:05:12 
Bu mesajla ilgili şikayetinizi bu icon a tıklayarak yapabilirsiniz.

quote:

Orjinalden alıntı: grasper

timer a gerek yok , shutdown komutunun -t parametresi ile yapılabilir.
System.Diagnostics.Process.Start("shutdown", "-f -s"); bu kodu

System.Diagnostics.Process.Start("shutdown", "-f -s -t 60"); şeklinde yazarsan bilgisayar 60 sn sonra kapanır. Artık sen o sayıyı kullanıcıdan alıp fonksiyona parametre olarak geçirmeyi yaparsın degil mi ?


Meraba,

Walla bi kursa yazıldım reklam yapmak istemiyorum ama forumda zaten reklamı var. BilgeAdam, ilk 200 saat teknik ingilizce eğitimi aldık. Geriye 500 saat yazilim eğitimimiz başladı. Yazılım başlıyalı iki hafta oldu. iki haftada bana çok ağır geldi bu ödev. Ben daha C#'ın mantığını yeni yeni kavramaya başladım ama kodları kullanmakta hala zorlanıyorum. Kursa giden diğer arkadaşların nerdeyse tamamı programlamlama dillerinden en az bir veya iki tanesini biliyorlar ve bilgisayar mühendisiliği fakultelerinde okuyorlar. Yani sınıfın en gerisinden giden ve hiç bir programlama dilini bilmiyen benim... Bazen sınıfta beyin fırtınası yaptıkları oluyor ya ben sadece o anlarda seyrediyorum.

TextBox1'e girilen değeri nasıl parametre olarak geçirebiliriz ki???

--------------------------------------------------------------------

int sure;
sure = Convert.ToInt32(textBox1.Text);
System.Diagnostics.Process.Start("shutdown", "-f -s -t sure");

Yukarı yazdığım kod doğru mu? Denedim ama çalışmadaı. Ayrıca Text Girilen değer saniyemi yoksa dakika mı nasıl ayırt edilecek???


< Bu mesaj bu kişi tarafından değiştirildi coderMX -- 6 Temmuz 2008; 19:17:58 >
grasper
Uzaklaştırılmış
¥ gün kaldı.

 6 Temmuz 2008; 20:09:22 
Bu mesajla ilgili şikayetinizi bu icon a tıklayarak yapabilirsiniz.

Kod kısmına gelirsek
System.Diagnostics.Process.Start("shutdown", "-f -s -t "+sure.ToString()); bu şekilde yapınca çalışıyor. Tabii textboxa sayı sn cinsinden giriliyor.

Aslında numeric up down kontrolü ile daha şık bir biçimde yapabilirsin , biraz araştır istersen



Kurs konusuna gelince kursun bir ön yeterlilik koşulu falan varmıydı. Yoksa hiç bilmeyen biride kursa katılabilir mi? İkinci olarak ne kadar verdin kursa?
coderMX

 

Mesaj: 621


 6 Temmuz 2008; 20:29:06 
Bu mesajla ilgili şikayetinizi bu icon a tıklayarak yapabilirsiniz.


quote:

Orjinalden alıntı: grasper

Kod kısmına gelirsek
System.Diagnostics.Process.Start("shutdown", "-f -s -t "+sure.ToString()); bu şekilde yapınca çalışıyor. Tabii textboxa sayı sn cinsinden giriliyor.

Aslında numeric up down kontrolü ile daha şık bir biçimde yapabilirsin , biraz araştır istersen



Kurs konusuna gelince kursun bir ön yeterlilik koşulu falan varmıydı. Yoksa hiç bilmeyen biride kursa katılabilir mi? İkinci olarak ne kadar verdin kursa?


Walla kardeşim eğitim sıfırdan başlıyor ama tabii bi sınıfta 14 kişi var ve bu 14 kişiden 12'si bişeyler biliyorsa doğal olarak biraz daha onlara yönelik gidiyor. Yada başka bi deyişle alt yapısı olan için daha bi başka oluyor tabii ki.

Fiyat konusunda şimdi tam hatırlamıyorum ama ilk konuştuğum zaman bana 6000 ile 11000 YTL arası demişlerdi. Sonradan ekstra indirim yapıyorlar. Mesela BilgeAdam'da daha önce eğitim almış tanıdığınız var mı? Ben var dedim fakat isimde vermemiştim. Öğrenci misin? Hafta içi öğleden sonra için %10 indirim. Nakit için ekstra indirim. Erken ödeme için ekstra %10 indirim. vs....

Ben nakit 5679 YTL'ye anlaştım. Düz 5000 yapmadılar. Benim anlaşdığım dönemde 200 saat teknik ingilizce + 400 saat yazılımdı. Sonrada içerik değişti yazılım eğitimi 500 saate çıktı.

60 saat JAVA ve Orecla
.Net 3,5 Firework
vs.

Yazılım hakkinda bilgim yok vs. dedim. Ama karasızdım yazılım mı yoksa sistem mi diye. Yazılım zor ama hani eğitim veren kurum adı duyulmuş iyi bi kurum. Bide şuan için sadece kursa gidip geliyorum vs. bunlara güvendim. Yazılıma başladım. Bakalım hayırlısı...

Olmadı her konu için eğitim tekrarı isterim. Devamlılık sağlandıktan sonra eğitim tekrarı problem olmuyor. Başarısız olunan derslerden eğitim tekrarı almak içn bi dilekçe vermek yeterli oluyor. Ama tabii onlarda bir sene içinde eğitim tekrarı vermekle yükümlüler yani eğitim tekrarı verilecek konular için 5 ay sonrasına gün verebiliyorlar.

BilgeAdam'ı tercih etme sebeplerimden bi diğeride bazı kurumlarda, eğitim kurumu eğitmenin maaşını tam yatırmıyor. Bu sefer eğitmen ders gelmiyor. Ordaki görevliler bugün iptal oldu dersiniz. Eğitmeniniz hastalandı vs. bahaneler uydurabiliyor. Veya sınıflar dolmuyor sürekli bekletiyorlar.

Ben şubatta askereden geldim. BilgeAdam ile konuşup kayıt oldum. Şubat 25'te başlıycaktı eğitim. Mart 10'una sarktı. Sonra Mart'ın 24-25 ine sarktı. En son Nisan 7 'ye ertelendi sınıflar dolmadi diye.

Bende kaydımı iptal ettirmek istiyorum dediğimde Bana kayıt iptali sizin zararınıza olur dediler. Kurs başlamamışsa eğer toplam ücretin %20'sini ödemem gerekiyormuş. İmza attığım sözleşmede öyle yazıyormuş. Ama kayıt olduktan sonra 2 ay içinde kursu başlatmazlarsa o zaman isediğim gibi ödediğim ücreti geri alıp kaydımı iptal ettirebiliyormuşum.

Walla bilip bilmeden girdik bu piyasaya. İyi kötü bişeyler öğrendim ama daha giriş düzeyinin bile belki altındayım.

Şuan için teknik ingilizceyi bitirdik. İyi kötü artık ingilizce forumlardaki yazilari okuyabiliyorum. Ama cümle kurmakta zorlaniyorum. Bize sadece teknik cümleleri çevirmesini öğrettiler. Kurs bittikten sonra english-time benzeri eğitim kurumlarından speak in, listen in üzerine eğitim alıcam...

Bakalım inşallah microsoft sertifikalarını alırım.

Daha metotları kullanmayı, parametleri girmeyi, random benzeri komutları adam akıllı girmeyi tam kavrayamadım yaaaa zamanla olucaktır.

Hani yazdıklarım kimse olumsuz düşünce çıkarmasın. Başlamak isteyen varsa BilgeAdam iyi bi kurum. Yalnız yazılım zor işmiş...

Sürekli kod yazmak gerekiyor. Bide ben öğleden sonra ki kursa kayıt olduğum için (gündüz grubu dolmuştu) benim günüm biraz daha erken ölüyor yada zamanı gündüz grubu daha iyi kullanabiliyor.
coderMX

 

Mesaj: 621


 6 Temmuz 2008; 21:08:56 
Bu mesajla ilgili şikayetinizi bu icon a tıklayarak yapabilirsiniz.

Up...

Banim sınıfımdaki arkadaşlar yeterlilik sınavına girmişler. Sanırım ben direk Teknik İngilizce'den itibaren başladığım için ve yazılım hakkında hiç bilgim yok dediğim içn beni sokmamış olabilirler yeterlilik sınavına...

Ayrıca textBox1 boşken program hata veriyor. Ben if ve messageBox.Show komutlarıyla hatayı gidermeye çalıştım yalnız olmadı. Acaba programın kilitlenmesini nasıl engelleyebilirim.

Bide Flowchart denilen uygulama nedir??? Her şeyde artı puan veriyor.


if (textBox1.Text == "")
{
MessageBox.Show("Lütfen Saniye Cinsinden Süre Giriniz");
}

int sure;
sure = Convert.ToInt32(textBox1.Text);
System.Diagnostics.Process.Start("shutdown", "-f -s -t " + sure.ToString());



Ufaltılmış ön izleme resmi


Ekteki dosya (1)


< Bu mesaj bu kişi tarafından değiştirildi coderMX -- 6 Temmuz 2008; 21:10:02 >
coderMX

 

Mesaj: 621


 6 Temmuz 2008; 22:32:54 
Bu mesajla ilgili şikayetinizi bu icon a tıklayarak yapabilirsiniz.

Up...

Arkadaşlar asker dağıtım otomasyon programına geçtim. Ama yine takıldım. İlerleyemiyorum. Random komutunu ayrıca nasıl kullanıcağımıda bilmiyorum...

string[] asker = new string[30];
asker i = textBox1.Text;
string bolge;
string dagitimListesi;

private void button3_Click(object sender, EventArgs e)
{

for (int i = 0; i <asker.Length; i++)
{

listBox3.Items.Add(listBox1.Items + "--" + listBox2.Items[0]);

}
grasper
Uzaklaştırılmış
¥ gün kaldı.

 6 Temmuz 2008; 23:31:12 
Bu mesajla ilgili şikayetinizi bu icon a tıklayarak yapabilirsiniz.

İlk sorun için try-catch yapısını biliyormusun acaba? Eğer biliyorsan programda hataları yakalamak için kullanabilirsin.
BOşluk kontrolü için şöyle bir kod kullanabilirsin.
if (textBox1.Text == string.Empty)
MessageBox.Show("boş");

Onun dışında textbox a sayı dışında deger girdiginde de convert ederken hata verecektir. Onu da try-catch ile yakalayıp kullanıcıya hata mesajı gösterebilirsin.


Flowchart ı aslında senin çıkarman lazımdı akış şeması demektir. Algoritmanın şekillerle gösterim şekli
http://www.google.com.tr/search?q=Flowchart&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:tr:official&client=firefox-a
hemen üstte resimleri görebilirsin.


RAndomu da şu şekilde kullanıyoruz.
Random myrandom = new Random();
int sayı = myrandom.Next(10);

burada 10 sınır oluyor.
coderMX

 

Mesaj: 621


 7 Temmuz 2008; 17:07:04 
Bu mesajla ilgili şikayetinizi bu icon a tıklayarak yapabilirsiniz.

Ayrıca TextBox olaylarindan keypress ile sadece numara girilebiliyormuş...

if (char.IsLetter(e.KeyChar))
{
e.Handled = true;
MessageBox.Show("Sayı karakteri girmelisiniz");
}
coderMX

 

Mesaj: 621


 8 Temmuz 2008; 0:12:26 
Bu mesajla ilgili şikayetinizi bu icon a tıklayarak yapabilirsiniz.

.


< Bu mesaj bu kişi tarafından değiştirildi coderMX -- 8 Eylül 2008; 12:14:31 >
grasper
Uzaklaştırılmış
¥ gün kaldı.

 8 Temmuz 2008; 17:51:52 
Bu mesajla ilgili şikayetinizi bu icon a tıklayarak yapabilirsiniz.

if (listBox1.Items.Count > 0)
button1.Enabled = true;

Eğer listboxda eleman varsa button1 etkin olur. Tabii burda buton başlangıçta enabled = false olacak.

Bİrde ben bu kodu formun mousemove olayına yazdım
coderMX

 

Mesaj: 621


 8 Temmuz 2008; 21:01:34 
Bu mesajla ilgili şikayetinizi bu icon a tıklayarak yapabilirsiniz.

.


< Bu mesaj bu kişi tarafından değiştirildi coderMX -- 8 Eylül 2008; 12:14:16 >
grasper
Uzaklaştırılmış
¥ gün kaldı.

 9 Temmuz 2008; 10:45:09 
Bu mesajla ilgili şikayetinizi bu icon a tıklayarak yapabilirsiniz.

Verdigi hata kullandıgın dizi de dizinin boyutlarını aşmıssın , o yüzden hata veriyor. Onu bir tekrar kontrol et olmazsa kodu buraya koy bakalım tekrar
coderMX

 

Mesaj: 621


 9 Temmuz 2008; 11:12:22