elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Problema: insertar palabras en un arreglo en C# [solucionado]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema: insertar palabras en un arreglo en C# [solucionado]  (Leído 18,347 veces)
andiuri

Desconectado Desconectado

Mensajes: 4



Ver Perfil
Problema: insertar palabras en un arreglo en C# [solucionado]
« en: 23 Mayo 2009, 20:51 pm »

Hola a todos!. Tengo un código casi - completo , compila pero no hace lo que yo quiero.

Esta es la letra del ejercicio:

Escribir un código que pregunte al usuario la cantidad de palabras que tendrá la frase y
luego le pida que ingrese todas esas palabras, guardándolas en un arreglo de strings.

Este es mi código:

Código:
using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {
            int count;
            Console.WriteLine("¿Cuántas palabras quiere ingresar?");
            string result = Console.ReadLine();

            count = Convert.ToInt32(result);

            string[] palabras = new string[count];

            for (int i = count; i > 0; i--)
            {
                Console.Write("Ingrese la palabra {0}: ", i);
                palabras[i - 1] = Console.ReadLine();
                Console.WriteLine(palabras[i - 1]);
            }
            Console.ReadLine();

        
}


}
        
            
        }


el problema es que cuando hago Console.WriteLine (palabras[i-1]), para mostrar las palabras en pantalla, me muestra las palabras cada vez que las escribo, y quiero que se muestren al final, luego de escribirlas todas...

¿Qué hago mal?.

pd: No puedo usar OOP , no nos enseñaron eso todavía.

Saludos y gracias.


« Última modificación: 24 Mayo 2009, 05:00 am por andiuri » En línea

Jorgitoh

Desconectado Desconectado

Mensajes: 11


Ver Perfil
Re: Problema: insertar palabras en un arreglo en C#
« Respuesta #1 en: 24 Mayo 2009, 01:23 am »

Lo que tenes que pensar mas alla del codigo es ver que es lo que hace tu programa. Basicamente el enunciado pide lo siguiente:

. Preguntar cantidad de Strings
. Permitirle al usuario escribir todas las palabras
. Guardar esas palabras en un array
. Mostrar todas las palabras ( si bien no lo pide es lo que tas preguntando vos )

Ahora bien, una ves que tenes los requisitos del programa fijate en donde es que te estas equivocando. El metodo mas vago seria debugear el main con el Visual Studio y de esta manera responder tu duda, pero asumamos que no tenemos esa opcion y tenemos que pensarlo a mano. Toma como primer punto la funcion principal dentro del main, que como veras es el for y date cuenta que es lo que esta haciendo el for es lo siguiente:

. Muestro Texto
. Pido Palabra ( Y la guardo )
. Muestro Palabra

Es decir que el problema se encuentra en que vos estas mostrando la palabra luego de que el usuario la escribe. Por lo cual la solucion a tu problema seria realizar otro for que recorra todo el vector mostrando palabra por palabra.

La solucion es simplemente esa, disculpa que haya escrito mucho, pero es que andaba con ganas de escribir.

Saludos.


En línea

andiuri

Desconectado Desconectado

Mensajes: 4



Ver Perfil
Re: Problema: insertar palabras en un arreglo en C#
« Respuesta #2 en: 24 Mayo 2009, 01:50 am »


. Mostrar todas las palabras ( si bien no lo pide es lo que tas preguntando vos )

Eso lo pide en una parte mas adelante....

Citar


Ahora bien, una ves que tenes los requisitos del programa fijate en donde es que te estas equivocando. El metodo mas vago seria debugear el main con el Visual Studio y de esta manera responder tu duda, pero asumamos que no tenemos esa opcion y tenemos que pensarlo a mano. Toma como primer punto la funcion principal dentro del main, que como veras es el for y date cuenta que es lo que esta haciendo el for es lo siguiente:

. Muestro Texto
. Pido Palabra ( Y la guardo )
. Muestro Palabra

Es decir que el problema se encuentra en que vos estas mostrando la palabra luego de que el usuario la escribe. Por lo cual la solucion a tu problema seria realizar otro for que recorra todo el vector mostrando palabra por palabra.

La solucion es simplemente esa, disculpa que haya escrito mucho, pero es que andaba con ganas de escribir.

Saludos.

Muchas gracias !!!!.Nada de disculpas, me gustan mucho estas explicaciones. Hace un mes y poco que empecé en este mundo de la programación, y el primer lenguaje que nos enseñan es C#, y soy muy novato. Una cosa que recomendó el docente es usar F11 el el Visual Studio y recorrer línea por línea... :silbar:

Saludos.
« Última modificación: 24 Mayo 2009, 01:52 am por andiuri » En línea

andiuri

Desconectado Desconectado

Mensajes: 4



