Begleitmaterial zum Tutorial: Taschenrechner mit Kontrollstruktur CASE

Quellcode vorher

*&---------------------------------------------------------------------*
*& Report ZLB_MATHE
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT zlb_mathe.

PARAMETERS p_oper1 TYPE i.
PARAMETERS p_oper2 TYPE i.
*PARAMETERS p_oper TYPE c.

DATA lv_result TYPE p DECIMALS 2.

*Arithmetische Operationen + - * /
lv_result = p_oper1 + p_oper2.

WRITE: / 'Ergebnis +:', lv_result.

lv_result = p_oper1 - p_oper2.

WRITE: / 'Ergebnis -:', lv_result.

lv_result = p_oper1 * p_oper2.

WRITE: / 'Ergebnis *:', lv_result.

lv_result = p_oper1 / p_oper2.

WRITE: / 'Ergebnis /:', lv_result.

Quellcode nachher

*&---------------------------------------------------------------------*
*& Report ZLB_MATHE
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT zlb_mathe.

PARAMETERS p_oper1 TYPE i.
PARAMETERS p_oper2 TYPE i.
PARAMETERS p_opert TYPE c.

DATA lv_result TYPE p DECIMALS 2.

*Arithmetische Operationen + - * /

CASE p_opert.
  WHEN '+'.
    lv_result = p_oper1 + p_oper2.
    WRITE: / 'Ergebnis +:', lv_result.
  WHEN '-'.
    lv_result = p_oper1 - p_oper2.
    WRITE: / 'Ergebnis -:', lv_result.
  WHEN '*'.
    lv_result = p_oper1 * p_oper2.
    WRITE: / 'Ergebnis *:', lv_result.
  WHEN '/'.
    CASE p_oper2.
      WHEN 0.
        WRITE / 'Division durch Null ist nicht erlaubt!'.
      WHEN OTHERS.
        lv_result = p_oper1 / p_oper2.
        WRITE: / 'Ergebnis /:', lv_result.
    ENDCASE.
  WHEN OTHERS.
    WRITE / 'Kein gültiger Operator eingetragen!'.
ENDCASE.
Foto des Autors

Lars Borgwardt

Mein Name ist Lars Borgwardt. Schon während meiner Schulzeit habe ich mehrere EDV-Lehrgänge und Workshops in den Bereichen Internet, HTML sowie Linux besucht. Noch heute treibe ich mich beruflich in diesem Bereich herum. Genauer gesagt arbeite ich seit einigen Jahren als SAP Manager. Hier schreibe und berichte ich gerne über meine Arbeit und gebe kleine Hilfestellungen rund um die täglichen Probleme im SAP-System.



Schreibe einen Kommentar