Chewy Mesaj tarihi: Aralık 2, 2009 Paylaş Mesaj tarihi: Aralık 2, 2009 Şöyle bir şey yaptım hatam nerde? Neden calısmıyor? #include<stdio.h> int multiple(int num1,int num2) { while(num2%num1==0) { printf("Second number is a multiple of the first"); } printf("Second number is not a multiple of the first"); return(multiple); } int main(void) { int num1,num2,disp; printf("Enter two integer: "); scanf("%d %d",&num1,&num2); disp=multiple(disp); printf("%d",disp); return 0; } Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Cd- Mesaj tarihi: Aralık 2, 2009 Paylaş Mesaj tarihi: Aralık 2, 2009 fonksiyonu tek değişkenle çağırmışsın, iki değişkenle tanımlamışsın Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Chewy Mesaj tarihi: Aralık 2, 2009 Konuyu açan Paylaş Mesaj tarihi: Aralık 2, 2009 anlayamadım ama nereyi düzeltcem. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Fly Mesaj tarihi: Aralık 2, 2009 Paylaş Mesaj tarihi: Aralık 2, 2009 multiple(a,b) demişsin sadece a ile çağırmışsın, b yi de koy Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
aquila Mesaj tarihi: Aralık 2, 2009 Paylaş Mesaj tarihi: Aralık 2, 2009 burda fonksiyonu tanimlarken iki tane variable alir demissin. int multiple(int num1,int num2) sonra burda fonksiyonu cagirirken sadece bi tane gondermissin multiple(disp) Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Chewy Mesaj tarihi: Aralık 2, 2009 Konuyu açan Paylaş Mesaj tarihi: Aralık 2, 2009 printf("Second number is not a multiple of the first"); return(multiple); burasımı sorun? abi call ederken return(fonksiyon ismi) bu sekilde diil mi? Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Chewy Mesaj tarihi: Aralık 2, 2009 Konuyu açan Paylaş Mesaj tarihi: Aralık 2, 2009 ama outputta tek sadece printf göstercek.Yani num1 ve num2 ye bakıp tek bi sey göstercek? Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Chewy Mesaj tarihi: Aralık 2, 2009 Konuyu açan Paylaş Mesaj tarihi: Aralık 2, 2009 aquila said: burda fonksiyonu tanimlarken iki tane variable alir demissin. int multiple(int num1,int num2) sonra burda fonksiyonu cagirirken sadece bi tane gondermissin multiple(disp) int multiple(disp)//buraya tek bisey dedim int num1, num2; yapsam? Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
chagy Mesaj tarihi: Aralık 2, 2009 Paylaş Mesaj tarihi: Aralık 2, 2009 return(multiple) ile fonksiyonun kendini returnlemeye çalışıyorsun, num1,num2 olarak main içinde belirlediğin değişkenlere atama yapmana rağmen, fonksiyon içine göndermiyorsun, disp = multiple(disp) yapmışsın ki ikinci disp yerine num1,num2 gelicek. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Alfheim Mesaj tarihi: Aralık 2, 2009 Paylaş Mesaj tarihi: Aralık 2, 2009 while'a hiç dikkat etmemişim Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
aquila Mesaj tarihi: Aralık 2, 2009 Paylaş Mesaj tarihi: Aralık 2, 2009 yalniz foknsiyonun hicbir amaci yok, direk mainde yaparsin orda yaptigini, kod sadece bu kadarsa. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
chagy Mesaj tarihi: Aralık 2, 2009 Paylaş Mesaj tarihi: Aralık 2, 2009 Chewy said: ama outputta tek sadece printf göstercek.Yani num1 ve num2 ye bakıp tek bi sey göstercek? fonksiyonunu returnsuz yap. int yerine void kullanan, yine parametreler int alsın, fonksiyon içinde printfleri yaz. main içinde sadece num1 ve num2 yi atayacak printf ve scanf i hazırla sonra multiple(num1,num2) ile yoluna devam et. deneme yapamıyorum şu an ama kabaca böyle. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Chewy Mesaj tarihi: Aralık 2, 2009 Konuyu açan Paylaş Mesaj tarihi: Aralık 2, 2009 abi hesaplama yapmıyoruz ben nie void kullanmıyorum ki ne malım ya :) @aquilla Fonksiyonları işliyoruzda o yüzden Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
chagy Mesaj tarihi: Aralık 2, 2009 Paylaş Mesaj tarihi: Aralık 2, 2009 while(num2%num1==0) { printf("Second number is a multiple of the first" ; } printf("Second number is not a multiple of the first" ; yalnız bu kısımda, while koşulu sağlansada sağlanmasa da iki printf de gözükür kanımca, onun yerine if - else kullanılsa daha bir mantıklı gibi. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Chewy Mesaj tarihi: Aralık 2, 2009 Konuyu açan Paylaş Mesaj tarihi: Aralık 2, 2009 hoca loop istio dfsd Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
aquila Mesaj tarihi: Aralık 2, 2009 Paylaş Mesaj tarihi: Aralık 2, 2009 o whiledaki durum karsilandigi zaman iki printfde gozukur. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
chagy Mesaj tarihi: Aralık 2, 2009 Paylaş Mesaj tarihi: Aralık 2, 2009 illa while ile yapacaksan , o zaman fonskiyon içinde bir değişken belirle , num2%num1 sağlıyorsa true sağlamıyorsa false olsun, while dışında if-else kullanarak printfleri yaz. hoş loop kullanmak başlıca saçma burada ama. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Chewy Mesaj tarihi: Aralık 2, 2009 Konuyu açan Paylaş Mesaj tarihi: Aralık 2, 2009 e peki loop u olumsuzda nasıl bitircem ben o zaman? forlamı yapıyım? Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
chagy Mesaj tarihi: Aralık 2, 2009 Paylaş Mesaj tarihi: Aralık 2, 2009 void yerine fonksiyonu string döndürüp, hem while içinde hem while dışında iki printf yerine return koyarsan, main'de printf ile fonksiyonu çağırırsan olur zannediyorum. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Kojiroh Mesaj tarihi: Aralık 2, 2009 Paylaş Mesaj tarihi: Aralık 2, 2009 multiple(2,6) diye çağırdın mı uçar program yalnız. while yerine if demen lazım orda. Hocanın loop'tan kastı, sonucu çıkarma yaparak bulması. 2x5 = 5 + 5 olayı. Tam katıysa, çıkarmaların sonucunda 0 çıkması gerek. void multiple(int num1, int num2) { int test = num2; while (test > 0) test -= num1; if(test == 0) printf("Second number is a multiple of the first"); else printf("Second number is not a multiple of the first"); } Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Arlooax Mesaj tarihi: Aralık 2, 2009 Paylaş Mesaj tarihi: Aralık 2, 2009 //------------------------------- // Returns 0 if num2 divides num1 //-------------------------------- int multiple(int num1, int num2){ return num1%num2; } Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Chewy Mesaj tarihi: Aralık 3, 2009 Konuyu açan Paylaş Mesaj tarihi: Aralık 3, 2009 guys bir de şuna baksanız :S #include<stdio.h> int topla(int num1,int num2,int num3,int num4) { int sum=0; double avg=0.0; sum=num1+num2+num3+num4; avg=sum/4; return(sum,avg); } int main(void) { int num1,num2,num3,num4,disp; printf("Enter the numbers: "); scanf("%d %d %d %d",&num1,&num2,&num3,&num4); disp=topla(sum,avg); printf("The numbers are %d %d %d %d || sum and average are %d %f",num1,num2,num3,num4,disp); return 0; } sum ve avg tanımlanmadı diyor neden?Fonksiyonda tanımladım onları ben. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Chewy Mesaj tarihi: Aralık 3, 2009 Konuyu açan Paylaş Mesaj tarihi: Aralık 3, 2009 return(sum); return(avg); } şöyle denedim olmadı.Fonksiyonda tek tek call ettirdim aşada şey sum'ı tanımladım sum=topla(sum); avg=topla(avg); dedim olmadı gene.Tek tek ayırarak call ettirsem onları olmaz mı? Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Larva Mesaj tarihi: Aralık 3, 2009 Paylaş Mesaj tarihi: Aralık 3, 2009 Gene üstteki hatandan yapmışsın bi fonksiyonu int topla(int num1,int num2,int num3,int num4) diye tanımlıyorsan o fonksiyonu çağırırken disp=topla(num1,num2,num3,num4); yani main de parametrelerin neyse onları yollıcaksın. Şöyle düşün fonksiyon kendi halinda kapalı bi kutu parametre olarak mainden aldıkları num1 num2 falan buna giriyo kendi içinde bişeyler yapıp sana bi çıktı veriyor. Sen fonksiyona dışardan fonksiyon içinde tanımladığın bişeyler yollamışın. Mainde tanımladığın num1 num2 yi yollaman gerek. Ayrıca return kısmı da return(sum,avg) şekilde çalışmaz fonksiyonu int topla olarak tanımladığın için tek bir int değeri geri dönebilirsin sadece return avg; mesela birden çok değer dönmek istiyosan pointerları görmeniz gerek önce. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Chewy Mesaj tarihi: Aralık 3, 2009 Konuyu açan Paylaş Mesaj tarihi: Aralık 3, 2009 yani doğrusu şu olması gerekmiyor mu? #include int topla(int sum,int avg) { int num1,num2,num3,num4; sum=num1+num2+num3+num4; avg=sum/4; return(sum,avg); } yada şöyle, int main(void) { int num1,num2,num3,num4,sum,avg; printf("Enter the numbers:)"; scanf("%d %d %d %d",&num1,&num2,&num3,&num4); sum=topla(sum); avg=topla(avg); printf("Sum and avg are %d %d",sum,avg); return 0; } Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Öne çıkan mesajlar