Nesting Conditionals Syntax help

Ok, I think I understand what you mean by serial. Assuming my nesting does not work, I could restructure my logic to be completely serial which would mean I need to repeat the core logic with slight changes over and over again… Interesting.

3 Likes

Yes. If $…$ is required then the entire computation, with minor changes needs to be reapplied.
This is especially annoying when all of your results are purely numeric but rely on a condition such as #UNITSYS# that returns a string.

Otherwise you can actually do (a==b?0:(1*(x==y?0:3))).

3 Likes

Ok. let me see how far I can get…if I need $ or can () in my situation can work. None of my calculation relates to string, its all numeric.

3 Likes

You have it. The trick is in the designer.
image
If there is nothing above your expression, you have an error.
I often build with 3 onoffable text fields to test output as well.
Anything purely numeric should work the same as any other programming language on the ternary front so a blank output will be a missed bracket or # from a poorly coppied tag or double paste etc.

2 Likes

You do not need to test it, you can simply always add 7 and apply modulo on the result, it returns same remainder anyway.

3 Likes

So mod 7 twice should always give me the right solution?

2 Likes

So if I have a negative, I just tried it.

Mod(x,7) gives me a -1. If I mod((Mod(x,7)+7),7) should give me 6.

2 Likes

So if I’m working the days of the week based on 0-6, I should be using Mod(x,7) as there are still 7 days of the week.

2 Likes

if you get Mod(x,7) negative and you want it positive, make Mod((x+7),7)

3 Likes

I tried it but didn’t work. I had to do the (mod(mod(x,7)+7)%7)

Which is great. One less conditional. The shorter version still gets me to -1.

No matter what number I add 7 or 14 (I tried it to see what happens)…it just still gets me to -1 since the actual number must result in -1 for mod 7 which makes sense. Therefore, I have to add 7 after the first mod and then do another mod.

Still great! Thanks.

2 Likes

I’m gonna have to look at this tomorrow. I just got a brand new TV on Amazon compensation vouchers and It’s a whole inch bigger than the last at 11 so off to bed to try it out… By watching TV in bed…of the normal kind… I can still hear you while typing the whole I am digging…

3 Likes

IT FREAKING WORKS!!! Thanks all. So I’m 90% there. But holy crap!!!

(#DD#>=(((((#DOW#-((#DD#-60)+7))%7)+7)%7)=0?60+7:60+7+(7-((((#DOW#-((#DD#-60)+7))%7)+7)%7)))?(#DD#<=(((((#DOW#-((#DD#-305)+7))%7)+7)%7)=0?305:305+(7-((((#DOW#-((#DD#-305)+7))%7)+7)%7)))?14:15):15)

The 14 and 15 as the answers don’t mean anything. They are just dummy test results.

2 Likes

I’ve stretched it to 60 on my Roman numerals face, but I’ve only tested on GW1 & GW4.

EDIT1: never mind, you meant 2 with the operands. I don’t think I’ve got anything with more than 2.

EDIT2: it’s 1am and I’m half asleep… this is the most conditions I’ve done:
$#DH#==23&&#Dm#==59&&#Ds#>=58?((#DOW#+((#DWFSS#-348)/12))*(360/7)):(#DOW#*(360/7))$
I use that to smoothly transition the rotation of an analog day-of-week disk 2 seconds before midnight.

4 Likes

With all your help, I have posted a watch with Daylight Savings adjustment and Easter Sunday notification. The next Easter sunday is April 20th

2 Likes

Amazing . Well done . :+1: :trophy:

1 Like

Lovely, but I would still want the centre points of the hands circular, not oval. Only constructive observation I have.
I have some basic hands that might help

2 Likes

Yes, I agree. Not sure how to fix it other than getting new hands. My Graphic skills are pre-newbie.

2 Likes

Try the handmaiden:

Make, export, trim.

2 Likes

Much thanks for the templates. Now I have too many to choose from! I think for my current published style, I will have to find the same style but with a round center.

2 Likes

ok I patched it to make it look round for the time being. have to go through carefully and compare which new hands work.

2 Likes