Ver Perfil
Re: Problema: insertar palabras en un arreglo en C#
« Respuesta #3 en: 24 Mayo 2009, 03:19 am »

Sigo teniendo problemas:

el nuevo for para mostrar la frase completa con las palabras es :

Código:
for (int i = 0; i < palabras.Length; i++)
            {

               
                Console.WriteLine("La frase es ...." +  palabras[i]);

}
Console.ReadLine ();

El problema es que repite "La frase es...." tantas veces como la cantidad de palabras que yo quiero.

Lo que quiero que salga en consola es algo como:

"La frase es..." + palabra1 + palabra 2 + ...

¿Sugerencias?

Saludos.
En línea

andiuri

Desconectado Desconectado

Mensajes: 4



Ver Perfil
Re: Problema: insertar palabras en un arreglo en C#
« Respuesta #4 en: 24 Mayo 2009, 04:58 am »


Tengo la solución:

el código :

Código:
int count;
            Console.WriteLine("¿Cuántas palabras quiere ingresar?");
            string result = Console.ReadLine();

            count = Convert.ToInt32(result);

            string[] palabras = new string[count];

            for (int i = count; i > 0; i--)
            {
                Console.Write("Ingrese la palabra {0}: ", i);
                palabras[i - 1] = Console.ReadLine();
                Console.WriteLine(palabras[i - 1]);
            }
            Console.ReadLine();
            Console.Write("La frase es....");
            
            for (int i = 0; i < palabras.Length; i++)
            {
                Console.Write("" + palabras[i]);
            }
            Console.ReadLine();


Gracias a todos!!!. Aprendí mucho...  :)

Saludos.
En línea

43H4FH44H45H4CH49H56H45H
Wiki

Desconectado Desconectado

Mensajes: 502



Ver Perfil
Re: Problema: insertar palabras en un arreglo en C# [solucionado]
« Respuesta #5 en: 24 Mayo 2009, 05:28 am »

Otro modo de hacerlo podria ser asi:
Código
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Collections;
  6.  
  7. namespace ConsoleApplication1
  8. {
  9.    class Program
  10.    {
  11.  
  12.        static void Main(string[] args)
  13.        {
  14.            ArrayList palabras = new ArrayList();            
  15.            string frase = "";
  16.            Console.WriteLine(" Ingrese Numero de palabras: ");
  17.            int limite = Int32.Parse ( Console.ReadLine());
  18.            for (int i = 0; i < limite; i++)
  19.            {
  20.                Console.WriteLine(" Ingrese palabra: ");
  21.                palabras.Add(Console.ReadLine());
  22.            }
  23.  
  24.            for (int i = 0; i < palabras.Count; i++)
  25.            {                
  26.                frase += palabras[i].ToString() + " ";
  27.            }
  28.            Console.WriteLine("Frase Completa: " + frase);                
  29.            Console.ReadKey();
  30.        }
  31.    }
  32. }

...
En línea


-R IP
:0100
-A 100 
2826:0100 MOV AH,09
2826:0102 MOV DX,109
2826:0105 INT 21
2826:0105 MOV AH,08
2826:0105 INT 21
2826:0107 INT 20
2826:0109 DB 'MI NICK ES CODELIVE.$' 
2826:0127 
-R BX
:0000
-R CX
:20
-N CODELIVE.COM
-W
Meta


Desconectado Desconectado

Mensajes: 3.438



Ver Perfil WWW
Re: Problema: insertar palabras en un arreglo en C# [solucionado]
« Respuesta #6 en: 24 Mayo 2009, 05:43 am »

Si no te veo en un sitio, te veo en otro.

http://social.msdn.microsoft.com/Forums/es-ES/vcses/thread/080e7e0d-2e69-4722-bdcd-d0dd8960a57d#8e26e42c-d9c6-4774-aafa-c789da33f6bb

Saludo.
En línea

J3RRYG3

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Re: Problema: insertar palabras en un arreglo en C# [solucionado]
« Respuesta #7 en: 16 Mayo 2012, 21:37 pm »

esta vendria siendo una buena solucion.

using System;


namespace defineeltamaniodelarregloInsertaletras
{
    class Program
    {
        static void Main(string[] args)
        {

            int count;
            Console.WriteLine("cuantas palabras quiere in gresar?");
            string result = Console.ReadLine();
            count = Convert.ToInt32(result);

            string[] palabras = new string[count];

            for (int i = count; i > 0; i--)
            {

                Console.WriteLine("ingrese la palabra {0}", i);
                palabras[i - 1] = Console.ReadLine();
               
            }

            Console.WriteLine("{0}{1,8}","numero de palabras","palabra");
            for (int i = 0; i < palabras.Length; i++ )
                Console.WriteLine("las palabras fueron: {0,4}{1,8}", i, palabras);

            Console.ReadLine();

        }
    }
}

suerte!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines