Merhabalar Arkadaslar.. Bu benim BM'de Okulda yaptigim bir Calisma idi Sizinlede paylasicam Anlatimi Kisa olarak Yaptim.. lazim Olana Bize %10luk odev Istenmisti bu ornek...
"TARAFIMCA EKLENEN SCRIPTLER BANA AIT OLUP KOPYALANMASI ANINDA (ALINTI) IBARESI EKLENMESI RICA OLUNUR"
Kod:
const int UzDiz = 66; // Dizi Uzunlugu..
const int Don = 6; // Dongu Recursive..
void RFonksiyon(char dizi[], int a, int b, int c); // Recursive fonksiyonumuz...
int main()
{
char cetvel[UzDiz]; // dizimiz... cetvel icin..
int i;
for (i = 1; i < UzDiz - 2; i++) // burada dizimizi 64 adet.. bosluk ekleniyor...yerleri belirmek icin...
cetvel[i] = ' ';
cetvel[UzDiz - 1] = '\0'; // dizimizin 65 kismina null karakteri eklniyor.. bitis cizgisi icin...
int max = UzDiz - 2; // dizimizin yane cetvelimizin maxmumum uzunluk degeri... 64
int min = 0; // dizimizin cetvelin yane minimum kisalik degeri...
cetvel[min] = cetvel[max] = '|'; // dizimizin yane cetvelin sonuna ve en basina cizgi ekleniyor... cetvel icin..
cout << cetvel << endl; // daha sonra gosterliyor.. cout.. standardi iel..
for (i = 1; i <= Don; i++) // bu dongu sayesinde..orta ve cetvelin alt kismi gerceklesiyor.. carpim olarak....
{
RFonksiyon(cetvel, min, max, i); // fonksiyona basvuru...
cout << cetvel << endl; // fonksiyon cikis standart cout..
for (int j = 1; j < UzDiz - 2;j++) // burada tekrar dizi bosluk birakilip yukarda alt satira gecildigi icin.. yerleri belirleniyor cetvelin..
cetvel[j] = ' ';
}
system("pause"); // Ekranda Durdurmak icin...
}
void RFonksiyon(char dizi[], int a, int b, int c)
{
if (c == 0) // Biliyorsunuzki recursive fonksiyonlarda.. mutlaka bir bitis yeri olmali yoksa devamli kendini cagirmaya devam eder.. bitirmek amaciyal..2x2 olarak.. 0 laninca.. return edip durdursun diye..
return;
int bolum = (b + a) / 2; // burada bolme islemi en onemli kisimlardan bir tanesi.. 2 sini bolup ortasini buluyor..bu bolme devam ediyor. tabe.. her geri gidisinde sifirlaniyor..
dizi[bolum] = '|'; // burada cizgi eklniyor bolundukten sonra..
RFonksiyon(dizi, a, bolum, c - 1); // burada ise recursiv sol...
RFonksiyon(dizi, bolum, b, c - 1); // burada ise recursiv sag eklniyor..
}[/COLOR]
"TARAFIMCA EKLENEN SCRIPTLER BANA AIT OLUP KOPYALANMASI ANINDA (ALINTI) IBARESI EKLENMESI RICA OLUNUR"