home *** CD-ROM | disk | FTP | other *** search
/ Best of German Only 1 / romside_best_of_german_only_1.iso / doshelp / hpdruck / lhadruck.exe / DEMO3.TXT < prev    next >
Text File  |  1990-04-24  |  5KB  |  70 lines

  1. *╔═════════════════════════════════════════════════════════════════════╗
  2. *║Beschreibung der Subroutine UPCASE (IN,OUT)                          ║
  3. *║Die Subroutine kopiert den String "IN" in den String "OUT". Dabei    ║
  4. *║werden alle Kleinbuchstaben in Großbuchstaben umgewandelt.           ║
  5. *║Die Strings dürfen eine Länge von maximal 200 Zeichen haben.         ║
  6. *║Es ist möglich, für die Strings "IN" und "OUT" dieselbe Variable zu  ║
  7. *║verwenden.                                                           ║
  8. *╟─────────────────────────────────────────────────────────────────────╢
  9. *║Parameter:                                                           ║
  10. *║CHARACTERSTRING  Eingabestring [max. 200 Zeichen].                   ║
  11. *║CHARACTERSTRING  Return: Ausgabestring [max. 200 Zeichen].           ║
  12. *╟─────────────────────────────────────────────────────────────────────╢
  13. *║Subroutinen:     LAENGE                                              ║
  14. *╟─────────────────────────────────────────────────────────────────────╢
  15. *║Beispiel:        CHARACTER IN*100,OUT*80                             ║
  16. *║                 IN='Zu suchende Datei: UPCASE.FOR'                  ║
  17. *║                 CALL UPCASE (IN,OUT)                                ║
  18. *║                 Der Text in der Variablen "OUT" ist nun:            ║
  19. *║                 "ZU SUCHENDE DATEI: UPCASE.FOR".                    ║
  20. *╚═════════════════════════════════════════════════════════════════════╝
  21. *╔═════════════════════════════════════════════════════════════════════╗
  22. *║Zur Erstellung benützte Software                                     ║
  23. *║Texteditor:      IBM Professional Editor 1.0                         ║
  24. *║Compiler:        Microsoft Fortran Optimizing Compiler 4.00A         ║
  25. *║Linker:          Microsoft Overlay Linker 3.0                        ║
  26. *║Debugger:        Microsoft Code Viev symbolic debugger 1.10          ║
  27. *╟─────────────────────────────────────────────────────────────────────╢
  28. *║Compilieren:     FL /c /AL /FPi UPCASE.FOR                           ║
  29. *╟─────────────────────────────────────────────────────────────────────╢
  30. *║Zur Erstellung benützte Hardware                                     ║
  31. *║Computer:        Hewlett Packard Vectra ES/12                        ║
  32. *║Bildschirm:      Hewlett Packard Video Graphics Color Display        ║
  33. *║Videokarte:      Hewlett Packard Video Graphics Adapter HP D1180A    ║
  34. *╟─────────────────────────────────────────────────────────────────────╢
  35. *║Hardwarevoraussetzungen                                              ║
  36. *║IBM-kompatibler XT- oder AT-Personalcomputer                         ║
  37. *╠═════════════════════════════════════════════════════════════════════╣
  38. *║Fertigstellung:     20. April 1989    (Dipl.-Ing. F. Killet)         ║
  39. *║Test u. Freigabe:   20. April 1989    (Dipl.-Ing. M. Mayer)          ║
  40. *║letzte Änderung:    10. August 1989   (Dipl.-Ing. F. Killet)         ║
  41. *╚═════════════════════════════════════════════════════════════════════╝
  42.                                                                         
  43.       SUBROUTINE UPCASE (IN,OUT)                                        
  44.                                                                         
  45. C VARIABLEN                                                             
  46.       INTEGER ANZ                                                       
  47. C ANZ:    ANZAHL DER ZEICHEN IM EINGABESTRING                           
  48.       CHARACTER IN*(*),LOWER*29,OUT*(*),OUTP*200,UPPER*29               
  49. C IN:     EINGABESTRING                                                 
  50. C LOWER:  KLEINBUCHSTABEN                                               
  51. C OUT:    AUSGABESTRING                                                 
  52. C OUTP:   PUFFER FÜR AUSGABESTRING                                      
  53. C UPPER:  GROßBUCHSTABEN
  54.                                                                         
  55. C DATEN
  56.       DATA UPPER /'ABCDEFGHIJKLMNOPQRSTUVWXYZÄÖÜ'/                      
  57.       DATA LOWER /'abcdefghijklmnopqrstuvwxyzäöü'/                      
  58.                                                                         
  59. C LÄNGE DES STRINGS "IN" FESTSTELLEN                                    
  60.       CALL LAENGE (IN,ANZ)                                              
  61.                                                                         
  62. C UNWANDELN                                                             
  63.       OUTP=IN                                                           
  64.       DO 1 I=1,ANZ                                                      
  65.          J=INDEX(LOWER,OUTP(I:I))                                       
  66.          IF (J .GT. 0) OUTP(I:I)=UPPER(J:J)                             
  67.     1 CONTINUE                                                          
  68.       OUT=OUTP                                                          
  69.       END                                                               
  70.