2024-05-25 06:46 PM - editado 2024-05-26 03:43 PM
Boa noite!
Preciso arredondar os valores para calcular a área dentro do objeto gdl.
O objeto é bem simples, é uma forma quadrilátera, (A x B), então o resultado deve ser arredondado para cima quando a terceira casa depois da vírgula for >= 5, por exemplo: 3,005 = 3,01.
Eu consegui arredondar os valores usando o STR{2}, mas como ele transforma o valor em uma string não consigo calcular depois, a menos que transforme em um número real novamente.
Gostaria de saber se tem alguma forma de arredondar o resultado antes de transformar em String.
Operating system used: Windows
Solucionado! Ir para Solução.
um mês atrás
Como no GDL não tem arredondamento de números reais (ao menos não encontrei isso em lugar nenhum) eu criei meu próprio arredondamento, não sei se é a melhor opção mas é um cálculo que permite checar a terceira casa após a vírgula.
Primeiro eu crio uma variável, depois eu uso o arredondamento de inteiros (round_int) e depois subtraio o valor que eu estou arredondando do valor arredondado, como eu utilizei o parâmetro A, ficou dessa forma:
ar = A = round_int(A)
Dessa forma eu tenho a variável "ar" sendo calculada pelo valor de "A" menos o valor de "A" arredondado para um inteiro. Só para ilustrar, se A for 3,015 e eu subtrair o valor inteiro (3,00) resta 0,015.
Depois eu crio uma condição de checagem com um IF THEN ELSE , exemplo:
Então como posso ter 10 variáveis de milésimos (terceira casa após a vírgula) eu crio outras 10 variáveis: ar1, ar2,ar3 .... ar10.
em 2024-05-28 01:10 PM
Nem acredito, consegui!
um mês atrás
Como no GDL não tem arredondamento de números reais (ao menos não encontrei isso em lugar nenhum) eu criei meu próprio arredondamento, não sei se é a melhor opção mas é um cálculo que permite checar a terceira casa após a vírgula.
Primeiro eu crio uma variável, depois eu uso o arredondamento de inteiros (round_int) e depois subtraio o valor que eu estou arredondando do valor arredondado, como eu utilizei o parâmetro A, ficou dessa forma:
ar = A = round_int(A)
Dessa forma eu tenho a variável "ar" sendo calculada pelo valor de "A" menos o valor de "A" arredondado para um inteiro. Só para ilustrar, se A for 3,015 e eu subtrair o valor inteiro (3,00) resta 0,015.
Depois eu crio uma condição de checagem com um IF THEN ELSE , exemplo:
Então como posso ter 10 variáveis de milésimos (terceira casa após a vírgula) eu crio outras 10 variáveis: ar1, ar2,ar3 .... ar10.