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
 

 

How I'll find the duplicates in an array?

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> CICS
View previous topic :: :: View next topic  
Author Message
sreddy

New User


Joined: 16 Mar 2005
Posts: 8
Location: Bangalore

PostPosted: Thu Apr 13, 2006 3:33 pm    Post subject: How I'll find the duplicates in an array?
Reply with quote

Hi

Can any one explain how I'll find the duplicates in an array?
Back to top
View user's profile Send private message

DavidatK

Active Member


Joined: 22 Nov 2005
Posts: 700
Location: Troy, Michigan USA

PostPosted: Thu Apr 13, 2006 10:02 pm    Post subject: Re: How I'll find the duplicates in an array?
Reply with quote

sreddy,

Is this a CICS question, or a COBOL question? If COBOL, this should probable be posted in one of the COBOL forums.

Could you be more specific in your question please. What does the array structure look like, are you looking for 100% duplicates (every field equal) are just some key fields. What do you want to do with the duplicates when found?

The more information you can give, the better we can help.

Please come back

Dave
Back to top
View user's profile Send private message
sreddy

New User


Joined: 16 Mar 2005
Posts: 8
Location: Bangalore

PostPosted: Mon Apr 17, 2006 12:59 pm    Post subject: Re: How I'll find the duplicates in an array?
Reply with quote

Ex:

Array of 10 elements.

Like A C D B C A S R P D

My requirement is to find the repeated ones, like A C D in the above.
Back to top
View user's profile Send private message
DavidatK

Active Member


Joined: 22 Nov 2005
Posts: 700
Location: Troy, Michigan USA

PostPosted: Mon Apr 17, 2006 10:50 pm    Post subject: Re: How I'll find the duplicates in an array?
Reply with quote

sreddy,

First, send a PM to the Moderator for the CICS forum and have them move this to one of the COBOL forums please.

Does this code suit your porpose?

Code:


 WORKING-STORAGE SECTION.                                       
                                                               
 01  TABLES.                                                   
     05  TABL-ENTRIES            PIC S9(3)    COMP-3           
                                              VALUE 10.         
     05  TABL-VALUES.                                           
         10  FILLER              PIC X(8)     VALUE 'A'.       
         10  FILLER              PIC X(8)     VALUE 'C'.       
         10  FILLER              PIC X(8)     VALUE 'D'.       
         10  FILLER              PIC X(8)     VALUE 'B'.       
         10  FILLER              PIC X(8)     VALUE 'C'.       
         10  FILLER              PIC X(8)     VALUE 'A'.       
         10  FILLER              PIC X(8)     VALUE 'S'.       
         10  FILLER              PIC X(8)     VALUE 'R'.       
         10  FILLER              PIC X(8)     VALUE 'P'.       
         10  FILLER              PIC X(8)     VALUE 'D'.       
     05  TABL REDEFINES TABL-VALUES                             
                                 PIC X(8)     OCCURS 10 TIMES. 
     05  SUB-1                   PIC S9(3)    COMP-3 
                                              VALUE 1.       
     05  SUB-2                   PIC S9(3)    COMP-3         
                                              VALUE 1.       
                                                             
 LINKAGE SECTION.                                           
                                                             
                                                             
 PROCEDURE DIVISION.                                         
                                                             
     DISPLAY 'TABLE VALUES'                                 
     DISPLAY ' '.                                           
                                                             
     PERFORM                                                 
       VARYING SUB-1 FROM 1 BY 1                             
       UNTIL SUB-1 > TABL-ENTRIES                           
           DISPLAY TABL(SUB-1)                               
     END-PERFORM.
                                           
     DISPLAY ' '                                                 
     DISPLAY 'DUP LIST'                                           
     DISPLAY ' '                                                 
                                                                 
     PERFORM                                                     
       VARYING SUB-1 FROM 1 BY 1                                 
       UNTIL SUB-1 > TABL-ENTRIES                                 
         PERFORM                                                 
           VARYING SUB-2 FROM 1 BY 1                             
           UNTIL SUB-2 > SUB-1 - 1                               
             IF TABL(SUB-1) = TABL(SUB-2)                         
             THEN                                                 
                 PERFORM DUP-FOUND                               
                 MOVE SUB-1 TO SUB-2                             
             END-IF                                               
         END-PERFORM                                             
     END-PERFORM.                                                 
                                                                 
     GOBACK.       
                                                         
 DUP-FOUND.                                               
                                                         
     DISPLAY 'DUP VALUE ''' TABL(SUB-1)                   
             ''' AT TABLE LOC ''' SUB-1                   
             ''' WAS FOUND AT TABLE LOC ''' SUB-2 ''''.   
                                                         


Results

Code:


                                                                       
TABLE VALUES                                                           
                                                                       
A                                                                       
C                                                                       
D                                                                       
B                                                                       
C                                                                       
A                                                                       
S                                                                       
R                                                                       
P                                                                       
D                                                                       
                                                                       
DUP LIST                                                               
                                                                       
DUP VALUE 'C       ' AT TABLE LOC '005' WAS FOUND AT TABLE LOC '002'   
DUP VALUE 'A       ' AT TABLE LOC '006' WAS FOUND AT TABLE LOC '001'   
DUP VALUE 'D       ' AT TABLE LOC '010' WAS FOUND AT TABLE LOC '003'   




Dave
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 -> CICS All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts Dynamic array request/response contai... Suja.Sai CICS 2 Tue Jan 24, 2017 11:37 am
No new posts find particular member name in PDS us... ravi243 CLIST & REXX 10 Mon Dec 19, 2016 6:44 pm
No new posts Removing Duplicates based on certain ... chandracdac DFSORT/ICETOOL 8 Fri Dec 09, 2016 4:40 am
No new posts How to find the first monday of the w... abdulrafi COBOL Programming 10 Fri Nov 25, 2016 3:24 pm
No new posts Updating the counters after eliminati... PANDU1 DFSORT/ICETOOL 12 Mon Nov 21, 2016 9:47 am


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