If elseif elseif else in netlogo

I want to have if if elseif else if else structure in netlogo, but it seems like it is not working at the moment.

ifelse random 100 < 68 [ set HBB-Genes "A,A" ];;68% [ifelse random 100 < 2 [set HBB-Genes "S,S"] ;;2% [ifelse random 100 < 15 [set HBB-Genes "A,A"];;15% [set HBB-Genes "A,A"] ;;15% ]] 

I would like to have a 68% chance of having an HBB-Genes set with "A, A" and the next with a 2% probability, etc. If someone has experience with netlogo and can help him, he will be tested a lot. Thanks.

+1
source share
2 answers

You only want to select one random number, not several. You can use let to store a random number so you can reference it later. So:

 let chance random 100 ifelse chance < 68 [ set HBB-Genes "A,A" ] [ ifelse chance < 70 [ set HBB-Genes "S,S" ] [ ifelse chance < 85 ... 

Etc.

+5
source

This can be done as follows: if the statements are different, the following if statements get the rest of the probability of occurrence.

 if geneNumber <= 68 [ set HBB-Genes "A,A" set color blue ] if (geneNumber > 68) and (geneNumber <= 83) [ set HBB-Genes "A,S" set color green ] if (geneNumber > 83) and geneNumber <= 98 [ set HBB-Genes "S,A" set color green ] if geneNumber > 98 [ set HBB-Genes "S,S" set color red ] 
+1
source

All Articles