Registrarse Buscar FAQ Miembros Grupos de Usuarios Login  
Responder al tema División entera y módulo
División entera y módulo
metalfox6383
Experto
Experto

Registrado: 11 May 2006
Mensajes: 106
Responder citando
Hola:

He buscado una función para obtener el residuo de una división y el cociente. He notado también que hay muy pocas funciones matemáticas en Dark Basic, debe ser porque tengo una versión desactualizada.

Busco las siguientes funciones que me devuelva:

* El mayor número de un par de números.
* El menor número de un par de números.
* El menor entero de un número real.
* El mayor entero de un número real.
* etc.

De no existir, sé que puedo escribir el código correspondiente para obtener esas funciones, pero quisiera ahorrar el tamaño de mi código insertando el código de todas esas funciones.

¿Alguna ayuda?

Gracias.
Ver perfil de usuarioBuscar todos los mensajes de metalfox6383Enviar mensaje privado
eamav
Experto
Experto

Registrado: 12 Dic 2005
Mensajes: 1564
Ubicación: Valencia (ESPAÑA)
Responder citando
La función resto de división se obtiene con MOD;
ejemplo "13 MOD 3" (devuelve 1).

El cociente se obtiene tomando desde la división normal;
c#=1.0/3
c#=a/b
c#=a#/b#
etc.

La función entero se obtiene con INT().

La función absoluto se obtiene con ABS().

La función Raiz cuadrada se obtiene con SQRT().
NOTA: se puede obtener en las formas de potencia inversa x^(1/2) = x^.5

Los operadores boleanos con AND , OR , XOR .

Esas funciones que buscas no existen en DBPro y tampoco en los Basic
que conozco, pero todas son simples y se pueden hacer por medio de
expresiones de cálculo condicionado o en forma más rústica a base de
condicionados IF... o similar.


Estas que siguen me las tuve que currar porque no existen en Dark Basic;

* FRACCIÓN de x#: f#=x#-INT(x#)

* SIGNO de ...#: sg= var/(var^2)^.5 (en DBPro funciona incluso con var=0)
Nota: la variable que recoge el signo ha de ser del tipo entero, var puede ser entero o real.

Estas suelen estar en casi todos los Basic en la forma FRAC() y SGN()


Cuando Habatar deje de corretear por ahí con sus cosas, tal vez haya que
aprovechar y pasarle una lista completa de las funciones inexistentes en DBPro
para que se encargue de dirigir la creación de las correspondientes dll, je, je.


SALUDOS


P.D.
Uy, que susto, es el post 666...


Ultima edición por eamav el Jue Ago 17, 2006 8:18 pm, editado 3 veces
Ver perfil de usuarioBuscar todos los mensajes de eamavEnviar mensaje privado
metalfox6383
Experto
Experto

Registrado: 11 May 2006
Mensajes: 106
Responder citando
Buena, aunque aún me quedan cortas esas funciones. Pero sé que de todas formas puedo escribirlas.

Hablaste acerca de creación de DLL, yo domino programación en Delphi pero jamás me he animado a crear archivos DLL. Si dices que se puede poner esas funciones en un DLL, cómo tendría que hacer para que DB reconozca mi archivo y utilice mis funciones. ¿Podrías esplicarme? Quiza no sea tan sencillo como lo estoy imaginando.

Gracias.
Ver perfil de usuarioBuscar todos los mensajes de metalfox6383Enviar mensaje privado
eamav
Experto
Experto

Registrado: 12 Dic 2005
Mensajes: 1564
Ubicación: Valencia (ESPAÑA)
Responder citando
A mí me quedan cortísimas...
Sobre las DLL te podrán explicar sr. Whiteskull o Habatar(por ejemplo),
pero de momento puedes acceder al subforo DLL, en donde se habla sobre
programación C, C++ y las correspondientes DLL, yo en esto no puedo ayudarte.


Saludos
Ver perfil de usuarioBuscar todos los mensajes de eamavEnviar mensaje privado
metalfox6383
Experto
Experto

Registrado: 11 May 2006
Mensajes: 106
Responder citando
Estoy creando el código de esas funciones con artificios y guándolo en un archivo DBA. El DBPro permite agregar archivos DBA al proyecto en edición, eso es genial por el momento, mientras espero la información para que DBPro reconozca los DLL que yo haga.

Gracias.
Ver perfil de usuarioBuscar todos los mensajes de metalfox6383Enviar mensaje privado
eamav
Experto
Experto

Registrado: 12 Dic 2005
Mensajes: 1564
Ubicación: Valencia (ESPAÑA)
Responder citando
Las DLL para el DBPro creo que han de codificar con C++.


Saludos
Ver perfil de usuarioBuscar todos los mensajes de eamavEnviar mensaje privado
Ramon
Experto
Experto

Registrado: 03 Feb 2006
Mensajes: 107
Responder citando
Guenas.

Si se trata de una dll autocontenida entiendo que podra codificarse en cualquier lenguaje que genere dll estandar. Probablemente no se podra utilizar con compiladores de la maquina virtual de Microsoft, que generan un codifo msil en lugar de codigo nativo

Lo que si que hay que tener el cuenta al utilizar compiladores distintos a C++ son las directivas del compilador. Pascal, por ejemplo, pasa los parametros de las funciones en la pila en orden inverso a C. Hay muchas mas cosas que pueden resultar distintas por defecto pero la mayoria de compiladores dispone de directivas para cambiarlos.

Un saludo,
Ramon

_________________
No por mucho tempranar amanece mas madrugado
Ver perfil de usuarioBuscar todos los mensajes de RamonEnviar mensaje privado
División entera y módulo
Puede publicar nuevos temas en este foro
Puede responder a temas en este foro
No puede editar sus mensajes en este foro
No puede borrar sus mensajes en este foro
No puede votar en encuestas en este foro
Puede adjuntar archivos en este foro
Puede descargar archivos de este foro
Todas las horas son GMT + 1 Hora  
Página 1 de 1  

  
  
 Responder al tema  
Powered by phpBB © phpBB Group
Design by phpBBStyles.com | Styles Database .
Content © www.darkbasic.es