Csharp Programlama Dilinde Diziyi Ters Çevirme ve Foreach Döngüsü
C#'da Reverse metodunu çağırarak bir diziyi ters çevirebiliriz. Aşağıdaki örnekte hem foreach döngüsünün kullanımını hem de bir dizininin Array.Reverse(DiziAdi) şeklinde kullanılarak ters çevrilmesini görüyorsunuz.
Foreach döngüsü bir dizinin tüm elemanlarını dolaşmak için kullanılır. Aynı işlemi for döngüsü ile de yapabilirsiniz. Aşağıdaki iki kullanım şekli de aynı anlama gelir.
using System;
Foreach döngüsü bir dizinin tüm elemanlarını dolaşmak için kullanılır. Aynı işlemi for döngüsü ile de yapabilirsiniz. Aşağıdaki iki kullanım şekli de aynı anlama gelir.
foreach(string ulke in ulkeler)
{
Console.WriteLine(ulke);
}
Aşağıda da alıştığımız klasik for döngüsünün kullanımını görmektesiniz.
for (int i=0; i<ulkeler.Length; i++)
{
Console.WriteLine(ulkeler[i]);
}
Şimdi programın tamamını görelim.Aşağıda da alıştığımız klasik for döngüsünün kullanımını görmektesiniz.
for (int i=0; i<ulkeler.Length; i++)
{
Console.WriteLine(ulkeler[i]);
}
using System;
namespace DiziFonksiyonlari
{
class Program
{
static void Main(string[] args)
{
string[] ulkeler = {"İran","Irak","Fas","Mısır","Rusya" };
foreach(string ulke in ulkeler)
{
Console.WriteLine(ulke);
}
Array.Reverse(ulkeler);
Console.WriteLine("==== Dizinin ters çevrilmiş hali ===");
foreach (string ulke in ulkeler)
{
Console.WriteLine(ulke);
}
}
}
}
Örneğin bir sayı dizisini aynı yöntemle ters çevirelim; Yine Foreach döngüsünü kullanaarak diziyi dolaşma işlemini yapalım.
using System;
Şimdi de Reverse yani Ters çevirme işlemini kendimiz yapalım.
Soru : Verilen bir dizinin elemanlarını ters çeviriniz. Örneğin;
eskidizi = { 5, 13, 20, 30, 15, 40 };
yenidizi = {40, 15, 30, 20, 13, 5};
şeklinde hazırlayınız.
Bir dizideki elemanları ters çevirirken yeni indisin ne olacağını bir formülle düşünebiliriz. Örneğin yukarıdaki iki diziye baktığınızda, ters çevrilirken 0.indis, 5. indis oluyor, 1.indis, 4.indis oluyor. Aşağıdaki tabloya bakalım ve tüm indislerin yeni değerlerini görelim.
Bu tabloya göre dizideki eleman sayısı n ve indisin o anki değeri i ise yeni indis değeri; n-1-i şeklinde olacaktır.
Console.WriteLine("Ters çevrilmiş hali");
Farklı örneklerde görüşmek dileğiyle ...
Mutlu Kodlamalar,
Oğuzhan TAŞ
Nisan, 2015
Örneğin bir sayı dizisini aynı yöntemle ters çevirelim; Yine Foreach döngüsünü kullanaarak diziyi dolaşma işlemini yapalım.
using System;
namespace DiziFonksiyonlari
{
class Program
{
static void Main(string[] args)
{
int[] dizi = { 1, 3, 5, 7, 9 };
foreach (int i in dizi)
{
Console.WriteLine(i);
}
Array.Reverse(dizi);
Console.WriteLine("\n=== Ters Çevrilmiş Hali ===");
foreach (int i in dizi)
{
Console.WriteLine(i);
}
}
}
}
Soru : Verilen bir dizinin elemanlarını ters çeviriniz. Örneğin;
eskidizi = { 5, 13, 20, 30, 15, 40 };
yenidizi = {40, 15, 30, 20, 13, 5};
şeklinde hazırlayınız.
Bir dizideki elemanları ters çevirirken yeni indisin ne olacağını bir formülle düşünebiliriz. Örneğin yukarıdaki iki diziye baktığınızda, ters çevrilirken 0.indis, 5. indis oluyor, 1.indis, 4.indis oluyor. Aşağıdaki tabloya bakalım ve tüm indislerin yeni değerlerini görelim.
Eski İndis | Yeni İndis |
0 | 5 |
1 | 4 |
2 | 3 |
3 | 2 |
4 | 1 |
5 | 0 |
Bu tabloya göre dizideki eleman sayısı n ve indisin o anki değeri i ise yeni indis değeri; n-1-i şeklinde olacaktır.
using System;
namespace DiziTersCevirme
{
class Program
{
static void Main(string[] args)
{
int[] dizi = { 5, 13, 20, 30, 15, 40 };
int n = dizi.Length;
int[] yenidizi = new int[n];
Console.WriteLine("Dizinin ilk hali");
for (int j = 0; j < n; j++)
Console.Write(dizi[j] + " ");
for (int i=0; i<n; i++)
{
yenidizi[n-1-i]= dizi[i];
}
Console.WriteLine("Ters çevrilmiş hali");
for (int j = 0; j < n; j++)
Console.Write(yenidizi[j]+" ");
}
}
}
Farklı örneklerde görüşmek dileğiyle ...
Mutlu Kodlamalar,
Oğuzhan TAŞ
Nisan, 2015
Dil Değiştir(Change Language)
Kategoriler
- Csharp(58)
- Csharp Formlar(23)
- Web Tasarım(9)
- CSS(27)
- JavaScript(37)
- PHP(50)
- Laravel(3)
- ASP.net(38)
- Excel(15)
- Güvenlik(4)
- E-Ticaret(3)
- Kariyer(5)
- SQL Server(29)
- MySQL(16)
- Linux(17)
- MacOSX(8)
- Ayarlar(12)
- Bilgisayar Ağları(3)
- Symfony(1)
- Teknoloji(7)
- VBS(1)
- Arduino(6)
- RaspberryPi(1)
- Algoritmalar(15)
- HTML(3)
- Python(2)
- Bash Script(7)
- C Programlama(10)
- Flutter - Dart(11)
- Bootstrap(1)
En çok Okunan 18 Makale
- :: Excelde EĞER Fonksiyonu Kullanımı...
- :: Csharp ile Access Veritabanı Bağlan...
- :: SQL nedir, Temel SQL Komutları nele...
- :: Hangi Linux Dağıtımı?
- :: OSX İşletim Sistemine PHP, MySQL, A...
- :: PHP dilini kullanarak MySQLi tekniğ...
- :: Excel Hesap tablosunda EĞERSAY Fonk...
- :: Excel Hesap tablosunda ÇOKETOPLA Fo...
- :: Excel Hesap tablosunda ETOPLA Fonks...
- :: Excel Hesap tablosunda ÇOKEĞERSAY F...
- :: Hangi Programlama Dilini Öğrenmeliy...
- :: Mac Bilgisayarınıza Windows 7 Yükle...
- :: PHP ile Basit Dosya Yükleme
- :: C# Programlama Dili ile İlgili Örne...
- :: PHP Dili kullanarak MySQLi Tekniği ...
- :: Excel hücrelerinde yıldız koyarak b...
- :: PhpMyAdmin Şifresi Nasıl Değiştiril...
- :: Hangisi acaba, PHP mi ASP.NET mi ?