AnswerBun.com

Inicialización de variables en cero: ¿Es necesario o solo una buena practica?

He visto que en algunos lenguajes se inicializaban en 0 aquellas variables que guardarían cantidades resultantes de operaciones como sumas, restas, divisiones o demás.

En mi antigua institución, donde estudié bachillerato nos decían que era para evitar que se guardara basura, y al hacer muestra de dichas variables a veces salían cantidades raras, pero también he visto que algunos programas por defecto asignan 0 a dichas variables.

Entonces mi pregunta, es esto necesario para todos los lenguajes, es solo una buena practica o depende del lenguaje a programar.

Stack Overflow en español Asked on January 3, 2021

2 Answers

2 Answers

La inicializacion de la variable depende del algoritmo y representa el caso base. Una variable de tipo entero generalmente se inicia en 0 por que es el neutro de la suma, la operacion basica. Pero por ejemplo si queremos usar un indice para recorrer arrays de base 1 la inicializamos en 1, si queremos recorrer el array al revés la inicializamos en n.

Me imagino que la pregunta es: ¿es correcto inicializar una variable en 0, si todavía no se que valor inicial tiene?

Var x = 0
If algo then
  X = 1
Else
  X = 2
End if
Usar x

La respuesta es que depende del leguaje y compiladores. Algunos te permiten declarar sin ningun valor inicial. Pero la realidad es que necesitamos asignarle un valor inicial determinado por la implementacion del algoritmo

Var x = 2
If algo then
  X = 1
End if
Usar x

Correct answer by Jose Maria Toscano on January 3, 2021

Considero que por razones de resultados se deberían inicializar a un valor a corde a la operación (multiplicación, suma, calculo de promedio ...etc) que se vaya a realizar de forma inicial y valor final que esta (variable inicializada) vaya a almacenar . Un ejemplo claro y de mucha importancia respecto a la inicialización se presenta en el uso del for . También es MUY IMPORTANTE en algunas ocasiones tener muy claro el valor inicial de esa variable , esto podemos presentarlo a continuación (smt a modo de ejemplo y para conseguir una mejor comprensión de lo relevante que resulta el saber que valor iniciará la variable) ; para encontrar la primera potencia de 2 que sea mayor que mil : potencia de un numero: es el resultado final después de haber multiplicado un número por si mismo(fuente: wikipedia)

producto (inicialización)=2;(pudo haberse inicializado con otro valor PERO DIFERENTE de cero , puesto que si lo inicializamos en 0, el resultado será más que obvio) For(producto <=1000) Producto=producto * 2(este 2 es el numero al cual se desea encontrar la potencia ...NO ES EL VALOR INICIAL DE LA VARIABLE PRODUCTO)

NOTA: POR LO GENERAL TANTO LA INICIALIZACIÓN, LA ACTUALIZACIÓN (CONTADOR) Y LA CONDICIÓN VAN DENTRO DEL MISMO PARÉNTESIS QUE LE SIGUE A FOR, PERO LO HE HECHO AQUI DE ESTA FORMA SMT PARA MODO DE COMPRENSIÓN

Answered by Max on January 3, 2021

Add your own answers!

Related Questions

Convertir MySQL a LINQ (Entity Framework 5)

0  Asked on December 2, 2021 by user180658

     

como trasformar metodo en c# a metodo async c#?

2  Asked on December 2, 2021 by sebastian-bizama-inostroza

   

modal no responde al submit

1  Asked on December 2, 2021

     

Importar un archivo completo desde un archivo .py Python PyQt5

2  Asked on December 2, 2021 by juan-diego-montoya-rey

     

Personalizar UINavigationController [código]

1  Asked on December 2, 2021 by kevtho

   

ORA 01843: not a valid month

1  Asked on December 2, 2021 by cosito

 

Acceder a arreglos dentro de otros arreglos

2  Asked on December 2, 2021 by gerardo-rios

   

variable no definida en mi cupon

1  Asked on November 29, 2021

     

Conexión a MySQL con c#

2  Asked on November 29, 2021

   

Ask a Question

Get help from others!

© 2022 AnswerBun.com. All rights reserved.