Scratch codes -- Find the value of a at the end of the program

In summary, the code in the "repeat 10" block is doing the following 10 times:1. Change a by 12. Add 1 to a3. Repeat the previous two4. Change a by -15. Subtract 1 from a6. Repeat the previous five7. Change a by -28. Subtract 2 from a9. Repeat the previous eight10. Change a by -3f
  • #1
Homework Statement
Find the value of a at the end of the program
Relevant Equations
No need of equations
Hi, i am really new to scratch programming so I am having difficulties in interpreting how does this code work ? I understand the first block set a = 5. But i don't know what is that " Repeat 10 " block. What does it do? So really stuck at that "repeat 10" so haven't gone further.
 

Attachments

  • 1.PNG
    1.PNG
    28.3 KB · Views: 49
  • #2
I think it's saying do the following block of code 10 times in a row.
 
  • #3
I think it's saying do the following block of code 10 times in a row.
Ok so if i set a=1. Then a <3 so a*2 = 1*2 = 2. If i repeat this process 10 times , what do i have to do with the a value each time. Add them up ? 2 *10= 20 which is option c) which is wrong. The correct answer is e) 15.
 
  • #4
Ok so if i set a=1.
There is no instruction set a to 1, the instruction inside the loop is change a by 1. What is the value of a the first time it reaches this instruction?
 
  • #5
There is no instruction set a to 1, the instruction inside the loop is change a by 1. What is the value of a the first time it reaches this instruction?
I thought "change a by 1" meant replace the value of 5 by 1.
"What is the value of a the first time it reaches this instruction?"- 5?
 
  • #6
I thought "change a by 1" meant replace the value of 5 by 1.
You are not the first person to have been caught out by that, it's a confusing "feature" of Scratch.
"What is the value of a the first time it reaches this instruction?"- 5?
Yes.
 
  • #7
You are not the first person to have been caught out by that, it's a confusing "feature" of Scratch.

Yes.
So we add 1 ? It becomes 6 and 6 is not smaller then 3 so we go back and keep adding 1 ? Repeating this 10 times gives a=15 which is correct.
 
  • Like
Likes DrClaude, FactChecker and pbuk
  • #8
I thought "change a by 1" meant replace the value of 5 by 1.
No, as already mentioned. There's a difference between "set" and "change by". "Set" replaces the old value of the variable by some new value. "Change by" adds or subtracts some value to a variable. In the program "change a by 1" adds 1 each time in the loop. If it had said "change a by -2" it would have subtracted 2 each time in the loop.

what do i have to do with the a value each time. Add them up ? 2 *10= 20 which is option c) which is wrong. The correct answer is e) 15.
In the program, a's value is always >= 5, so the if condition is never executed. Essentially what the code does is to increase a (which starts off at 5) by 1 ten times, which results in a's final value being 15.
 
  • Informative
Likes Tesla In Person
  • #9
I believe there are tutorials for Scratch that are easy and would introduce these basic Scratch statements.
I Googled it and this looks like one.
 
  • Like
Likes Tesla In Person

Suggested for: Scratch codes -- Find the value of a at the end of the program

Replies
3
Views
468
Replies
1
Views
311
Replies
8
Views
544
Replies
6
Views
623
Replies
4
Views
4K
Replies
2
Views
760
Replies
18
Views
644
Back
Top