Difference between revisions of "Talk:Control Structures"
imported>StDoodle |
imported>Bale |
||
Line 12: | Line 12: | ||
Er, that is to say, I knew how to use them with a top-level variable, but not that you could omit that and use a sep. expression each time... and I could swear I tried to use expressions that way (apparently you can't do both at once!). :P --[[User:StDoodle|StDoodle (#1059825)]] 02:29, 4 May 2010 (UTC) | Er, that is to say, I knew how to use them with a top-level variable, but not that you could omit that and use a sep. expression each time... and I could swear I tried to use expressions that way (apparently you can't do both at once!). :P --[[User:StDoodle|StDoodle (#1059825)]] 02:29, 4 May 2010 (UTC) | ||
+ | |||
+ | I'm wondering if a more explicit example is necessary. What I'm talking about is: | ||
+ | |||
+ | {{ | ||
+ | CodeSample| | ||
+ | code= | ||
+ | <syntaxhighlight> | ||
+ | switch { | ||
+ | case x < 0 && x == x % 2: | ||
+ | print(x+" is negative and even"); | ||
+ | break; | ||
+ | case x < 0: | ||
+ | print(x+" is negative and odd"); | ||
+ | break; | ||
+ | case x == 0: | ||
+ | print("x is zero"); | ||
+ | break; | ||
+ | case x == x % 2 && x < 10: | ||
+ | print(x+" is a positive one digit even number"); | ||
+ | break; | ||
+ | case x != x % 2 | ||
+ | print(x+" is an odd number"); | ||
+ | break; | ||
+ | default: | ||
+ | print(x+" is greater than 9"); | ||
+ | } | ||
+ | </syntaxhighlight>}} | ||
+ | Do you think an example like that would be helpful? --[[User:Bale|Bale]] 03:19, 4 May 2010 (UTC) |
Revision as of 03:19, 4 May 2010
Ok, old version no longer needed. A couple cleanup requests:
- add return
- change looping to flow control OR add a separate section for continue, break & return
- the above 3 should each have a lv3 heading
--StDoodle (#1059825) 18:57, 18 April 2010 (UTC)
Never mind; the stuff, I fixed it. --StDoodle (#1059825) 19:21, 18 April 2010 (UTC) (Though further info for break, continue & return might be nice).
I was not aware of that use of switch statements, thanks! --StDoodle (#1059825) 13:55, 3 May 2010 (UTC)
- That use of switch statements was one of the things zarqon and I pushed for when we were cajoling veracity to add it as a mafia feature. It is so much more readable to use a single switch statement than 6 "else if" statements. --Bale 23:33, 3 May 2010 (UTC)
Er, that is to say, I knew how to use them with a top-level variable, but not that you could omit that and use a sep. expression each time... and I could swear I tried to use expressions that way (apparently you can't do both at once!). :P --StDoodle (#1059825) 02:29, 4 May 2010 (UTC)
I'm wondering if a more explicit example is necessary. What I'm talking about is:
switch {
case x < 0 && x == x % 2:
print(x+" is negative and even");
break;
case x < 0:
print(x+" is negative and odd");
break;
case x == 0:
print("x is zero");
break;
case x == x % 2 && x < 10:
print(x+" is a positive one digit even number");
break;
case x != x % 2
print(x+" is an odd number");
break;
default:
print(x+" is greater than 9");
}
Do you think an example like that would be helpful? --Bale 03:19, 4 May 2010 (UTC)