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

Scrieti un program C++ in care se citeste de la tastatura un numar natural si calculeaza suma patratelor cifrelor inpare ale numarului citit

Răspunsuri la întrebare

Răspuns de MrXDead
1
#include "stdafx.h"
#include "iostream"

using namespace std;

void main()
{
 int n, limit, division, sumaptr = 0;
 int* arr;

 cout << "Cate cifre va avea numarul ?" ;
 cin >> limit;
 cout << "Care este numarul?";
 cin >> n;

 arr = new int[limit];

 for (int i = 0; i < limit; i++) {
  division = n / 10;
  arr[i] = n % 10;
  n = division;
 }

 for (int i = limit - 1; i >= 0; i--) {

  if (arr[i] % 2 != 0) {
   sumaptr = sumaptr + arr[i] * arr[i];
  }
 }

 cout << "\nSuma patratelor este:" << sumaptr << endl << endl;

 system("pause"); delete arr;
}

MrXDead: Am simplificat semnificativ codul intr-o versiune noua.
MrXDead: #include "stdafx.h"
#include "iostream"

using namespace std;

void main()
{
int n, sumaptr = 0;

cout << "Care este numarul?";
cin >> n;

do {

if ((n % 10) % 2 != 0) {
sumaptr = sumaptr + (n % 10 * n % 10);
}
n = n/10;
} while (n > 0);

cout << "\nSuma patratelor este:" << sumaptr << endl << endl;

system("pause");
}
Alte întrebări interesante