mrb
bir stringdeki büyük harfleri bulan.Büyük harflerle yeni bir string oluşturan rekürsif fonksiyon.
verilen bir strindeki sayıları bulan ve bu sayılardan yeni bir string bulan rekürsif fonksiyon.programları cde nasıl kodlayabilirim.Teşekkürler.
c de rekürsif fonksiyonların stringlerle kullanılm
http://www.kadirga.k12.tr/egitim/c_programlama/ders.php-id=11.htm
Burda gerekli bilgiyi bulabilirsiniz.
Ayrıca:http://www1.gantep.edu.tr/~bingul/c/index.php?ders=12
Çok orjinal bir soru. Her ne kadar bir halt anlamamış olsamda.
Soruyu yanıtlamadan once C programlama dili icerisinde,bir karakterin buyuk harf formatına donusturen fonksiyonun toupper(),bir karakterin numerik bir deger icerdigini kontrol eden isdigit() fonksiyonlarının bilindigini anımsamalısınız.Soruda bir stringin icerisindeki buyuk harfleri ve ayrı bir soru niteligi tasıyan sayısal degerleri bulan programı rekursif bir yapıda yazılması istenmiş.O halde kurgulanacak algoritmada,stringin yani karakter dizisinin elemanları sırasıyla taranacaktır.Yukarıdaki iki fonksiyon bu konuda size yardımcı olabilir.Ayrıca sorunun rekursif olması gerektigi icin,dizinin taranması fonksiyon argumanlarına aktarılarak özyineli bir yapı kurgulanabilir.
Algoritmanın C dilindeki karşılığı aşagıdaki gibidir
#include <stdio.h>
#include <ctype.h>
void buyukHarfBul(char mesaj[],char mesaj2[],int i,int k) {
if(i==7)
return;
if(toupper(mesaj)==mesaj)
mesaj2[k++]=mesaj;
buyukHarfBul(mesaj,mesaj2,i+1,k);
}
void sayiBul(char mesaj[],char mesaj2[],int i,int k) {
if(i==9)
return;
if(isdigit(mesaj))
mesaj2[k++]=mesaj;
sayiBul(mesaj,mesaj2,i+1,k);
}
main() {
char mesaj[8]={"MeRhAbA"};
char mesaj2[5];
char sayi[10]={"abc23f6j8"};
buyukHarfBul(mesaj,mesaj2,0,0);
puts(mesaj2);
sayiBul(sayi,mesaj2,0,0);
puts(mesaj2);
getchar();
return 0;
}
Başarılar