• Lunes 29 de Abril de 2024, 06:11

Autor Tema:  duda sobre variables en C#  (Leído 1620 veces)

th3r0rn

  • Miembro activo
  • **
  • Mensajes: 49
  • Nacionalidad: mx
    • Ver Perfil
    • http://imgeek.net
duda sobre variables en C#
« en: Sábado 11 de Octubre de 2008, 19:12 »
0
Hola, soy nuevo en este lenguaje  y tengo problemas o mas bien dudas sobre las variables, observemos este ejemplo:
Código: Text
  1. namespace Programa1
  2. {
  3.   class HolaMundo
  4.   {
  5.     static void Main()
  6.     {
  7.       string var="Mundo";
  8.       Console.WriteLine ("Hola {0}!", var);
  9.       int num1 = 1;
  10.       int num2 = 3;
  11.       int resultado = Suma (num1, num2);
  12.       Console.WriteLine ("{0}+{1} = {2}", num1, num2, resultado);
  13.     }
  14.     static int Suma(int valor1, int valor2)
  15.     {
  16.       return valor1+valor2;
  17.     }
  18.   }
  19. }
  20.  
  21.  
En el: Console.WriteLine("Hola {0}!",var);  <-- ayi entiendo que {0} es el valor asignado a la primer variable definida, asta ai todo bienm, pero al llegar a:
Código: Text
  1.       Console.WriteLine ("{0}+{1} = {2}", num1, num2, resultado);
  2.  
que son esos valores es de sir el{ 1} y {2}
mi duda es: la primera cariable que defino siempre tendra un calor {0} la seunga cariable q defina tendra el valor {1} y a si sucesivamente?? escribi un pequeño codigo y no me fue bien:
Código: Text
  1. using System;
  2.  
  3. namespace suma
  4. {
  5.     class MainClass
  6.     {
  7.         public static void Main(string[] args)
  8.         {
  9.             string mensaje="Hola a todos";
  10.             int num1 = 1;
  11.             int num2 = 2;
  12.             Console.WriteLine("Mi nombre es Luis {0}",mensaje);
  13.             Console.WriteLine("Esto es un numero {0}",num1);
  14.         }
  15.     }
  16. }
  17.  
Esto imprime como resultado:
Citar
Mi nombre es Luis Hola a todos
Esto es un numero 1
y yo esperaba que fuera un:
Citar
Mi nombre es Luis Hola a todos
Esto es un numero Hola a todos
ya que estoy llamando a la misma variable {0} la cual vale  HOLA A TODOS
y si pogo {1} esto me parece que me da error.
alguien me puede explicar please?

th3r0rn

  • Miembro activo
  • **
  • Mensajes: 49
  • Nacionalidad: mx
    • Ver Perfil
    • http://imgeek.net
Re: duda sobre variables en C#
« Respuesta #1 en: Sábado 11 de Octubre de 2008, 19:15 »
0
Cita de: "th3r0rn"
Hola, soy nuevo en este lenguaje  y tengo problemas o mas bien dudas sobre las variables, observemos este ejemplo:
Código: Text
  1. namespace Programa1
  2. {
  3.   class HolaMundo
  4.   {
  5.     static void Main()
  6.     {
  7.       string var="Mundo";
  8.       Console.WriteLine ("Hola {0}!", var);
  9.       int num1 = 1;
  10.       int num2 = 3;
  11.       int resultado = Suma (num1, num2);
  12.       Console.WriteLine ("{0}+{1} = {2}", num1, num2, resultado);
  13.     }
  14.     static int Suma(int valor1, int valor2)
  15.     {
  16.       return valor1+valor2;
  17.     }
  18.   }
  19. }
  20.  
  21.  
En el: Console.WriteLine("Hola {0}!",var);  <-- ayi entiendo que {0} es el valor asignado a la primer variable definida, asta ai todo bienm, pero al llegar a:
Código: Text
  1.       Console.WriteLine ("{0}+{1} = {2}", num1, num2, resultado);
  2.  
