ayuda con pseudocodigo, crear tabla de multplicar

Iniciado por attackers, 28 Abril 2011, 02:38 AM

0 Miembros y 2 Visitantes están viendo este tema.

attackers

#10
hermano entiendo la mayoria del codigo menos esta parte...

       {2, 4, 6},
       {12, 14, 18},
       {19, 24, 2}

me podrias explicar te lo agradeceria mucho


y en la parte de

#define F   3
#define C   3


estas definiendo F que tenga 3 columnas y C 3 columnas no ?

leogtz

Es una matriz ó array de array de F filas (definidas en la macro) por C columnas (también definidas en la macro).

{2, 4, 6}, <----- la primera fila, la fila 0
{12, 14, 18}, <----- la segunda fila, la fila 1
{19, 24, 2} <----------- la tercera fila, la fila 2
Código (perl) [Seleccionar]

(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}

http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com

attackers

#define F   3
#define C   3


estas definiendo F que tenga 3 columnas y C 3 columnas no ?

leogtz

Sí. Es igual que definir variables F y C y darles valor de 3 respectivamente.
Código (perl) [Seleccionar]

(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}

http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com

attackers

#14
abria otra forma de hacerlo pero en vez de 3 columnas y 3 filas que tenga las que diga el usuario o dependiendo del numero de alumnos..... por ejemplo en un salon pueden aver 3 alumnos este sirve, pero si en otro salon hay 40 alumnos ???

leogtz

#15
Mira, en un principio lo pediste que fuera con una matriz, cosa que no tiene sentido, ya que si hablamos de un salón de clases, lo mejor sería un arreglo, es decir, una estructura lineal, no una matriz.


#include <stdio.h>

#define A   5

int main(void)
{
   unsigned int i;
   signed int arreglo[A] = {19, 24, 2, 3, 45};

   unsigned int menores = 0, mayores = 0;

   for(i = 0; i < A; i++)
       if(arreglo[i] >= 18)
       {
           mayores++;
       } else {
           menores++;
       }

   printf("Mayores : %u\nMenores : %u\n", mayores, menores);
   getchar();
}


Si no sabes cuántos alumnos serán, necesitas asignación dinámica de memoria, un arreglo dinámico.


#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    unsigned int i, n, mayores = 0, menores = 0;
    printf("n : ");
    scanf("%u", &n);

    signed int *alumnos = malloc(n * sizeof(int));

    /* Guardar los datos : */
    for(i = 0; i <  n; i++)
    {
        printf("Alumno %d : ", i + 1);
        scanf("%d", alumnos + i);
        /* Limpiamos el buffer */
        while(getchar() != '\n');
    }

    /* Hacemos el conteo */
    for(i = 0; i < n; i++)
    *(alumnos + i) >= 18 ? mayores++ : menores++;

    printf("Mayores : %d\nMenores : %d\n", mayores, menores);
    /* Liberar la memoria */
    free(alumnos);
    return 0;
}
Código (perl) [Seleccionar]

(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}

http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com

attackers

lo que el profesor quiere es que sirva para la sección 5.. pero tambien para otra secciones por ejemplo en la sección 5 hay 40 alumnos... osea que codigo pida cuantos alumnos hay en X sección... y el dependiendo de los alumnos hace las filas y las columnas...  eso creo que quiere el profesor

leogtz

Código (perl) [Seleccionar]

(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}

http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com

attackers

por que el objetivo o tema que estamos viendo es de matrices.. o esa es la unica razon que le encuentro lo cierto es que tiene que ser con matrices...

leogtz

Mmmm, no, a menos que cada sección tenga el mismo número de alumnos.

Ejemplo:

alumnos[10][20], 10 secciones con 20 alumnos cada sección.
Código (perl) [Seleccionar]

(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}

http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com