none
EJERCICIOS C# RRS feed

  • Pregunta

  • Muy buenas a todos.

    Estoy en un curso de programación en c# Tengo esta serie de ejercicios que no sé como elaborar.

    1. Imprimir una matríz de 4*5, y llenar la matríz con números aleatorios.

    2. Realizar un contador cuando se muestre el número 0.

    Si pudieran comentar las lineas estaría perfecto

    Muchísimas gracias.

    jueves, 8 de diciembre de 2016 14:59

Respuestas

  • Fredawe,

    Precisamente los ejercicios te ayudarán a desarrollar lógica.

    Veamos, entiendo que no tienes problemas en definir un array de dos dimensiones, ¿verdad?, de hecho en la documentación adjunta se menciona.

    int[,] numeros = new int[4,5]; //array de dos dimensiones: 4 filas y 5 columnas

    El siguiente punto es agregar en cada posición del array un número que lo obtendrás de manera aleatoria. Para agregar elementos al array debes de recorrer sus dimensiones (filas y columnas) y en cada posición asignar un valor, algo como lo siguiente:

    for (int f = 0; f < 4; f++)
    {
    	for (int c = 0; c < 5; c++)
    	{
    		//Asignar un número aleatorio en la posición f, c
    		numeros[f, c] = 10; 
    	}
    }

    ¿Contar las veces donde aparece un número 0? Es lo mismo, recorres la matriz y preguntas por el valor en la posición, si es cero sumas en uno el contador:

    if (numeros[f, c] == 0)
    {
    	cuenta++;
    }

    Considera que la cuenta la puedes hacer posterior a la asignación del valor, o si quieres puedes volver a recorrer las posiciones del array para realizar la cuenta.


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    jueves, 8 de diciembre de 2016 16:02

Todas las respuestas

  • Fredawe,

    Los ejercicios son para poner en practica la parte teórica que entiendo ya la tienes clara. Te recomiendo que investigues, entiendas y recién escribe código, si alguien lo hace por ti te perderás la parte de investigación y el conseguir objetivos por tu propio esfuerzo, te dejo algunos enlaces que te ayudarán a desarrollar tus ejercicios:

    Tutorial de matrices

    Matrices multidimensionales (Guía de programación de C#)

    Random Class

    How do I generate a random int number in C#?

    Si tras la lectura y puesta en desarrollo del ejercicio tienes dudas puedes consultarlo por este medio.


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    jueves, 8 de diciembre de 2016 15:08
  • Entiendo como declarar la matríz, lo que no sé es como generar el contador cuando se encuentre un número 0 en la matríz.

    Es un problema que tendría que resolver yo de acuerdo con mi lógica, no vi nada de teoría con respecto a ese problema.

    Muchas gracias por tu respuesta.

    jueves, 8 de diciembre de 2016 15:43
  • Fredawe,

    Precisamente los ejercicios te ayudarán a desarrollar lógica.

    Veamos, entiendo que no tienes problemas en definir un array de dos dimensiones, ¿verdad?, de hecho en la documentación adjunta se menciona.

    int[,] numeros = new int[4,5]; //array de dos dimensiones: 4 filas y 5 columnas

    El siguiente punto es agregar en cada posición del array un número que lo obtendrás de manera aleatoria. Para agregar elementos al array debes de recorrer sus dimensiones (filas y columnas) y en cada posición asignar un valor, algo como lo siguiente:

    for (int f = 0; f < 4; f++)
    {
    	for (int c = 0; c < 5; c++)
    	{
    		//Asignar un número aleatorio en la posición f, c
    		numeros[f, c] = 10; 
    	}
    }

    ¿Contar las veces donde aparece un número 0? Es lo mismo, recorres la matriz y preguntas por el valor en la posición, si es cero sumas en uno el contador:

    if (numeros[f, c] == 0)
    {
    	cuenta++;
    }

    Considera que la cuenta la puedes hacer posterior a la asignación del valor, o si quieres puedes volver a recorrer las posiciones del array para realizar la cuenta.


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    jueves, 8 de diciembre de 2016 16:02