[Pregunta]: ¿Incrementar de a 1 un formato "versión"?

Iniciado por Leguim, 29 Noviembre 2019, 04:16 AM

0 Miembros y 1 Visitante están viendo este tema.

Leguim

Buenas noches,

me preguntaba como podía incrementar de 1 en 1 un "numero" en formato "versión"...
si yo tuviera el valor 4 y les dijera que voy a incrementarlo en 1 el resultado sería 5, si yo les dijera que tiviera el valor 999 y lo voy a incrementar en 1 el valor seria 1.000 (respetando el punto) pero si yo les dijera que tengo la "v1.3.1" y tengo que aumentar a 1 sería "v1.3.2"

Ya creo que se entendió xD
solamente no se como puedo incrementar este valor que ni siquiera es un valor es algo que se me ocurrió.. xD

@XSStringManolo

#1
Código (javascript) [Seleccionar]
var v = ["V",".","0",".","0",".","0",".","0",".","1"];
var x = parseInt(v[10]);
++x;
v[10] = x.toString();
alert(v.join(''));


1.Declaro array.
2.Obtengo el último elemento del array "1", lo convierto en int 1 (pasa de ser un texto(string) a un numero(int) y lo guardo en la variable x.
3.Aumento el valor de la variable x con el operador de pre-incremento.
4.Casteo el nuevo valor int 2 de x en string "2". Lo asigno al último elemento del array.
5.Lo muestro elminando las comas del array en el output.

Lo puedes hacer de muchas otras formas.

PD: Si quieres que aumente el penúltimo al llegar a 1000:
Código (javascript) [Seleccionar]
/* En vez de v[10] usa v[i]. */
var i = 10;
var v = ["V",".","0",".","0",".","0",".","0",".","1"];
var x = parseInt(v[i]);
++x;
if (x === 1000)
{
x = 1;
i -=2;
 
  if (i === 0)
  {
  i = 10;
  }

}
v[i] = x.toString();
alert(v.join(''));


Ahora lo que hace es que si el numero llega a 1000, se ponga a 0 y se moifique la versión anterior. Ejemplo V.0.0.0.0.999 le sumas 1 y pasa a ser V.0.0.0.1.0
En el segundo if si se llega a la V sez vuelve a empezar por el último dígito. También puedes añadir un nuevo punto y número al final. No sé si la implementación está bien, es por mostrar la lógica más que nada.

Tienes que añadirle un par de cosas más para que funcione exactamente como lo quieres. Si lo haces con funciones te es fácil acabar la implementación.