Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

Rexx Comparisons

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> CLIST & REXX
View previous topic :: :: View next topic  
Author Message
Akatsukami

Global Moderator


Joined: 03 Oct 2009
Posts: 1746
Location: Bloomington, IL

PostPosted: Thu Oct 28, 2010 9:59 pm    Post subject: Rexx Comparisons
Reply with quote

This is not a problem...anymore. But it was interesting enough that I thought I'd mention it.

A member of my team came to me with a piece of Rexx. An IF statement that compared two account numbers was failing inexplicably; although the account numbers were obviously different, the comparison was returning "true".

After staring at the code and the trace longer than I'm willing to admit, the answer stuck me: the account numbers were composed all of decimal digits, so as far as a typeless language like Rexx was concerned, they really were numbers. The default number of significant digits in TSO REXX is nine...and the differences were all to the right of the ninth digit.

I advised him to either increase the number of significant digits with the NUMERIC DIGITS statement, or to use the built-in COMPARE function, which always does a character comparison on its first two arguments, even though they be numeric.
Back to top
View user's profile Send private message

prino

Active Member


Joined: 07 Feb 2009
Posts: 989
Location: Oostende, Belgium

PostPosted: Thu Oct 28, 2010 11:58 pm    Post subject:
Reply with quote

This is just as interesting, a looping compare:

Code:
/* REXX exec to demonstrate funny compare behaviour */
a = '2e0'
b = '2ee'
c = '1e1'

say "a =" a
say "b =" b
say "c =" c

if a > b then say 'a > b' else say 'a ^> b'
if b > c then say 'b > c' else say 'b ^> c'
if c > a then say 'c > a' else say 'c ^> a'
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> CLIST & REXX All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
This topic is locked: you cannot edit posts or make replies. Calling REXX code from ISPF panel sanchita dey TSO/ISPF 4 Mon Jan 02, 2017 5:13 pm
No new posts REXX DB2: Dynamic allocation of DB2.D... BHAS CLIST & REXX 3 Mon Dec 19, 2016 8:26 pm
No new posts find particular member name in PDS us... ravi243 CLIST & REXX 10 Mon Dec 19, 2016 6:44 pm
No new posts What is the command to check MODE of ... rohanthengal CLIST & REXX 7 Fri Nov 18, 2016 1:48 pm
This topic is locked: you cannot edit posts or make replies. Rexx to create GDG by scanning JJ result krish.deepu CLIST & REXX 5 Tue Oct 25, 2016 5:32 pm


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us