1 Nisan 2013 Pazartesi

81 - Diziler... Tekrarlamayan Rakamlardan Şifre Üretimi...


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {   // Tekrarlamayan sayılardan oluşan bir şifre programı... Bankacılıkta üretilen sms şifresi gibi... 

            //1. Kısım
            char[] karakter = new char[10]; // Tek karakter olduğu için char kullandık...
            int i = 0;

            // Rakamları diziye atıyoruz...
            for (char k = '0'; k <= '9'; k++)
            {
                karakter[i] = k;
                i++;
            }

            Console.WriteLine();

            // 2. Kısım
            string sifre = ""; // Şifre üretmek için kullanacağız...
            int dizisayaci = 0;

            int[] kontrol = new int[6]; 
            Random uret = new Random(); //Rastgele dizi elamanları kadar sayı üreteceğiz
            for (i = 0; i <= 5; i++)
            {
            bas:
                dizisayaci = uret.Next(0, 9); // Sayıları üretiyoruz...
                kontrol[i] = karakter[dizisayaci];

                for (int con = 0; con < i; con++)
                {
                    if (kontrol[con] == kontrol[i])
                    {
                        goto bas;
                    }
                }
                    //Üretilen sayıya karşılık karakter dizisinin elamanını çağırıyoruz..
                    sifre = sifre + karakter[dizisayaci]; // tek tek ekleyerek şifremizi oluşturuyoruz...
            }

            // Oluşturulmuş olan şifreyi ekranda gösteriyor... 
            Console.WriteLine("Üretilmiş olan şifre = " + sifre);

            Console.ReadKey();
        }
    }
}