Napisz program obliczający sumę n kolejnych liczb nieparzystych, począwszy od 1. Przygotuj dwie wersje programu: iteracyjną i rekurencyjną.

DAJE NAJ!! + 100 pkt.


Odpowiedź :

Odpowiedź:

#include <iostream>

int oddSumRecursively(int n) {

   if (n == 1) {

       return 1;

   } else if (n % 2 == 1) {

       return oddSumRecursively(n - 1) + n;

   }

   return oddSumRecursively(n - 1);

}

int oddSumIteratively(int n){

   int sum = 0;

   for(int i = 1; i <= n; i++){

     if(i % 2 == 1){

         sum += i;

     }

   }

   return sum;

}

int main() {

   int n;

   std::cout << "Podaj n\n";

   std::cin >> n;

   std::cout << "Rekurencyjnie: " << oddSumRecursively(n) << std::endl;

   std::cout << "Iteracyjnie: " << oddSumIteratively(n) << std::endl;

   return 0;

}

Wyjaśnienie:

W C++ zrobione