Bu örneğimizde dizi yapısı,for döngüsü ve if else yapısı kullanılacak
Windows Form Hazırlama: Bir buton, textbox ve 2 label ekliyoruz.
Soru: Kullanıcıdan alınan bir sayının sağdan ve soldan okunuşunun aynı olup olmadığını kontrol eden program yapacağız.
Çözümü:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace ödev1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string dizi = textBox1.Text;
int degisken = new int();
for (int i = 0; i < (dizi.Length / 2); i++)
{
if (dizi[i] == dizi[dizi.Length - i - 1])
{
}
else
{
degisken = 1;
}
}
label1.Text = textBox1.Text;
if (degisken != 1)
label3.Text = "bu sayının hem sağdan, hem de soldan okunuşu aynı..";
else
label3.Text = "bu sayının sağdan ve soldan okunuşu aynı değil!";
}
}
}
Kod Açıklaması:
string dizi = textBox1.Text;
int degisken = new int();
Öncelikle textbox'a girilen değerimizi string bir ifadeye atıyoruz. Sebebi string değişkenlerin dizi gibi çalışması. Çünkü adım adım bu değişkendeki bilgileri mükaseye edeceğiz aynısı mı değil mi diye. Sonra aynımı değilmi diye adımında int degisken'ini kullanacağız.
for (int i = 0; i < (dizi.Length / 2); i++)
{
if (dizi[i] == dizi[dizi.Length - i - 1])
{
}
else
{
degisken = 1;
}
}
Şimdi bir for döngüsü ile dizinin elemanlarını mükaseye edeceğiz. Peki döngü kaça kadar gidecek. Dizinin eleman sayısının yarısı kadar çünkü tam ortaya geldiğinde her iki taraftaki verileri mükaseye etmiş olacak. Şimdi artık dizinin elemanlarını kıyaslamaya geldi.
Örnek; biz textbox'a 123456 girdik bu 6 elemanlı bir dizi
başlanğıçta i=0 dizinin 0. elemanı yani dizinin ilk elemanı oluyor. dizi[dizi.lenght(yani uzunluğu)=6'dır. Şimdi yerine koyalım herseyi dizi[6-0-1=5] oluyor.Formülde yerine koyalım dizinin o.elemanı yani ilk elemanı 1 dizinin 5.indeksi yani son rakam 6'dır
if(1 rakamı==6 rakamına)
doğru değilse else'ye düşüyor. değişken=1 oluyor. Döngü devam ediyor takii döngü son bulana kadar.
Döngüden sonra aşagıdaki kodlara sıra geliyor;
label1.Text = textBox1.Text;
if (degisken != 1)
label3.Text = "bu sayının hem sağdan, hem de soldan okunuşu aynı..";
else
label3.Text = "bu sayının sağdan ve soldan okunuşu aynı değil!";
İlk textbox'a girdiğimiz değeri direk label'ın text'ine yazdırdık.şimdi bizim değişken değerimiz ne zaman 1'e eşit oluyordu. Sağdan ve soldan verileri karşılaştırdığımızda veriler eşit değilse değişken değeri 1'e eşit oluyordu. Eğer değişken 1'e eşit değilse sayının sağdan ve soldan okunuşunu aynı. değişken değeri 1'e eşitse ise sayının sağdan ve soldan okunuşu aynı değil uyarı mesajı label'a yazdırılacak.
Uygulamayı Buradan İndirebilirsiniz: https://hotfile.com/dl/228663375/39ed4e3/dev1.rar.html
Windows Form Hazırlama: Bir buton, textbox ve 2 label ekliyoruz.
Soru: Kullanıcıdan alınan bir sayının sağdan ve soldan okunuşunun aynı olup olmadığını kontrol eden program yapacağız.
Çözümü:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace ödev1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string dizi = textBox1.Text;
int degisken = new int();
for (int i = 0; i < (dizi.Length / 2); i++)
{
if (dizi[i] == dizi[dizi.Length - i - 1])
{
}
else
{
degisken = 1;
}
}
label1.Text = textBox1.Text;
if (degisken != 1)
label3.Text = "bu sayının hem sağdan, hem de soldan okunuşu aynı..";
else
label3.Text = "bu sayının sağdan ve soldan okunuşu aynı değil!";
}
}
}
Kod Açıklaması:
string dizi = textBox1.Text;
int degisken = new int();
Öncelikle textbox'a girilen değerimizi string bir ifadeye atıyoruz. Sebebi string değişkenlerin dizi gibi çalışması. Çünkü adım adım bu değişkendeki bilgileri mükaseye edeceğiz aynısı mı değil mi diye. Sonra aynımı değilmi diye adımında int degisken'ini kullanacağız.
for (int i = 0; i < (dizi.Length / 2); i++)
{
if (dizi[i] == dizi[dizi.Length - i - 1])
{
}
else
{
degisken = 1;
}
}
Şimdi bir for döngüsü ile dizinin elemanlarını mükaseye edeceğiz. Peki döngü kaça kadar gidecek. Dizinin eleman sayısının yarısı kadar çünkü tam ortaya geldiğinde her iki taraftaki verileri mükaseye etmiş olacak. Şimdi artık dizinin elemanlarını kıyaslamaya geldi.
Örnek; biz textbox'a 123456 girdik bu 6 elemanlı bir dizi
başlanğıçta i=0 dizinin 0. elemanı yani dizinin ilk elemanı oluyor. dizi[dizi.lenght(yani uzunluğu)=6'dır. Şimdi yerine koyalım herseyi dizi[6-0-1=5] oluyor.Formülde yerine koyalım dizinin o.elemanı yani ilk elemanı 1 dizinin 5.indeksi yani son rakam 6'dır
if(1 rakamı==6 rakamına)
doğru değilse else'ye düşüyor. değişken=1 oluyor. Döngü devam ediyor takii döngü son bulana kadar.
Döngüden sonra aşagıdaki kodlara sıra geliyor;
label1.Text = textBox1.Text;
if (degisken != 1)
label3.Text = "bu sayının hem sağdan, hem de soldan okunuşu aynı..";
else
label3.Text = "bu sayının sağdan ve soldan okunuşu aynı değil!";
İlk textbox'a girdiğimiz değeri direk label'ın text'ine yazdırdık.şimdi bizim değişken değerimiz ne zaman 1'e eşit oluyordu. Sağdan ve soldan verileri karşılaştırdığımızda veriler eşit değilse değişken değeri 1'e eşit oluyordu. Eğer değişken 1'e eşit değilse sayının sağdan ve soldan okunuşunu aynı. değişken değeri 1'e eşitse ise sayının sağdan ve soldan okunuşu aynı değil uyarı mesajı label'a yazdırılacak.
Uygulamayı Buradan İndirebilirsiniz: https://hotfile.com/dl/228663375/39ed4e3/dev1.rar.html
Hiç yorum yok :
Yorum Gönder