Informatică, întrebare adresată de Tudorica69, 9 ani în urmă

Un număr natural nenul n se numește norocos dacă pătratul lui se poate scrie ca sumă de n numere naturale consecutive. Exemplu:

3 deoarece 3 * 3 = 2 + 3 + 4

7 deoarece 7 * 7 = 4 + 5 + 6 + 7 + 8 + 9 + 10

Cerința
Se dă un număr natural n. Dacă numărul este norocos afișați cele n numere consecutive care adunate dau pătratul acestuia.

Date de intrare
Programul citește de la tastatură numărul n.

Date de ieșire
Daca n este norocos, programul va afișa pe ecran cele n numere consecutive care adunate dau n * n, separate prin spații. In caz contrar, programul va afișa mesajul NU ESTE NOROCOS

Restricții și precizări
1 ≤ n ≤ 1000

Exemplu
Intrare

7
Ieșire

4 5 6 7 8 9 10
Explicație
7 este numar norocos iar 7 * 7 se poate scrie ca 4 + 5 + 6 + 7 + 8 + 9 + 10

Răspunsuri la întrebare

Răspuns de ap53
30
#include <iostream>

using namespace std;

int main()
{
    int n;
    cin>>n;
    if(n % 2 == 0)
        cout<<"NU ESTE NOROCOS";
    else
    {
        int k=(n+1)/2;
        while(n)
        {
            cout<<k<<" ";
            k++;
            n--;
        }
    }
}
Răspuns de KindaBored
47
#include <iostream>
using namespace std;
int n,i,x;
int main()
{
   cin>>n;
   x=n/2+1;
   if (n%2==0)
    cout<<"NU ESTE NOROCOS";
   else
      for (i=x;i<x+n;i++)
       cout<<i<<" ";
   return 0;

}


Alte întrebări interesante
Matematică, 9 ani în urmă