que son esos valores es de sir el{ 1} y {2}
mi duda es: la primera cariable que defino siempre tendra un calor {0} la seunga cariable q defina tendra el valor {1} y a si sucesivamente?? escribi un pequeño codigo y no me fue bien:
Código: Text
  1. using System;
  2.  
  3. namespace suma
  4. {
  5.     class MainClass
  6.     {
  7.         public static void Main(string[] args)
  8.         {
  9.             string mensaje="Hola a todos";
  10.             int num1 = 1;
  11.             int num2 = 2;
  12.             Console.WriteLine("Mi nombre es Luis {0}",mensaje);
  13.             Console.WriteLine("Esto es un numero {0}",num1);
  14.         }
  15.     }
  16. }
  17.  
Esto imprime como resultado:
Citar
Mi nombre es Luis Hola a todos
Esto es un numero 1
y yo esperaba que fuera un:
Citar
Mi nombre es Luis Hola a todos
Esto es un numero Hola a todos
ya que estoy llamando a la misma variable {0} la cual vale  HOLA A TODOS
y si pogo {1} esto me parece que me da error. Cuando realmente deberia de imprimir "1"
alguien me puede explicar please?

ProfesorX

  • Moderador
  • ******
  • Mensajes: 796
  • Nacionalidad: mx
    • Ver Perfil
Re: duda sobre variables en C#
« Respuesta #2 en: Sábado 11 de Octubre de 2008, 19:39 »
0
Cita de: "th3r0rn"
ya que estoy llamando a la misma variable {0} la cual vale  HOLA A TODOS
y si pogo {1} esto me parece que me da error.
alguien me puede explicar please?


Me parece que te estas confundiendo, y estas equivocado respecto a la forma en que se utiliza el Console.WriteLine(), el {0} que se pone en WriteLine no significa "La primera variable que defino en mi programa", sino. "La primera variable, de la lista de variables que estoy poniendo como parametros en WriteLine".

o sea, que en el primer caso:
Código: C#
  1.  
  2. Console.WriteLine ("{0}+{1} = {2}", num1, num2, resultado);
  3.  
  4.  

{0} se refiere a la primera variable de la lista de variables de WriteLine, es decir a num1
{1} se refiere a la segunda variable de la lista de variables de WriteLine, es decir a num2
{2} se refiere a la tercera variable de la lista de variables de WriteLine, es decir a resultado

Si yo pusiera:
Código: C#
  1.  
  2. Console.WriteLine ("{0}+{1} = {2}", resultado, num1, num2);
  3.  
  4.  

{0} se refiere a la primera variable de la lista de variables de WriteLine, es decir a resultado
{1} se refiere a la segunda variable de la lista de variables de WriteLine, es decir a num1
{2} se refiere a la tercera variable de la lista de variables de WriteLine, es decir a num2

Si yo pongo:
Código: C#
  1.  
  2. Console.WriteLine ("{0}+{0} = {0}", resultado, num1, num2);
  3.  
  4.  

Impirmiria resultado 3 veces, porque solo estoy imprimiendo el primer parametro

Si yo pongo:
Código: C#
  1.  
  2. Console.WriteLine ("{0}+{1} = {2}", num1, num2);
  3.  
  4.  

Marcaria error, porque la tercera variable {2} no existe en la lista de variables de WriteLine.

Espero que con eso se ta aclaren tus dudas.

Saludos :hola:

NOTA:
==================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
==================================================================

th3r0rn

  • Miembro activo
  • **
  • Mensajes: 49
  • Nacionalidad: mx
    • Ver Perfil
    • http://imgeek.net
Re: duda sobre variables en C#
« Respuesta #3 en: Domingo 12 de Octubre de 2008, 01:39 »
0
Muchas Gracias ProfesorX, me quedo mas que claro, saludos :hola: