Arkaşlar ödev aşağıdadır.Ben uğraştım ama bi türlü toparlayamadım.Yardım edenlere şimdiden teşekkurler.
Soru: 1 ile 50 arasındaki çift sayıların karesini hesaplayıp, bir diziye aktaran bir alt
programı (fonksiyon) döngü komutları kullanmadan yazınız? (Rekürsif fonksiyonlarla)
Ana program içerisinde de bu dizinin elemanlarını satır satır ekrana yazdırınız.
C++ Ödev (yardım lütfen)
3
●744
- 27-11-2008, 02:26:09Al bakalım recursive kullanılarak kareler alınıyor ve dizi içerisine aktarılıyor ve ekrana basılıyor.
#include <stdio.h> #include <conio.h> #define son 100 int sonuclar[son+1]; kareler (int bas); void main () { clrscr(); kareler(1); getch(); } kareler (int bas) { bas++; if (bas%2==0) { sonuclar[bas] = (bas*bas); printf("%d\tkaresi\t%d \n", bas, sonuclar[bas]); } if (bas<=son-1) { kareler(bas); } return 0; } - 27-11-2008, 12:56:29
#include <iostream> #include <iomanip> #define boyut 25 using namespace std; void kareler(int*,int =1); int main(){ int* dizi = new int[boyut]; kareler(dizi); for (int i=2;i<=50;i+=2,dizi++) cout << setw(2) << i << setw(10) << *dizi << endl; return 0; } void kareler(int* adres,int sayi){ if (sayi>50) return; if (sayi%2==0) { *adres=sayi*sayi; adres++; } kareler(adres,sayi+1); }