Je m'excuse d'avance pour la simplicité de la réponse à cette question, je suis très nouveau sur netlogo et très hors de ma profondeur. J'essaie de lire une température de l'eau à partir d'un fichier et par conséquent, mes tortues meurent/se reproduisent en fonction de la température. J'ai enfin le fichier à lire, et j'ai défini la température de l'eau comme une variable globale, mais je suis maintenant coincé sur la partie comparaison. Cela ne me laissera pas comparer la variable à un nombre parce que je pense que la variable est une liste. Le message d'erreur suivant apparaît;Netlogo comparant la liste des variables globales aux nombres
The > operator can only be used on two numbers, two strings, or two agents of the same type, but not on a list and a number.
error while turtle 7 running >
called by procedure REPRODUCE
called by procedure GO
called by Button 'go'
Le code est ci-dessous;
globals [ year
month
water-temperature ]
extensions [ csv ]
to setup
ca
load-data
create-turtles 50
[ set size 1
set color red
setxy random-xcor random-ycor ]
reset-ticks
end
to go
ask turtles [ move
reproduce ]
run-temperature
end
to load-data
file-close-all
file-open "C:\\Users\\Hannah\\Documents\\Summer research project\\test3.csv"
end
to run-temperature
file-close-all
file-open "C:\\Users\\Hannah\\Documents\\Summer research project\\test3.csv"
while [ not file-at-end? ] [
set water-temperature csv:from-row file-read-line
tick ]
file-close
end
to move
rt random 50
lt random 50
fd 1
end
to reproduce
if water-temperature > 35 [ die ]
if water-temperature > 30 and water-temperature < 34 [ hatch 1 rt random-float 360 fd 1 ]
if water-temperature > 25 and water-temperature < 29 [ hatch 2 rt random-float 360 fd 1 ]
if water-temperature > 20 and water-temperature < 24 [ hatch 3 rt random-float 360 fd 1 ]
end
Je serais tellement reconnaissant pour toute aide!
Merci de
Hannah