Merhaba, Ziyaretçi. Lütfen giriş yapın veya üye olun.
Aktivasyon mailiniz gelmediyse buraya tıklayın.
09, 2008, 03:49:11 am
42744 Mesaj 8090 Konu Gönderen: 17931 Üye
Son üye: medist
Turk-Php.Com Forum  |  Yardım Forumları  |  Diğer Programlama Dilleri Yardım Forumu  |  C de random yerleştirme « önceki sonraki »
Sayfa: [1] Yazdır
Yazan Konu: C de random yerleştirme  (Okunma Sayısı 1901 defa)
blizzard
Yeni Kullanıcılar
*
Offline Offline

Mesaj Sayısı: 3


Üyelik Bilgileri
C de random yerleştirme
« : 30, 2006, 09:26:15 am »

arkadaşlar öncelikle herkese merhaba.Daha henüz 5 dakika önce üye oldum, ve işe koyuldum hemen Tongue
ben 16x16 bir matris çizdim.Bu matrise 1 sayısını yazarsak eğer sayınnı kendisi kadar yani 1 tane;  2 yazarsak sayının kendisi kadar yani 2 tane .... yazdırılacak.Ama bu işlem random olacak ve hiç bir şekilde çakışma olmayacak.Sayılar yatay veya düşey olabilir sadece(çapraz yok).Yardımcı olur musunuz lütfen.... Roll Eyes
Logged
engin
Admin
*
Offline Offline

Mesaj Sayısı: 496



Üyelik Bilgileri
Ynt: C de random yerleştirme
« Yanıtla #1 : 02, 2007, 06:38:31 am »

merhaba,
tam olarak sorun nedir?
matrisi oluşturmakta mı sorun yaşıyorsunuz yoksa random veri üretmekte mi?
Logged

Engin Dumlu
engin ~ turk-php.com
achilles ~ member.turk-php.com
blizzard
Yeni Kullanıcılar
*
Offline Offline

Mesaj Sayısı: 3


Üyelik Bilgileri
Ynt: C de random yerleştirme
« Yanıtla #2 : 02, 2007, 10:58:55 am »

sorun verileri(sayıları) dağıtmada,matrisi çizdim ancak sayıları üretemedim,çünkü bir çok şart vermiş,ilginiz için de teşekkür ederim...(sayılar 4 sayısı 4 tane,5 sayısıs 5 tane vs. bu sayılar da  grup olarak yan yana ya da altalta random olarak dizilecek ve bu gruplar çakışmayacak)
Logged
Quadim
PHP Stajyeri
**
Offline Offline

Mesaj Sayısı: 338


Üyelik Bilgileri
Ynt: C de random yerleştirme
« Yanıtla #3 : 02, 2007, 09:45:29 pm »

ben anlamadım. ufak bi ornek gostersene..
1 2 2 3 3 3 4 4 4 4 bu sekılde mı olacak ?
Logged
andelek
PHP Öğrencisi
*
Offline Offline

Mesaj Sayısı: 80


Üyelik Bilgileri
Ynt: C de random yerleştirme
« Yanıtla #4 : 03, 2007, 12:19:34 am »

Problemin asil amacini biraz anlasaydim.Bu sorun cozulecekti.
Ornekler ile aciklasan iyi olur arkadas!
Logged
blizzard
Yeni Kullanıcılar
*
Offline Offline

Mesaj Sayısı: 3


Üyelik Bilgileri
Ynt: C de random yerleştirme
« Yanıtla #5 : 03, 2007, 11:43:50 am »

örneğin:
    _________________________________
   | 2 2                                                   |
   |                      3                                 |
   |                      3                                 |
   |                      3                                 |
   |                                                         |
   |                                                         |
   |  4 4 4 4                               5 5 5 5 5 |
    _________________________________|   

üsttekini bir matris düşünün, böyle yatay ya da düşey olacak, rastgele yerleşecek...
Logged
zombie
Global Moderatör
*
Offline Offline

Mesaj Sayısı: 940



Üyelik Bilgileri
Ynt: C de random yerleştirme
« Yanıtla #6 : 07, 2007, 03:43:26 pm »

tam olarak ne yapmaya çalışıyorsun pek anlamadım ama 0-9 aralığındaki rakamlarla 16x16 bir matris yapmak istersen aşağıdaki gibi birşey işine yarayabilir, ne yapmaya çalıştığını daha net yazarsan yardımcı olmaya çalışırız.
Kod:
#include <stdlib.h>
#include <stdio.h>

int main(void)
{
int i,l;
for(i=0; i<16; i++)
{
for(l=0; l<16; l++)
{
printf("%d", rand()%9);
}
printf("\n");
}
return 0;
}
Logged

andelek
PHP Öğrencisi
*
Offline Offline

Mesaj Sayısı: 80


Üyelik Bilgileri
Ynt: C de random yerleştirme
« Yanıtla #7 : 22, 2007, 04:21:46 am »

