Soran
Random Class kullanarak, İki boyutlu dizi oluşturmak.

Genel Tartışma
-
Merhaba,
Bir random sınıfı ve method oluşturdum.
Bu sınıfı kullanarak, iki boyutlu dizinin satır ve kolon sayısını rastgele atadım.
Ve dizi elemanlarına rastgele değerler atamak amaçlı iç içe döngü oluşturdum.
C#'a yeni başlayanlar için iki boyutlu dizinin, satır uzunluğunu elde etmek için intArray.GetLength(0),
kolon uzunluğunu elde etmek için intArray.GetLength(1) metodlarını kullanabiliriz.
using System; namespace TwoDimensionalArrays { class Program { static void Main(string[] args) { MyClass rnd1 = new MyClass(); int[,] intArray = new int[rnd1.GetRandom(2, 9), rnd1.GetRandom(2, 9)]; for (int i = 0; i < intArray.GetLength(0); i++) { for (int j = 0; j < intArray.GetLength(1); j++) { intArray[i, j] = (rnd1.GetRandom(1, 99)); } } for (int i = 0; i < intArray.GetLength(0); i++) { for (int j = 0; j < intArray.GetLength(1); j++) { Console.Write(intArray[i, j] + " "); } Console.WriteLine(); } } } class MyClass { Random rnd = new Random(); int _random; public int GetRandom(int min, int max) { return _random = rnd.Next(min, max); } } }
- Düzenleyen Ümit Sinanoğlu 19 Nisan 2017 Çarşamba 12:21
Tüm Yanıtlar
-
Eğer 1 dahil 99 dahil şeklinde bir aralıkta sayı üretilsin istiyorsan 1,100 demelisin.
- Düzenleyen Cihan YakarMVP 19 Nisan 2017 Çarşamba 13:35
-
Sözgelimi 99 girdim, daha farklı bir sayı da olabilirdi.
Esasen tüm parametreleri kullanıcıdan alınabilecek şekle getirebiliriz.
Maksimum değerin minimum değerden küçük olmaması için kontrol ekledim.using System; namespace TwoDimensionalArrays { class Program { static void Main(string[] args) { RandomClass rnd1 = new RandomClass(); int satir; int kolon; int min; int max; Console.Write("Dizinin satır sayısını giriniz = "); satir = Convert.ToInt32(Console.ReadLine()); Console.Write("Dizinin kolon sayısını giriniz = "); kolon = Convert.ToInt32(Console.ReadLine()); Console.Write("Dizi elemanlarına atanacak minimum değer ? = "); min = Convert.ToInt32(Console.ReadLine()); Console.Write("Dizi elemanlarına atanacak maksimum değer ? = "); max = Convert.ToInt32(Console.ReadLine()); if (max < min) { max = 0; Console.Write("Maksimum değer minimum değerden az olamaz, değeri tekrar giriniz ? = "); max = Convert.ToInt32(Console.ReadLine()); } int[,] intArray = new int[satir, kolon]; for (int i = 0; i < intArray.GetLength(0); i++) { for (int j = 0; j < intArray.GetLength(1); j++) { intArray[i, j] = (rnd1.GetRandom(min, max)); } } for (int i = 0; i < intArray.GetLength(0); i++) { for (int j = 0; j < intArray.GetLength(1); j++) { Console.Write(intArray[i, j] + " "); } Console.WriteLine(); } } } class RandomClass { Random rnd = new Random(); int _random; public int GetRandom(int min, int max) { return _random = rnd.Next(min, max); } } }
- Düzenleyen Ümit Sinanoğlu 19 Nisan 2017 Çarşamba 13:53
-