Foros del Web » Programando para Internet » Javascript »

Sumar en un For

Estas en el tema de Sumar en un For en el foro de Javascript en Foros del Web. la idea es de sumar cada digito dentro del valor "2405" en 3, por ejemplo 2 + 3 | 4 + 3 | 0 + ...
  #1 (permalink)  
Antiguo 06/10/2009, 23:16
 
Fecha de Ingreso: agosto-2008
Mensajes: 587
Antigüedad: 15 años, 9 meses
Puntos: 6
Sumar en un For

la idea es de sumar cada digito dentro del valor "2405" en 3, por ejemplo

2 + 3 | 4 + 3 | 0 + 3 | 5 + 3

Siendo: 6738 el resultado final

La idea es el usar el bucle for para recorrer toda la cadena y luego tomar caracter por caracter para realizar la operacion de suma.

Tengo esto pero no me funciona.

Código PHP:
<script>
valor"2405";
largo valor.length;

suma 3

for (
i=i<=largoi++){
document.write(i);
resultado suma +valor.charAt(i); 
document.write(resultado);


</script> 
  #2 (permalink)  
Antiguo 06/10/2009, 23:40
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Sumar en un For

con la unica intencion de ayudarte a tenerlo funcionando, es decir, no mejorando el codigo para que sea optimo:
  • lo primero es que cuando uno de los opeandos del operador + es un string, los operandos se concatenan. es decir, se unen en lugar de sumarse. de modo que charAt devuelve un string y este lo tienes que convertir a integer. puedes usar la funcion Number o parseInt, el que guste.
  • y lo otro es que el condicional del bucle esta contando una posicion de mas. es decir, si la cadena contiene cuatro caracteres, cuenta de 0 a 4 para un total de 5 posiciones. el error esta en la comparacion.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 07/10/2009, 21:29
 
Fecha de Ingreso: agosto-2008
Mensajes: 587
Antigüedad: 15 años, 9 meses
Puntos: 6
Respuesta: Sumar en un For

muchas gracias por las funciones me queda mas claro el uso de los string y numero, pero aun no me queda claro el funcionamiento de un FOR con operaciones de matematicas como por ejemplo en este código.

Código PHP:
<script languaje=javascript>
for (
i=0i<=3i++)
{
 
document.write(parseInt(i));
}
</script> 
Genera una salida de: 0123

Como puedo tomar esa valor y aplicarle operaciones de matematicas.

0 + 2 = 2
1 + 3 = 4
2 + 4 = 6
3 + 5 = 8

Resultado: 2468.

Eh tratado de hacer algo como esto.

Código PHP:
<script languaje=javascript>
for (
i=0i<=3i++)
{
  for (
j=2j<=6j++)
   {  
   
document.write(parseInt(j) + parseInt(i));
   }
}
</script> 
Me crea una salida de: 23456345674567856789 lo cual deberia de ser 2468
  #4 (permalink)  
Antiguo 07/10/2009, 21:36
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Sumar en un For

En el primer código, debería ser algo como:
Código Javascript:
Ver original
  1. document.write(parseInt(i) * 2 + 2);
El segundo código está mal debido a que estás usando dos bucles anidados, por lo que el bucle interno (j) se ejecuta 4 veces (ya que está dentro del bucle i)
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 07/10/2009, 21:57
 
Fecha de Ingreso: agosto-2008
Mensajes: 587
Antigüedad: 15 años, 9 meses
Puntos: 6
Respuesta: Sumar en un For

Cita:
Iniciado por David Ver Mensaje
En el primer código, debería ser algo como:
Código Javascript:
Ver original
  1. document.write(parseInt(i) * 2 + 2);
El segundo código está mal debido a que estás usando dos bucles anidados, por lo que el bucle interno (j) se ejecuta 4 veces (ya que está dentro del bucle i)

muchas gracias funciona perfecto, no me cuadra el porque se multiplica por 2 más 2, siendo que es solo sumar 2, 3, 4, 5

document.write(parseInt(i) * 2 +2);
  #6 (permalink)  
Antiguo 07/10/2009, 21:59
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Sumar en un For

no se que te pasa pero ahora estas cambiando de estrategia. no esta mal pero tampoco dejas claro que quieres lograr al final de todo esto. si estas practicando, pues no hay problema, por algun lugar tienes que comenzar.

respecto a tu segundo codigo, donde tienes dos bucles, solo necesitas un bucle y definir dos variables iterador e ir aumentando ambas variables en cada ciclo. esta es la estructura de for
Código:
for(inicializacion; condicion; iteracion){
bloque o cuerpo;
}
en los tres componentes que manejan el for (inicializacion, condicion, e iteracion) puedes escribir expresiones complejas. por ejemplo, en inicializacion puedes crear varias variables cada una separada por una coma. y lo mismo en iteracion, puedes iterar las variables separando cada una por coma.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #7 (permalink)  
Antiguo 07/10/2009, 22:19
 
Fecha de Ingreso: agosto-2008
Mensajes: 587
Antigüedad: 15 años, 9 meses
Puntos: 6
Respuesta: Sumar en un For

muchas gracias nuevamente !!

me que quedado sin lugar a dudas, jejeje .

saludos
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 12:10.