Foros del Web » Programando para Internet » ASP Clásico »

Sumar con decimales

Estas en el tema de Sumar con decimales en el foro de ASP Clásico en Foros del Web. Alguien sabe como sumar con decimales en asp, estoy con un código para dar prioridades, lo que hace es por ejemplo, si tienes 2 noticias, ...
  #1 (permalink)  
Antiguo 02/12/2002, 06:15
Avatar de sedos  
Fecha de Ingreso: junio-2002
Mensajes: 116
Antigüedad: 22 años
Puntos: 0
Sumar con decimales

Alguien sabe como sumar con decimales en asp, estoy con un código para dar prioridades, lo que hace es por ejemplo, si tienes 2 noticias, a la primera le das prioridad 1 y a la segunda 2 se ordenarian y tan panchas, pero...
Si incluimos una tercera noticia y queremos que tenga prioridad 2 tendriamos que sumar la 1 y 2 y dividimos entre 2, lo que da 1,5 , y se colocaría la segunda


Como podría sumar los decimales y dividir y demas

gracias de antemano
  #2 (permalink)  
Antiguo 06/12/2002, 17:15
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 3 meses
Puntos: 7
queeeeeeeeeeee? que rayos fue lo que dijiste

Mira, para que trabajes con decimales, solo utiliza la funcion Val(), y listo...
__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--
  #3 (permalink)  
Antiguo 07/12/2002, 04:45
 
Fecha de Ingreso: febrero-2002
Ubicación: Mi ASP Bunker
Mensajes: 397
Antigüedad: 22 años, 3 meses
Puntos: 1
queeeeeeeeeeee? que rayos fue lo que dijiste ? Funcion Val() ?

No existe en VBScript() !! En todo caso podria ser CDbl() o CSng()

Una posible solucion para sedos seria sumarle uno a las noticias de menor prioridad para meter la nueva, y asi . . .

ojear el VBSCRIP5.CHM de vez en cuando no h mal
  #4 (permalink)  
Antiguo 07/12/2002, 06:15
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 3 meses
Puntos: 7

es que trabajo mucho con Visual Basic, y de ves en cuando se me cruzan los cables, jeje.

__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--
  #5 (permalink)  
Antiguo 17/08/2003, 05:32
Avatar de Raspinu  
Fecha de Ingreso: agosto-2003
Ubicación: Barcelona
Mensajes: 76
Antigüedad: 20 años, 10 meses
Puntos: 0
Yo tengo un problema parecido:
me da un error de que no coinciden los tipos sosbecho que es debido a que un numero es entero (clave) y otro es decimal(precio) en esta operacion:
------------
subtotal=CSng(FormatNumber(carrito(clave))*oRs.Fie lds("precio"))
--------

como puedo hacer para que me sumen uno entero y otro decimal???
esto es para que sume la cantidad de productos por el precio del producto.
Gracias
__________________
Did-Web.com -Diseño y Desarrollo Web-
http://www.did-web.com
  #6 (permalink)  
Antiguo 17/08/2003, 06:32
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 21 años, 7 meses
Puntos: 4
Raspinu, Raspinu, mejor que abras un tema nuevo para hacer una pregunta, aunque esta pueda ser similar a la del tema. No vaya a ser que al final sedos se quede sin una respuesta.

Bueno, vamos a ver. Para sumar decimales hay varias opciones pero hay que tener en cuenta con que tipo de datos funciona el servidor. Por ejemplo, Brinkster está configurado en inglés, por tanto sus decimales serán con puntos en lugar de con comas. Se puede cambiar esta opción con un código sencillito que se pone al principio de la página:

Código:
<% @LCID = 1034 %>
Esto indica que los formatos de fechas, números, etc. estarán en español (España), es decir dd/mm/aaaa, decimales con comas, etc.

Otra opción, si la anterior no te la permite el servidor es comprobar qué símbolo decimal se está usando:

Código:
decimal=Mid(CStr(3/2), 2, 1)
Así podremos ver qué símbolo es el que se está usando para los decimales.

Si quieres convertir un número con el formato correcto pondrías:

Código:
numero=CDbl(Replace(CStr(numero),",",decimal))
Luego no tienes más que sumar:

Código:
suma=numero1+numero2
Ahora bien, después de todo este rollo introductorio, lo que yo entiendo que quieres hacer es.... la verdad es que no le he entendido . Si partes de número enteros (1 y 2) podrías hacer operaciones con ellos directamente. En el caso de que sean en formato de texto al haberlos sacado de un campo de texto de la base de datos, los conviertes en números:

Código:
<%
media=(CDbl(prioridad1)+CDbl(prioridad2))/2
%>
Y ya tienes el valor de 1,5 (ó 1.5) con formato numérico para que lo sumes a lo que quieras que tenga también formato numérico.

Uffff, que tío mas pesado Bueno, de momento se me ocurre esto que te puede servir. De todas formas concreta un poco más para que lo entendamos mejor.

Un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
  #7 (permalink)  
Antiguo 18/08/2003, 04:36
Avatar de sedos  
Fecha de Ingreso: junio-2002
Mensajes: 116
Antigüedad: 22 años
Puntos: 0
Nunca es tarde si la dicha es buena, muchas gracias por la respuesta, me a sido bastante util...
  #8 (permalink)  
Antiguo 18/08/2003, 11:09
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 21 años, 7 meses
Puntos: 4
¿De verdad te ha servido? Pensé que con tanto rollo no había dado ni una.

Me alegro de que se resolviera.

Un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:36.