Programación General > ABAP

 Factorial En Abap Objects

(1/1)

Blag:
En esta oportunidad...jejeje....vamos a ver un pequeño ejemplo de Factorial, pero está vez con ABAP Orientado a Objetos  :comp:


--- Código: Text --- ****************************************************** Programa : Z_ATG_DUMMY                            ** Consultor ABAP : Alvaro Tejada Galindo            ** Descripción: Programa de Ejemplo de ABAP          ****************************************************** REPORT Z_ATG_DUMMY. *=======================================================================* CLASES*=======================================================================*Definición del MétodoCLASS C_MATH DEFINITION.*Parte Pública  PUBLIC SECTION.*Métodos    METHODS:*---> Este método recoge el parámetro de entrada                        FACTORIAL IMPORTING N TYPE I,*---> Este método retorna el valor del factorial                        GET_RESULT RETURNING VALUE(FACT) TYPE I.*Parte Privada  PRIVATE SECTION.*---> Variable de tipo entero        DATA FACT TYPE I.ENDCLASS. *Implementación del MétodoCLASS C_MATH IMPLEMENTATION.  METHOD FACTORIAL.*---> Cálculamos el factorial    FACT = 1.    IF N NE 0.     DO N TIMES.       FACT = FACT * SY-INDEX.     ENDDO.    ENDIF.  ENDMETHOD.   METHOD GET_RESULT.*---> Asignamos el resultado del método a nuestra variable  FACT = ME->FACT.* --> Imprimimos el resultado    WRITE: 'El Factorial es: ', FACT.  ENDMETHOD.ENDCLASS. *=======================================================================* Selection screen*=======================================================================SELECTION-SCREEN BEGIN OF BLOCK DATA_INFO WITH FRAME TITLE TEXT-T03.*Parámetro de entradaPARAMETERS:           NUMBER TYPE I.SELECTION-SCREEN END OF BLOCK DATA_INFO. *=======================================================================* START-OF-SELECTION*=======================================================================START-OF-SELECTION. *=======================================================================* OBJETOS*=======================================================================*--> Definimos un objeto con referencia a nuestra claseDATA MY_OBJ TYPE REF TO C_MATH.DATA RESULT TYPE I. *--> Creamos el objetoCREATE OBJECT MY_OBJ.*--> Llamamos al método que obtiene el valor del parámetro de entradaCALL METHOD MY_OBJ->FACTORIAL( EXPORTING N = NUMBER ).*---> Llamamos al método que imprime el resultado en pantallaCALL METHOD MY_OBJ->GET_RESULT.  
Si lo ejecutamos por ejemplo con: 5, nos devolverá por pantalla....El Factorial es:         120

Saludos,

Blag  :smartass:

senzao18:
Este programita nos pidieron en la clasesa.... ahora veo que el factorial es de los algoritmos mas comunes para iniciar los lenguajes....

Blag:
eso mismo  :lol:

Saludos,

Blag  :smartass:

Navegación

[0] Índice de Mensajes

Ir a la versión completa