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
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;
}
#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.
#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
Matematică,
8 ani în urmă
Religie,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă