Autor
|
Tema: Problema: insertar palabras en un arreglo en C# [solucionado] (Leído 18,669 veces)
|
andiuri
Desconectado
Mensajes: 4
|
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: 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
Mensajes: 11
|
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
Mensajes: 4
|
. Mostrar todas las palabras ( si bien no lo pide es lo que tas preguntando vos )
Eso lo pide en una parte mas adelante....
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... Saludos.
|
|
« Última modificación: 24 Mayo 2009, 01:52 am por andiuri »
|
En línea
|
|
|
|
andiuri
Desconectado
Mensajes: 4
|
Sigo teniendo problemas: el nuevo for para mostrar la frase completa con las palabras es : 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
Mensajes: 4
|
Tengo la solución: el 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
Mensajes: 502
|
Otro modo de hacerlo podria ser asi: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Collections; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { ArrayList palabras = new ArrayList (); string frase = ""; Console.WriteLine(" Ingrese Numero de palabras: "); int limite = Int32.Parse ( Console.ReadLine()); for (int i = 0; i < limite; i++) { Console.WriteLine(" Ingrese palabra: "); palabras.Add(Console.ReadLine()); } for (int i = 0; i < palabras.Count; i++) { frase += palabras[i].ToString() + " "; } Console.WriteLine("Frase Completa: " + frase); Console.ReadKey(); } } }
...
|
|
|
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
|
|
|
|
J3RRYG3
Desconectado
Mensajes: 1
|
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
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Re: Arreglo como parametro Generico(Solucionado)
Programación Visual Basic
|
ignorantev1.1
|
9
|
4,349
|
30 Abril 2011, 11:03 am
por BlackZeroX
|
|
|
(solucionado)[VB6] Insertar control permanente en la ToolBox
Programación Visual Basic
|
SuperDraco
|
3
|
3,164
|
16 Julio 2011, 01:08 am
por raul338
|
|
|
Problema con busqueda en arreglo de string
Programación C/C++
|
MikeMonostone
|
4
|
3,118
|
13 Noviembre 2012, 00:28 am
por leosansan
|
|
|
[Solucionado]Como puedo mezclar un arreglo
Java
|
PabloPbl
|
4
|
7,283
|
6 Febrero 2015, 22:47 pm
por PabloPbl
|
|
|
programa q cuenta cuantas palabras tienen 4 letras y termina de leer un arreglo
Programación C/C++
|
masterkeyes
|
4
|
4,667
|
24 Agosto 2015, 02:04 am
por geeke
|
|