Arkadas
Ornek gostermissin ama rastgele sayilari yerlestirebiliriz. Ama senin matrisine hepsin rastgele sayilari yerlestirerek dolduramazsin!
Dikey olsun yatay olsun fark etmez, imkansiz diye dusunuyorum!

Bos kalan yerleri olsun diye kabul ediyorsan kolay bir sekilde cozule bilir!



Logged
Quadim
PHP Stajyeri
**
Offline Offline

Mesaj Sayısı: 338


Üyelik Bilgileri
Ynt: C de random yerleştirme
« Yanıtla #8 : 20, 2007, 10:08:26 pm »

yukardaki kodun tamamen doldurması gerek
16*16 bir matrisi..
ayrıca neden imkansız oldugunu dusundun ki ?
Logged
mky2mky
PHP Öğrencisi
*
Offline Offline

Mesaj Sayısı: 97



Üyelik Bilgileri
Ynt: C de random yerleştirme
« Yanıtla #9 : 24, 2007, 11:22:42 am »

Huh anlasam bi  Roll Eyes
Logged

Eğer web siten varsa ve sitene SAYAÇ, ZİYARETÇİ DEFTERİ, ANKET veya "ÖZLÜ SÖZLER" eklemek istiyorsan;

www.SiteAraclari.com
merakli
Yeni Kullanıcılar
*
Offline Offline

Mesaj Sayısı: 49


Üyelik Bilgileri
Ynt: C de random yerleştirme
« Yanıtla #10 : 17, 2007, 07:59:12 pm »

umarım dediğini doğru anlamısımdır.
aşağıda dediğini yapmaya calıstım çalışıyor gibi bir dene.
Kod:
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>

int dizi[16][16];

int main()
{

int x;

sifirla();
goster();

tekrar:

x=arayuz();
if(x==0)
{
return 0;
}
olustur(x);
goster();
getch();

goto tekrar;

return 0;
}

int sifirla()
{
int i,j;

for(i=0;i<=15;i++)
{
for(j=0;j<=15;j++)
{
dizi[i][j]=0;
}
}

return 0;
}
//>>
int goster()
{
int i,j;

printf("\n");

for(i=0;i<=15;i++)
{
for(j=0;j<=15;j++)
{
printf("%d",dizi[i][j]);
}
printf("\n");
}

printf("\n\n\n");

return 0;
}
//>>
int arayuz()
{
int sayi;

yeniden:

printf("lutfen sayi 1 ile 15 arasinda sayi giriniz [cikis 0]: ");scanf("%d",&sayi);
printf("\nnot: tek basamakli sayi girmeniz gorsel acidan faydali olacaktir");

if((sayi<0)||(sayi>15))
{
printf("\nlutfen girdiginiz sayi 16 dan kucuk 0 dan buyuk bir tam sayi olsun");
goto yeniden;
}

return sayi;
}
//>>
int olustur(int n)
{
int konum_x,konum_y,i,yon,sayac=0;

srand(time(NULL));

bidaha:

sayac++;
if(sayac>20000)
{
printf("\n\n\nbuyuk ihtimalle %d sayisi icin gerekli yer yok daha kucuk bir sayi denemelisiniz!\n\n\n",n);
return 0;
}

konum_x=rand()%16;
konum_y=rand()%16;

yon=rand()%2;

if(yon==0)
{
for(i=0;i<n;i++)
{
if((dizi[konum_x+i][konum_y]!=0)||(dizi[konum_x+i][konum_y-1]==n)||(dizi[konum_x+i][konum_y+1]==n)||(dizi[konum_x-1][konum_y]==n)||(dizi[konum_x+n][konum_y]==n))
{
goto bidaha;
}
}
if((konum_x+(n-1))<16)
{
for(i=0;i<n;i++)
{
dizi[konum_x+i][konum_y]=n;
}
}else
{
goto bidaha;
}
}else
{
for(i=0;i<n;i++)
{
if((dizi[konum_x][konum_y+i]!=0)||(dizi[konum_x+1][konum_y+i]==n)||(dizi[konum_x-1][konum_y+i]==n)||(dizi[konum_x][konum_y-1]==n)||(dizi[konum_x][konum_y+n]==n))
{
goto bidaha;
}
}
if((konum_y+(n-1))<16)
{
for(i=0;i<n;i++)
{
dizi[konum_x][konum_y+i]=n;
}
}else
{
goto bidaha;
}
}
printf("\n%d. denemede",sayac);

return 0;
}
Logged

en sevdiğim js kodu: setTimeout
theone_msa
Yeni Kullanıcılar
*
Offline Offline

Mesaj Sayısı: 4


Üyelik Bilgileri
Ynt: C de random yerleştirme
« Yanıtla #11 : 18, 2007, 07:11:22 am »

yigidim. biraz geç kalmışsın ama emegine saglık.. daha az tugla ile örülemezdi herhalde bu duvar..
Logged
Sayfa: [1] Yazdır 
« önceki sonraki »
Gitmek istediğiniz yer:  


Turk-Php.Com Forum | SMF Forum Software © 2005, Simple Machines LLC. All Rights Reserved.