2010-07-11 18 views
5

Estoy tratando de crear un programa donde el tamaño del índice de matriz y sus elementos provienen de la entrada del usuario. Y luego el programa pedirá al usuario que busque un elemento específico y lo mostrará donde está.C# programa donde el tamaño del índice de matriz y los elementos son de la entrada del usuario y luego buscar un elemento específico

ya he llegado con un código:

using System; 

namespace ConsoleApplication1 
{ 

class Program 
{ 

    public static void Main(String [] args) 
    { 
    int a; 
    Console.WriteLine("Enter size of index:"); 
    a= int.Parse(Console.ReadLine()); 
    int [] index = new int [a]; 
    for (int i=0; i<index.Length;i++) 
    { 
     Console.WriteLine("Enter number:"); 
     index[i]=int.Parse(Console.ReadLine()); 
    } 

    } 
} 
} 

El problema con esto es que no puedo mostrar los números introducidos y no tengo ni idea de cómo buscar un elemento de matriz . Estoy pensando en usar la declaración if.

Otra cosa, después de introducir los elementos del programa debe mostrar los números como el número 0: 1

¿Es esto correcto: Console.WriteLine("Number"+index[a]+":"+index[i]);?

¿Y dónde debería poner la declaración? después del bucle for o dentro de él?

+1

+1 por saber etiquetar esto como tarea a pesar de ser su primer mensaje. Bienvenido a Stackoverflow! –

Respuesta

2

¿Cuál es la última línea Console.WriteLine(index[i]);? Parece que estás usando la variable de bucle fuera del bucle.

Para mostrar números introducidos (es decir, si entiendo bien, los números de la matriz.), Que acaba de caminar a través de la matriz de esta manera:

for (int i = 0; i < index.length; i++) 
{ 
    Console.WriteLine(index[i]); 
} 

Desde desea que los números de visualización sólo después de cada número se introduce, es posible poner este código sólo después de terminar el bucle en el que el usuario está introduciendo los números:

// The user is entering the numbers (code copied from your question). 
for (int i = 0; i < index.Length; i++) 
{ 
    Console.WriteLine("Enter number: "); 
    index[i] = int.Parse(Console.ReadLine()); 
} 

// Now display the numbers entered. 
for (int i = 0; i < index.length; i++) 
{ 
    Console.WriteLine(index[i]); 
} 

// Finally, search for the element and display where it is. 
int elementToSearchFor; 
if (int.TryParse(Console.ReadLine(), out elementToSearchFor)) 
{ 
    // TODO: homework to do. 
} 

para buscar un número, puede caminar a través de la matriz de nuevo y comparar cada elemento hasta encontrar un buen uno, o use LinqMétodo(Supongo que su intención no es utilizar Linq, por lo que no proporciono más detalles en esta dirección.)

+0

para (int i = 0; i user388692

+0

@ unsub101: "¿Cómo puedo mostrar los números ingresados ​​después de haber completado el ingreso de todos los números?" - ver el código de muestra en mi respuesta. Hace exactamente lo que necesita. –

+0

Eso es extraño, porque cuando traté de ejecutar el programa, se mostró el número que ingresé, pero luego me induce nuevamente a ingresar otro. – user388692

4

Estás en el camino correcto. Observe cuidadosamente cómo rellena los valores en la matriz, y puede encontrar una pista sobre "cómo buscar un elemento de matriz" con un valor específico. Este es un algoritmo introductorio básico, ¡así que no hay atajos! Necesitas encontrar la respuesta por tu cuenta :-).

+0

+1 por no regalarlo! – TJB

0

Simplemente tratar de romper lo que has hecho y lo que todavía tiene que hacer

crear un programa donde:

1) el tamaño de sus elementos de la matriz proviene de la entrada del usuario (cheque)
2) elementos de la matriz provienen de la entrada del usuario (de verificación)
3) Preguntar al usuario para buscar un elemento específico (TODO)
4) Display donde es (TODO)

Desde el código que ha escrito hasta ahora, creo que tiene la mayoría de lo que debe hacer # 3 & # 4

Una declaración if puede entrar en juego al encontrar la ubicación del elemento especificado por el usuario.

1
 int a; 
     Console.WriteLine("Enter size of Array:-"); 
     a = int.Parse(Console.ReadLine()); 
     int[] array = new int[a]; 
     Console.WriteLine("Enter the Elements of the Array:-"); 
     for (int i = 0; i < array.Length; i++) 
     { 
      array[i] = int.Parse(Console.ReadLine()); 
     } 
     Console.WriteLine("\nThe Elemets of the Array are:-"); 
     for (int j = 0; j < array.Length; j++) 
     { 
      Console.WriteLine(array[j]); 
     } 
Cuestiones relacionadas