home *** CD-ROM | disk | FTP | other *** search
/ Sams Cobol 24 Hours / Sams_Cobol_24_Hours.iso / source / ch10 / CHAPT10X.COB < prev   
Text File  |  1998-09-14  |  2KB  |  59 lines

  1. 000010 @OPTIONS MAIN
  2. 000020 Identification Division.
  3. 000030 Program-Id.  Chapt10x.
  4. 000031* Accept And Format Phone Number 5 Times
  5. 000040*
  6. 000041* This Example Is But One Possible Solution To The Exercise.
  7. 000042* Yours May Differ.
  8. 000043*
  9. 000044 Environment Division.
  10. 000050 Configuration Section.
  11. 000051 Source-Computer.  IBM-PC.
  12. 000055 Object-Computer.  IBM-PC.
  13. 000056 Data Division.
  14. 000057 Working-Storage Section.
  15. 000067 01  Formatted-Number     Pic X(14) Value "(XXX) XXX-XXXX".
  16. 000072 01  Formatted-Alternate   Pic X(8)  Value "XXX-XXXX".
  17. 000073 01  Input-Fields.
  18. 000075     03  Phone-Number      Pic 9(10) Value Zeros.
  19. 000076     03  The-Edited-Number Pic X(14) Value Spaces.
  20. 000077 Screen Section.
  21. 000078 01  Phone-Entry Blank Screen.
  22. 000079     03  Line 01 Column 01 Value " Enter Phone Number: ".
  23. 000080     03  Line 01 Column 22 Pic Z(10) Using Phone-Number.
  24. 000081     03  Line 03 Column 01 Value "Edited Phone Number: ".
  25. 000082     03  Line 03 Column 22 Pic X(14) From The-Edited-Number.
  26. 000083 Procedure Division.
  27. 000159 Chapt10x-Start.
  28. 000160     Perform Display-And-Accept 5 Times
  29. 000161* After The Last One We Need To Display The Result Before Stopping.
  30. 000162     Display Phone-Entry
  31. 000163     Stop Run
  32. 000164     .
  33. 000165 Display-And-Accept.
  34. 000168     Display Phone-Entry
  35. 000169     Accept  Phone-Entry
  36. 000170* Reset Our Edit Patterns For The Next Set Of Numbers
  37. 000171     Move "(XXX) XXX-XXXX" To Formatted-Number
  38. 000172     Move "XXX-XXXX" To Formatted-Alternate
  39. 000173     If Phone-Number > 9999999
  40. 000174* Number Large Enough To Contain Area Code
  41. 000175        Perform Format-Large-Number
  42. 000181     Else
  43. 000182* Number Not Large Enough To Contain An Area Code
  44. 000183        Perform Format-Small-Number
  45. 000188     End-If
  46. 000189     .
  47. 000190 Format-Large-Number.
  48. 000191     Inspect Formatted-Number
  49. 000192       Replacing First "XXX"  By Phone-Number (1:3)
  50. 000193                 First "XXX"  By Phone-Number (4:3)
  51. 000194                 First "XXXX" By Phone-Number (7:4)
  52. 000195     Move Formatted-Number To The-Edited-Number
  53. 000196     .
  54. 000197 Format-Small-Number.
  55. 000198     Inspect Formatted-Alternate
  56. 000199       Replacing First "XXX"  By Phone-Number (4:3)
  57. 000200                 First "XXXX" By Phone-Number (7:4)
  58. 000201     Move Formatted-Alternate To The-Edited-Number
  59. 000202     .