A media deu 07,5 só que eu quero colocar a mascara para tirar o 0 da esquerda e não esta dando certo
77 WRK-MEDIA PIC 9(02)V9 VALUE ZEROS.
77 WRK-MEDIA-ED PIC Z9,9 VALUE ZEROS.
O resultado está vindo como: 0,1
A media deu 07,5 só que eu quero colocar a mascara para tirar o 0 da esquerda e não esta dando certo
77 WRK-MEDIA PIC 9(02)V9 VALUE ZEROS.
77 WRK-MEDIA-ED PIC Z9,9 VALUE ZEROS.
O resultado está vindo como: 0,1
Ola, Stephanie.
Quais valores você passou para dar 07,5 ? Se possivel coloque aqui o codigo completo + os valores que passou. A principio sua mascara esta certa.
Ivan
IDENTIFICATION DIVISION.
PROGRAM-ID. PROGCOB02.
**************************************
* AREA DE COMENTARIOS - REMARKS
* AUTHOR = STEPHANIE
* DATA: 02/04/2021
*************************************
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SPECIAL-NAMES.
DECIMAL-POINT IS COMMA.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 WRK-NOTA1 PIC 9(02) VALUE ZEROS.
77 WRK-NOTA2 PIC 9(02) VALUE ZEROS.
77 WRK-MEDIA PIC 9(02)V9 VALUE ZEROS.
77 WRK-MEDIA-ED PIC Z9,9 VALUE ZEROS.
PROCEDURE DIVISION.
ACCEPT WRK-NOTA1.
ACCEPT WRK-NOTA2.
COMPUTE WRK-MEDIA = (WRK-NOTA1 + WRK-NOTA2) / 2
MOVE WRK-MEDIA TO WRK-MEDIA-ED
DISPLAY 'MEDIA...' WRK-MEDIA-ED
EVALUATE WRK-MEDIA-ED
WHEN 6 THRU 10
DISPLAY 'APROVADO'
WHEN 2 THRU 5
DISPLAY 'RECUPERACAO'
WHEN OTHER
DISPLAY 'REPROVADO'
END-EVALUATE.
STOP RUN.
7,15 7,15 MEDIA... 7,0 REPROVADO
sendo que o resultado é 7,15 cheguei a colocar 77 WRK-MEDIA PIC 9(02)V99 VALUE ZEROS. 77 WRK-MEDIA-ED PIC Z9,99 VALUE ZEROS.
e o resultado ficou 7,00
exemplo também 0,25 0,25 MEDIA... 0,00 REPROVADO
sendo que o resultado deveria ser 0,25
O evaluate deve ser na variavel WRK-MEDIA..
Ivan
Coloquei e também deu o mesmo resultado =/ ele não demonstra o valor depois da virgula, 7,5 7,5 7,5 MEDIA... 7,0 APROVADO
Se você colocar na entrada 7,15 então a variavel de entrada precisa ter 02 casas decimais. No seu codigo estão como inteiras. Outra coisa.. Sua variavel media esta com uma casa decimal apenas, então 7,15 com 7,15 irá virar 7,10 e nao 7,15 (a ultima casa ele não resolve).
Codigo funcionando:
IDENTIFICATION DIVISION.
PROGRAM-ID. PROGCOB02.
**************************************
* AREA DE COMENTARIOS - REMARKS
* AUTHOR = STEPHANIE
* DATA: 02/04/2021
*************************************
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SPECIAL-NAMES.
DECIMAL-POINT IS COMMA.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 WRK-NOTA1 PIC 9(02)v99 VALUE ZEROS.
77 WRK-NOTA2 PIC 9(02)v99 VALUE ZEROS.
77 WRK-MEDIA PIC 9(02)V99 VALUE ZEROS.
77 WRK-MEDIA-ED PIC Z9,99 VALUE ZEROS.
PROCEDURE DIVISION.
ACCEPT WRK-NOTA1.
ACCEPT WRK-NOTA2.
COMPUTE WRK-MEDIA = (WRK-NOTA1 + WRK-NOTA2) / 2
MOVE WRK-MEDIA TO WRK-MEDIA-ED
DISPLAY 'MEDIA...' WRK-MEDIA-ED
EVALUATE WRK-MEDIA
WHEN 6 THRU 10
DISPLAY 'APROVADO'
WHEN 2 THRU 5
DISPLAY 'RECUPERACAO'
WHEN OTHER
DISPLAY 'REPROVADO'
END-EVALUATE.
STOP RUN.
Ivan
Agora deu certinho Ivan, Muiiiiiiiiito obrigada -