Witam mam napisać program który pobierze od użytkownika jakiego rozmiaru mam być tablica, następnie użytkownik ma ją uzupełnić a na koniec program wyświetlić sumę kwadratów elementów tej tablicy. Program napisałem w poniższy sposób tylko powiedzmy dla tablicy 3 elementowej nie zależnie jakie liczy wprowadzę suma zawsze wynosi 7.
Proszę o nakierowanie mnie na błąd który popełniłem.
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int wymiar;
do{
cout << "Podaj wymiar tablicy. " << endl;
cin >> wymiar;
}while(wymiar <= 0);
int *tablica = new int[wymiar];
for (int i = 0; i < wymiar; i++)
{
cout << "Podaj element nr: " << i + 1<< ": " << endl;
cin >> tablica[i];
}
cout << "Obliczam sume kwadratow elementow tablicy: " << endl;
for (int i = 0 ; i < wymiar; i++)
{
tablica[i] = pow(2,i);
}
int suma = 0;
for (int i = 0; i < wymiar; i++)
{
suma += tablica[i];
}
cout << suma << endl;
delete [] tablica;
return 0;
}
C++ pow
? Tu jest właściwie błędem użyciepow(
ponieważ ta funkcja jest mocno skomplikowana, normalni ludzi używajątablica[i]*tablica[i]
lub piszą funkcjeint pow2(int x) { return x*x; }