Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - leogtz

#761
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;
}
#762
Sí. Es igual que definir variables F y C y darles valor de 3 respectivamente.
#763
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
#764
Mira, aquí está el código en C, es muy sencillo, solo debes leerlo detenidamente:

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

#define F   3
#define C   3
int main(void)
{
   unsigned int i, j;
   signed int matriz[F][C] = {
       {2, 4, 6},
       {12, 14, 18},
       {19, 24, 2}
   };

   unsigned int menores = 0, mayores = 0;

   for(i = 0; i < F; i++)
   {
       for(j = 0; j < C; j++)
       if(matriz[i][j] >= 18)
       {
           mayores++;
       } else {
           menores++;
       }
   }

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

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

#define F   3
#define C   3
int main(void)
{
    unsigned int i, j;
    signed int matriz[F][C] = {
        {2, 4, 6},
        {12, 14, 18},
        {19, 24, 2}
    };

    unsigned int menores = 0, mayores = 0;

    for(i = 0; i < F; i++)
        for(j = 0; j < C; j++)
        matriz[i][j] >= 18 ? mayores++ : menores++;

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

#765
¿cuáles son los alumnos de la sección 5?
#766
Primero date un tiempo de redactar correctamente el enunciado, tomando en cuenta comas, puntos y demás. Primero eso, luego ya veremos.
#767
#include <stdio.h>

#define MAX 10

int main(void)
{
    /* Las tablas a calcular */
    signed int tabla[MAX] = {
        1, 2, 3, 4, 5, 6, 7, 8, 9, 10
    }, i, j;

    /* Almacena temporalmente los valores de cada tabla */

    signed int almacenado[MAX];

    for(i = 1; i <= MAX; i++)
    {
        for(j = 1; j <= MAX; j++)
        {
            almacenado[i] = tabla[i - 1] * j;
            printf("%d x %d = %d\n", tabla[i - 1], j, almacenado[i]);
        }
    }

    return 0;
}
#768
¿Para qué son los vectores si lo puedes hacer con algunas variables y ciclos?
#769
@fralem15

¿cuándo te registraste no leíste las reglas del foro?
¿no sabes que cada código debe ir con sus respectivas etiquetas?  :¬¬
#770
Estás usando gets() que está obsoleta, cambiala por fgets(), además de que no estás   limpiando el buffer de entrada.