#include
Step 2: Compile to make sure you entered it correctly, but don't run it; it is an innite loop and running it will make you nervous. Note that setup() is called by main() exactly once and loop() is called as often as necessary to make the "done" value be interpreted as true. Step 3: Add code to setup() to initialize "sum", "done" and "i" as necessary. Add code to loop() to compute the sum of the data. Each time it runs it needs to increment "i" and then use "i" to add an array value to sum. Run it to make sure the output is \Sum = 55". I ended up with three new lines of code in setup() and three other new lines of code in loop(). While you are working on this, your program may encounter an innite loop that you did not intend. If you don't get an output immediately, press Ctl-C (the Control key and the C key simultaneously). DO NOT modify main() in any way. DO NOT add code anywhere except to setup() and loop(). If you will perform the correct initializations in setup() and the correct computations, including setting "done" at the correct point, in loop(), this will work as required.
Im not sure how to start this, I dont know how to add the array values. Any help would be much appreciated.
a simple way to do this: #include <stdio.h> int data[] = {1, 3, 5, 2, 4, 6, 7, 9, 8, 10}; int summ=0; int sum(int data[]){ for (i=0;i<10;i++){ summ += data[i]; } return summ; } int main(){ printf("Sum= %d",sum(data[])) }
return 0; before the last "}"
Should it be i<11? How does this add a space to the array after this sum is calculated? What does summ += data[i] do exactly? Does it increment where you are adding data in the array?
Thanks for your help by the way.
look at this, now is better: #include <stdio.h> int data[]={1, 3, 5, 2, 4, 6, 7, 9, 8, 10}; int i,summ=0; int sum(int data[]){ for(i=0;i<10;i++){ summ += data[i]; } return summ; } int main() { printf("Sum= %d",sum(data)); return 0; }
it must be i<10, because we count the values of an array starting in position 0 so if we have an array with n elements i<n
got it?
ok, what code should go in loop and what code should go in setup? setup() { sum = 0; } loop() for (i=0; i<10; i++) { sum=sum+a[i]; } Like that?
a = data
the loop is right, but the setup i do not understand why it is necessary here
I have to add code only in loop and setup, nowhere else.
Can loop stay a void type?
yes sure, but it's better stay it alone becouse you can call this function any time in our code
hey, maybe the setup() is here to call the loop(), gets the result and check the value if it's right returning a bool value... i'm not sure
Add code to setup() to initialize "sum", "done" and "i" as necessary. Add code to loop() to compute the sum of the data. Each time it runs it needs to increment "i" and then use "i" to add an array value to sum.
setup() sum=0; i=0; how do initialize done? loop() for (i=0; i<10; i++) { sum=sum+data[i]; } How does that look?
I think all I need is a way to set "done" in loop() - what do you think?
yeah maybe... but loop() have to return the sum
I got it, it compiled and returned sum=55, thanks Joao.
xD
@jakev8
@jakev8 .
I never initialized "done" - it still gave the correct output tho.
Join our real-time social learning platform and learn together with your friends!