Discuss Scratch
- Discussion Forums
- » Help with Scripts
- » Support with SENSE / SCRATCH script with processing lists
- jase1985
- New to Scratch
4 posts
Support with SENSE / SCRATCH script with processing lists
Hi all, I'm hoping someone with more knowledge than myself in this area (which shouldn't be too hard) can support me with the brick wall I seem to have run in to. It's probably worth mentioning that I'm using SENSE too but I'm told SCRATH and SENSE are very similar…
As part of an assignment I've been given the following task:
To create a log file from the list pressureReadings which contains 100 sensor measurements
The first reading in pressureReadings was taken at time 1, the second at time 2 and so on. The records you create must have time values matching these times.
The part I am struggling with is getting the program to read from the list in order from 1 - 100. It wont allow me to use ‘change by’ blocks as pressureReadings is a list and not a variable. I just don't know what else to try.
I hope that makes sense (no pun intended)
Any support / suggestions will be greatly appreciated.
As part of an assignment I've been given the following task:
To create a log file from the list pressureReadings which contains 100 sensor measurements
The first reading in pressureReadings was taken at time 1, the second at time 2 and so on. The records you create must have time values matching these times.
The part I am struggling with is getting the program to read from the list in order from 1 - 100. It wont allow me to use ‘change by’ blocks as pressureReadings is a list and not a variable. I just don't know what else to try.
I hope that makes sense (no pun intended)
Any support / suggestions will be greatly appreciated.
- drmcw
- Scratcher
1000+ posts
Support with SENSE / SCRATCH script with processing lists
if it was a Scratch list
set count to 1
repeat 100
do what you want with item count of list
change count by 1
That will loop through the list in order and you get the item from the list with item count from list where count is a variable.
You could do it without the variable if you don't mind deleting everything from the list with
repeat until length of list = 0
do what you want with item 1 of list
delete item 1 of list
set count to 1
repeat 100
do what you want with item count of list
change count by 1
That will loop through the list in order and you get the item from the list with item count from list where count is a variable.
You could do it without the variable if you don't mind deleting everything from the list with
repeat until length of list = 0
do what you want with item 1 of list
delete item 1 of list
Last edited by drmcw (July 16, 2013 19:04:33)
- scubajerry
- Scratcher
1000+ posts
Support with SENSE / SCRATCH script with processing lists
Just adding to what drmcw said. Once you create a list in the data tab, a bunch of new commands pop up. One of them is ITEM ___ of list_name
That retrieves the data. If you want to change it, you have to use the REPLACE command.
You can build the list by either to an ADD for each specific piece of data you have, or you can use the ADD with dummy data and the using the REPLACE to put the specific data in the list.
That retrieves the data. If you want to change it, you have to use the REPLACE command.
You can build the list by either to an ADD for each specific piece of data you have, or you can use the ADD with dummy data and the using the REPLACE to put the specific data in the list.
- Failord
- Scratcher
1000+ posts
Support with SENSE / SCRATCH script with processing lists
This seems like a case for my Listwizard personna.
Look for the invisible text in my signature and a confirmation on the other profile to prove it's me.
If you need a remix showing how to do this, let me know.
Look for the invisible text in my signature and a confirmation on the other profile to prove it's me.
If you need a remix showing how to do this, let me know.
Last edited by Failord (July 16, 2013 22:22:04)
Thanks for the ride, Scratch Team and community! Unfortunately, the time has come for me to move on from Scratch, so I'll no longer be using the forums. Thanks again, and farewell!
Invisible text! This will show you if a profile I claim to be mine IS mine. Just remember to visit the profile and see if I confirmed in the comments.
For old time's sake, see the revolutionary Laser Battle 2.0! Also see Unstoppable Game!
And no, the evil kumquats didn't alter my signature…
- jase1985
- New to Scratch
4 posts
Support with SENSE / SCRATCH script with processing lists
Thanks for the responses everyone. I still haven't cracked it yet. I can't use the replace block as it deletes items, I can't lose the variable either. I can get the program to write the first line out of the list to a text file which it does repeatedly for the length of the list (100 items). However, it's only writing that first line 100 times. It needs to write line 1, then 2 and so on…
I dont know why I can't figure it out
I dont know why I can't figure it out
- scubajerry
- Scratcher
1000+ posts
Support with SENSE / SCRATCH script with processing lists
If you can share a link to the project, we can be more help.
- drmcw
- Scratcher
1000+ posts
Support with SENSE / SCRATCH script with processing lists
Thanks for the responses everyone. I still haven't cracked it yet. I can't use the replace block as it deletes items, I can't lose the variable either. I can get the program to write the first line out of the list to a text file which it does repeatedly for the length of the list (100 items). However, it's only writing that first line 100 times. It needs to write line 1, then 2 and so on…
I dont know why I can't figure it out
How didn't using a variable, called for example count, work as in the example above?
- jase1985
- New to Scratch
4 posts
Support with SENSE / SCRATCH script with processing lists
I will try and post a link when I get in later. Not sure why it didn't work drmcw. here's what i tried
set variable theTime to 1
set reportString to item theTime of listName
loop - until length of listName
append reportStringto myfile.txt
change theTime by 1
At least i think that's right…
set variable theTime to 1
set reportString to item theTime of listName
loop - until length of listName
append reportStringto myfile.txt
change theTime by 1
At least i think that's right…
- drmcw
- Scratcher
1000+ posts
Support with SENSE / SCRATCH script with processing lists
I will try and post a link when I get in later. Not sure why it didn't work drmcw. here's what i tried
set variable theTime to 1
set reportString to item theTime of listName
loop - until length of listName
append reportStringto myfile.txt
change theTime by 1
At least i think that's right…
As long as the set report string is inside the loop then it should work.
- jase1985
- New to Scratch
4 posts
Support with SENSE / SCRATCH script with processing lists
Ok, so i got there in the end. Thanks to everyone who supported me, here's what I did… I thought it be best if I just upload an image. I guess I didn't explain it very clearly at the start but the important thing is that I managed to figure it out in the end!
http://www.use.com/0db9d063a10edc8db35b
http://www.use.com/0db9d063a10edc8db35b
- Discussion Forums
- » Help with Scripts
- » Support with SENSE / SCRATCH script with processing lists