Informatică, întrebare adresată de botezdavidmihai3, 8 ani în urmă

Salutare. Sunt anul 1 la facultatea de informatica (fara frecventa) si am cateva probleme legate de matematica (sunt bata) la care nu dau de cap. La unele ma descurc, dar la astea ca exemplu nu:
a. P=1*4*7*...*(3*n-2)
b. S=1*2+2*3+3*4+...+n*(n+1)
c. S=1+(1*2)+(1*2*3)+...+(1*2*3*...*n)
d. P=(2n-1)!
Practic trebuie sa le calculez in c++, n fiind dat de consola. Dar habar nu am sincer! Sper ca ma puteti ajuta :)

Răspunsuri la întrebare

Răspuns de misterL
1

Răspuns:

#include <iostream>

using namespace std;

int n,i,p1=1,s1,s2;

int factorial(int n)

{

   int p=1;

   for(i=2;i<=n;i++)

       p*=i;

   return p;

}

int main()

{

   cin>>n;

   //a)

   for(i=1;i<=3*n-2;i=i+3)

       p1*=i;

   cout<<p1<<'\n';

   //b)

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

       s1+=i*(i+1);

   cout<<s1<<'\n';

   //c)

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

       s2+=factorial(i);

   cout<<s2<<'\n';

   //d)

   cout<<factorial(2*n-1);

   return 0;

}

Explicație:

Acest cod functioneaza pentru valori mici a lui n. Pentru valori mari este mai complicat, dar nu ai specificat o limita pentru n, deci ar trebui sa mearga pentru tine. Poti sa declari variabilele long long daca doresti.

Alte întrebări interesante