Anasayfa

C ve Sistem Programcıları Derneği

  • CSD Hakkında
    • Yönetim Kurulu
    • Referanslar
    • Üyelik
    • Adres
    • Kroki
    • İletişim
  • Kurslar
    • Kurs Başvurusu
    • Eğitmenler
  • Seminerler
    • Seminer İste
    • Seminer Ver
  • Kaynaklar
    • Yararlı Linkler
    • Kaynak Kod Arşivi
    • Makaleler
    • Çalışma Soruları
    • Yararlı Kitaplar
    • Dosya Arşivi
    • Döküman Arşivi
  • Duyurular
  • Haberler
  • İş İlanları
    • İş İlanı Gönder
  • SSS
  • Kurs Başvurusu

menü

  • CSD Hakkında
    • Yönetim Kurulu
    • Referanslar
    • Üyelik
    • Adres
    • Kroki
    • İletişim
  • Kurslar
    • Kurs Başvurusu
    • Eğitmenler
  • Seminerler
    • Seminer İste
    • Seminer Ver
  • Kaynaklar
    • Yararlı Linkler
    • Kaynak Kod Arşivi
    • Makaleler
    • Çalışma Soruları
    • Yararlı Kitaplar
    • Dosya Arşivi
    • Döküman Arşivi
  • Duyurular
  • Haberler
  • İş İlanları
    • İş İlanı Gönder
  • SSS
  • Kurs Başvurusu

e-posta ile bilgilendirme.

Derneğimizdeki etkinliklerden haberdar olun!

Haber mektubu üyeliğiniz

Kimler çevrimiçi

Şu an 0 kullanıcı ve 13 ziyaretçi çevrimiçi.
""
dreamhost
Anasayfa

4 Basamaklı, Basamakları Yinelenmeyen Rasgele Sayılar

25.03.2010 - 10:52 tarihinde vefa gönderdi

4 basamaklı, basamakları yinelenmeyen rasgele (random) sayı üreten fonksiyon.

Örnek ekran çıktısı: 

1054 9318 9710 3721 2901 3749 6803 8463 4523 5890
5492 3268 3417 7150 5376 1204 7548 3945 2035 4216
3740 6172 6713 7630 5697 6208 8506 7014 3817 4812
3571 5327 1647 2480 7309 3752 4632 1684 2501 5869
8451 9683 1580 9801 5419 4970 3561 5241 2743 5863

Kaynak kod: 
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
#define SIZE 50
 
int rand_number(void);
int is_valid(int number);
 
int main(void)
{
   int i, a[SIZE];
 
   srand(time(NULL));
 
   for (i = 0; i < SIZE; i++)
      while (!is_valid(a[i] = rand_number()))
         ;
   for (i = 0; i < SIZE; i++)
      printf("%d ", a[i]);
   putchar('\n');
 
   return 0;
}
/*****************************************************************
1000 ile 9999 arasinda rasgele sayi ureten fonksiyon
*****************************************************************/
int rand_number(void)
{
   return rand() % 9000 + 1000;
}
/****************************************************************
kendisine gonderilen sayinin kosula uygun, basamaklari tekrar
etmeyen bir sayi olup olmadigini test eden fonksiyon. uygunsa 1
degilse 0 degirini uretiyor.
*****************************************************************/
int is_valid(int number)
{
   int temp, i, j;
 
   for (i = 0; i < 10; i++) {
      j = 0;
      temp = number;
      while (temp > 0) {
         if (temp % 10 == i)
            j++;
         if (j > 1)
            return 0;
         temp /= 10;
      }
   }
   return 1;
}
  • Yazıcı uyumluYazıcı uyumlu
  • Arkadaşa gönderArkadaşa gönder
  • PDFPDF
Etiketler:
  • Java
  • rasgele sayılar

Adres: 2.Taşocağı Cd. Oğuz Sk. Barbaros Apt. No: 11/2 PK: 34387  Mecidiyeköy / İSTANBUL
Tel: 0 533 527 43 38 & 0 542 222 07 93 & (212) 274 63 60 & (212) 274 99 89 & (212) 288 35 20
E-Posta: csystem@csystem.org

İçerik yayınları
Fervens Drupal theme by Leow Kah Thong. Designed by Design Disease and brought to you by Smashing Magazine.