I am mostly familiar with C++. :?: Please help. Question is below :

Write a program to discover how many numbers between 1 and 40 can be expressed as

the sum of 4 positive squares (e.g. 15 = 12 + 12 + 22 + 32).

kakaliki
0
Newbie Poster

I am mostly familiar with C++. :?: Please help. Question is below :

Write a program to discover how many numbers between 1 and 40 can be expressed as

the sum of 4 positive squares (e.g. 15 = 12 + 12 + 22 + 32).

Jump to PostI am mostly familiar with C++. :?: Please help. Question is below :

Write a program to discover how many numbers between 1 and 40 can be expressed as

the sum of 4 positive squares (e.g. 15 = 12 + 12 + 22 + 32).Ok, a couple of …

Jump to PostI don't see the math bbCode. I think the OP means

15 = 1^2 +1^2 +2^2 +3^2 = 1 + 1 + 4 + 9 = 15

where ^ represents raising to a power.

To the OP : Pencil and paper till you see a pattern. Get …

Jump to Post>> i know i need to make a function and call it in the main program

So make a function and call it in the main program. No one can help you debug what you wrote. The syntax has too many problems.

But if you want me to …

Jump to PostIt's a bit hard to understand what you are saying. If you have compilation errors then it might be useful to post some

specificexamples as well as the code that I presume you have now modified

Colezy
4
Light Poster

I am mostly familiar with C++. :?: Please help. Question is below :

Write a program to discover how many numbers between 1 and 40 can be expressed as

the sum of 4 positive squares (e.g. 15 = 12 + 12 + 22 + 32).

Ok, a couple of problems...

Firstly, 12 + 12 + 22 + 32 does NOT equal 15 it is 78

Secondly, none of those 4 numbers are squares. The valid squares would be 1,4,9,16,25,36.

Thirdly, by the sounds of it you are having a problem with the maths, not the programming. Have you designed an algorithm for this yet? That would be your first step, than translate that into actual C++.

Colezy

VernonDozier
2,218
Posting Expert
Featured Poster

I don't see the math bbCode. I think the OP means

15 = 1^2 +1^2 +2^2 +3^2 = 1 + 1 + 4 + 9 = 15

where ^ represents raising to a power.

To the OP : Pencil and paper till you see a pattern. Get the math down then turn the math into C++. You need to make an attempt and ask a specific question.

kakaliki
0
Newbie Poster

exactly vernon. i did come up with something.yes sir i am attempting it

int sum();

sum= x*x+(x+1)*(x+1)+(x+2)*(x+2)+(x+3)*(x+3)

(x=1,x<40,x++)

return 0

}

oki i am sorry i know i need to make a function and call it in the main program but i did try a bit there. please modify it as necessary. i think i am nearly there.

VernonDozier
2,218
Posting Expert
Featured Poster

>> i know i need to make a function and call it in the main program

So make a function and call it in the main program. No one can help you debug what you wrote. The syntax has too many problems.

But if you want me to modify what you wrote, here goes.

```
int sum();
int sum()
{
int sum;
for(int x = 0; x < 40; x++)
{
sum= x*x+(x+1)*(x+1)+(x+2)*(x+2)+(x+3)*(x+3);
}
return sum;
}
int main()
{
int returnValue = sum();
return 0;
}
```

Now what?

Edited
by VernonDozier because:
*
typo *

kakaliki
0
Newbie Poster

yes. this is it,finally., problem solved. thank you :)

i know what i need to do. its just that i need more practice coz i make syntax mistakes a lot.

kakaliki
0
Newbie Poster

the code looks fine, just when i am trying to run this on dev c++ with

system ("pause");

so that i can see the answer but i am getting a lot of errors. can you please have a run and see if u get something.

thanks.

Valaraukar
4
Junior Poster

**specific** examples as well as the code that I presume you have now modified

Edited
by Valaraukar because:
*
n/a *

kakaliki
0
Newbie Poster

```
#include<iostream>
int sum();
int sum()
{
int sum;
for(int x = 0; x < 40; x++)
{
sum= x*x+(x+1)*(x+1)+(x+2)*(x+2)+(x+3)*(x+3);
}
return sum;
}
int main()
{
int returnValue = sum();
return 0;
cout<<sum()<<endl;
system ("pause");
}
```

I want the program to show me the results. but its flashing too quickly. i would like to include a cout but its not doing the job. :(

kakaliki
0
Newbie Poster

Colezy
4
Light Poster

try including <stdlib>

Colezy

Valaraukar
4
Junior Poster

`#include<iostream> int sum(); int sum() { int sum; for(int x = 0; x < 40; x++) { sum= x*x+(x+1)*(x+1)+(x+2)*(x+2)+(x+3)*(x+3); } return sum; } int main() { int returnValue = sum(); return 0; cout<<sum()<<endl; system ("pause"); }`

I want the program to show me the results. but its flashing too quickly. i would like to include a cout but its not doing the job. :(

Did you not notice that you are returning from main before you use cout?

kakaliki
0
Newbie Poster

Here is the amendment below...i am still getting errors there is a problem in the code. :(

Have a look guys.

```
#include<iostream>
int sum();
int sum()
{
int sum;
for(int x=0 ; x < 40; x++)
{
sum= (x*x)+((x+1)*(x+1))+((x+2)*(x+2))+((x+3)*(x+3));
}
return sum;
}
int main()
{
int returnValue;
returnValue= sum();
cout <<"The sum is: "<< returnValue<<endl;
system ("pause");
return 0;
}
```

VernonDozier
2,218
Posting Expert
Featured Poster

>> I am mostly familiar with C++.

You are clearly not familiar with C++. All these errors would stand out if you were. You need to either put "using namespace std" after "#include <iostream>" or you need to replace "cout" with "std::cout" and replace "endl" with "std::endl".

Beyond the syntax, the code and the algorithm doesn't make any sense. My original post simply turned your code into something that compiled. The code WILL NOT WORK, even if you get the errors out, because the code has nothing to do with the problem.

You need to:

- Learn basic C++ syntax.
- Think about the problem and how to solve it. It is far more complex than the given code, even when you get the errors out. The code makes no sense.

Right now you're floundering. Take out pencil and paper and work through the problem mathematically till you see a pattern. Then take a few C++ tutorials and turn the math into code.

burcin erek
0
Junior Poster in Training

is it this ?

```
#include<iostream>
#include <conio.h>
#include <Windows.h>
using namespace std;
int main()
{
int sum=0;
for (int x=1;x<40;x++)
{sum= x*x+(x+1)*(x+1)+(x+2)*(x+2)+(x+3)*(x+3);
cout<<x<<".value="<<sum<<"\n";
Sleep(1000);
}
system ("pause");
}
```

kakaliki
0
Newbie Poster

Vernon thanks for the tips. I mean C++ is the only programming language I know. But I am still learning it,by myself and guides from tutorials online and youtube, plus practice with programs in the dev c++. I am trying to solve tough(for me) questions. There is no teacher to guide me except you guys who are pro in this language.

Burcin Erek. I am looking at your code will post back soon. Thanks mate.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.