A煤n no tienes acceso a esta clase

Crea una cuenta y contin煤a viendo este curso

Arreglos e iteradores bidimensionales

17/27
Recursos

Para poder utilizar el iterador for junto con un arreglo bidimensional es necesario entender el concepto de un for anidado. Esto es un for dentro de un for, la sintaxis es la siguiente:

for(i=0;i<2;i++){
        for(j=0;j<1;j++){
                printf(""%i,matriz[i][j]"");
        }
}

En esta estructura al iniciar el for, se recorre vuelta por vuelta ambos fors, iniciando por la primera vuelta del primer for y continuando con todas las vueltas del segundo for. Siguiendo con la siguiente vuelta del primer for y continuando con todas las vueltas del segundo for, y as铆 sucesivamente.

Esto es muy 煤til para recorrer arreglos bidimensionales.

Aportes 357

Preguntas 10

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesi贸n.

Comparto una explicaci贸n m谩s detallada del reto,para que las personas que no hayan entendido,puedan comprender el objetivo del ejercicio y c贸mo deben plantar la soluci贸n

Basicamente, el reto consiste en crear un arreglo de 5x6 (Es decir 5 filas y 6 columnas). Cada fila podr谩 almacenar 6 datos. En los primeros 5 espacios se pide ingresar cualquier calificaci贸n entre 6 y 10 (Ej. 6.50, 10, 7, etc) por lo que nuestro array se debe declarar de tipo float, es decir, podr谩 almacenar valores decimales. En el 煤ltimo espacio,se pide guardar 0 (m谩s adelante usaremos este espacio para guardar el promedio).

Luego de crear el arreglo, se debe iterar cada fila, es decir crear un ciclo para recorrer sus elementos (columnas), con la intensi贸n de calcular el promedio de los primeros 5 registros que contiene. Como este mismo proceso se repite en cada una de las filas, debemos crear otro ciclo para que se repita en cada fila. Este segundo ciclo (recorre las filas), contine el primer ciclo (recorre las columnas), y de esta forma se podr谩n recorrer todos los elementos del arreglo.

En el primer ciclo,nos interesa crear una variable que sume los valores de las calificaciones en cada iteraci贸n (hasta el 5 elemento). En la misma iteraci贸n, mostramos en pantalla el elemento con los indices actuales (fila,columna). Al terminar el ciclo,ya tendremos la suma de los primeros 5 elementos. Este valor lo dividimos entre 5 (cantidad de calificaciones) y lo guardamos en la 6 posici贸n de la fila. Finalmente se muestra en pantalla el resultado.Luego de esto iniciamos el mismo proceso con la fila siguiente hasta terminar de recorrer toda la matriz.

Recuerde que los indices (i) de una matriz inician en 0, por eso si queremos recorrer hasta el elemento 5,debemos poner una condici贸n para que el iterador inicie en 0 y termine en 4 (osea i<5)

Comparto mi c贸digo para que vean la implementaci贸n de algoritmo descrito anteriormente. Espero que la explicaci贸n les sea 煤til.

El resultado es este:

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

int main()
{
    printf("Vamos a sacar el promedio de unas calificaciones\n\n");
    float calificaciones [5][6];

    for (int i = 0; i < 5; i++)
    {
        float suma = 0;

        for (int j = 0; j < 5; j++)
        {
            calificaciones[i][j] = rand() % 5 + 6;
            printf("calificaciones[%i][%i] = %f\n", i, j, calificaciones[i][j]);

            suma += calificaciones[i][j];
        }
        calificaciones[i][6] = suma / 5;
        printf("\nEl promedio de %i es: %f\n\n", i, calificaciones[i][6]);

    }

    return 0;
}```

En C para obtener n煤meros aleatorios debemos primero incluir la librer铆a <time.h> y esto nos permitir谩 usar la funci贸n rand(), como lo hice en la l铆nea 21 del c贸digo, pero esta funci贸n utiliza siempre el mismo n煤mero semilla para genera la misma secuencia de n煤meros aleatorios para solucionar esto debemos usar la funci贸n srand(time(0)) solo una vez al principio del programa y el par谩metro time(0) nos devolver谩 la hora del sistema, con esto siempre obtendremos un nuevo n煤mero semilla para la funci贸n rand() y a su vez una secuencia de n煤meros aleatorios diferente cada vez. De resto:
.
challenge accomplished
.

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

int main()
{
    int nRandom;
    int sumatoriaf0, sumatoriaf1, sumatoriaf2, sumatoriaf3, sumatoriaf4 = 0;
    int promediof0, promediof1, promediof2, promediof3, promediof4 = 0;
    int numeroMe = 6;
    int numeroMa = 10;
    srand (time(0));

    printf("Arreglos Bidimencionales + For\n\n\n");

    int arregloB[5][6];

    for(int i = 0; i <= 4; i++){ //for para cargar datos y hacer la sumatoria de las filas
        for(int j = 0; j <= 4; j++){
        nRandom = rand () % (numeroMa - numeroMe + 1) + numeroMe;
        arregloB[i][j] = nRandom;
        if(i == 0)
            sumatoriaf0 += arregloB[0][j];
        else if(i == 1)
            sumatoriaf1 += arregloB[1][j];
        else if(i == 2)
            sumatoriaf2 += arregloB[2][j];
        else if(i == 3)
            sumatoriaf3 += arregloB[3][j];
        else if(i == 4)
            sumatoriaf4 += arregloB[4][j];
        }
    }

    promediof0 = sumatoriaf0 / 5;
    promediof1 = sumatoriaf1 / 5;
    promediof2 = sumatoriaf2 / 5;
    promediof3 = sumatoriaf3 / 5;
    promediof4 = sumatoriaf4 / 5;

    arregloB[0][5] = promediof0;
    arregloB[1][5] = promediof1;
    arregloB[2][5] = promediof2;
    arregloB[3][5] = promediof3;
    arregloB[4][5] = promediof4;

    printf("La sumatoria de la fila 1 es: %i\nY el promedio es %i\n\n", sumatoriaf0, promediof0);
    printf("La sumatoria de la fila 2 es: %i\nY el promedio es %i\n\n", sumatoriaf1, promediof1);
    printf("La sumatoria de la fila 3 es: %i\nY el promedio es %i\n\n", sumatoriaf2, promediof2);
    printf("La sumatoria de la fila 4 es: %i\nY el promedio es %i\n\n", sumatoriaf3, promediof3);
    printf("La sumatoria de la fila 5 es: %i\nY el promedio es %i\n\n", sumatoriaf4, promediof4);

    return 0;
}
int arreglo[5][6];

     for (int i= 0; i<5;i++){
        for (int j= 0;j<5;j++){
         arreglo[i][j]= rand() %(4+1) + 6;   // Este est谩 entre 6 y 10
        }
     arreglo[i][5]= 0;
     printf(" Fila %i : %i,%i,%i,%i,%i,%i \n", i, arreglo[i][0],arreglo[i][1],arreglo[i][2], arreglo[i][3],arreglo[i][4], arreglo[i][5]);
     }

    for (int i= 0; i<5;i++){
            float prom=0;
        for (int j= 0;j<5;j++){
            prom = prom+ arreglo[i][j];
        }
     prom = prom / 6;
     arreglo[i][5]= prom;
     printf(" promedio de la fila %i es :%f \n", i, prom);
    }```

Mi soluci贸n al reto:

  1 #include <stdio.h>
  2 
  3 int main(){
  4 
  5   int bi_arr[5][6];
  6   int calificacion, sume = 0;
  7 
  8   for(int i = 0; i < 5; i++){
  9     for(int j = 0; j < 6; j++){
 10       printf("Ingresa una calificacion mayor o igual a 60:\n");
 11       printf("Posicion (%i, %i) ", i, j);
 12       scanf(" %i", &calificacion);
 13       bi_arr[i][j] = calificacion;
 14     }
 15   }
 16 
 17   for(int l = 0; l < 5; l++){
 18     for(int k = 0; k < 6; k++){
 19       sume += bi_arr[l][k];
 20     }
 21     bi_arr[l][5] = sume / 5;
 22     sume = 0;
 23   }
 24 
 25   for(int  m = 0; m < 5; m++){
 26     for(int n = 0; n < 6; n++){
 27       printf("Estos son tus valores. POS (%i, %i): %i\n", m, n, bi_arr[m][n]);
 28     }
 29     printf("Este es tu promedio de la fila %i: %i\n", m, bi_arr[m][5]);
 30   }
 31 }

Reto:

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

int main()
{
    int arreglo [5][6] ={{8,7,9,10,7,0},
                         {6,8,7,9,10,0},
                         {6,7,9,8,7,0},
                         {9,7,8,10,8,0},
                         {10,9,8,7,7,0}};

    for(int i=0; i<5; i++)
    {
    float promedio=0;
        for(int j=0; j<5; j++)
        {
            promedio+= arreglo[i][j];
        }
    promedio/=5;
    printf("El promedio de la %i fila es: %f\n",i+1,promedio);
    }
}```
#include <stdio.h>
#include <stdlib.h>

int main(void) {
  int j;
  //Arreglo de 5 por 6 
  int average = 0;
  int calif[5][6] = {
    {6,7,8,9,10,0},
    {9,7,7,7,10,0},
    {8,8,6,9,6,0},
    {10,10,10,10,10,0},
    {6,6,6,6,6,0}
  }; 
  for (int i = 0; i < 5; i++){
    for (j = 0; j < 5; j++){
      calif[i][5] += calif[i][j]; 
    }
    calif[i][5] = calif[i][5] / 5;
    printf("El promedio en (%i, %i) : %i  \n ", i, j ,calif[i][5]);
  }
  return 0;
}

Codigo de mi programa:

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

int main()
{
    int intArray[5][6];
    int nota = 4;
    int promedio;

    for(int i = 0; i < 5; i++){
        sumatoria = 0;
        promedio = 0;
        nota = 5;

        for(int j = 0; j < 6; j++){

            if(j < 5){
                nota += 1;
                intArray[i][j] = nota;
            }else {
                intArray[i][j] = 0;
            }

            promedio += intArray[i][j];

            printf("Nota %i en la posicion: [%i][%i]\n", intArray[i][j], i, j);
        }

        intArray[i][6] = promedio / 5;

        promedio += intArray[i][6];
        promedio = promedio / 6;

        printf("\nNota promedio %i en la fila %i\n\n", promedio, i);
    }


    return 0;
}
#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("---PRACTICA ARREGLOS/ITERADORES BIDIMESIONALES---\n\n");
    int averageArray[5][6];
    for(int i=0; i<5; i++)
    {
        for(int j=0; j<6; j++)
        {
            if ((i==0 && j==5)||(i==1 && j==5)||(i==2 && j==5)||(i==3 && j==5)||(i==3 && j==5)||(i==4 && j==5))
            {
                averageArray[i][j] = 0;
            }
            else
            {
                printf("Ingrese posicion (%i)(%i): ", i, j);
                scanf("%i", &averageArray[i][j]);
            }
        }
    }
    for(int i=0; i<5; i++)
    {
        for(int j=0; j<6;j++)
        {
            printf("\nValor en posicion (%i)(%i): %i \n", i, j, averageArray[i][j]);
        }
    }
    for(int i=0; i<5; i++)
    {
        for(int j=0; j<6;j++)
        {
            if ((i==0 && j==5)||(i==1 && j==5)||(i==2 && j==5)||(i==3 && j==5)||(i==3 && j==5)||(i==4 && j==5))
            {
                averageArray[i][j] = ((averageArray[i][j-1]+averageArray[i][j-2]+averageArray[i][j-3]+averageArray[i][j-4]+averageArray[i][j-5])/5);
                printf("Promedio fila (%i)(%i): %i \n", i, j, averageArray[i][j]);
            }
        }
    }
    return 0;
}```

Reto!

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

int main()
{
    printf("Reto Arrays bidimensionales 5*6!\n");
    int arraydoble [5][6];
    printf("reglas: valores entre 6 y 10, ultimo dato debe ser 0\n");

    int dato;
    int suma = 0;
    int promedio = 0;

    for (int i=0; i<5; i++){
        for (int j=0; j<6; j++) {
           if (j==5)
                arraydoble[i][j] = 0;
            else {
                printf("\nIntroduzca el valor para la fila %i - columna %i: \n", i, j);
                scanf("%i", &dato);
                if ((dato >= 6) && (dato <= 10))
                    arraydoble[i][j] = dato;
                else {
                    printf("dato errado, se asignara nota de 6");
                    arraydoble[i][j] = 6;
                }
           }
        }
    }


    for (int i=0; i<5; i++){
        for (int j=0; j<6; j++) {
            suma += arraydoble[i][j];
            if (j == 5){
                promedio = suma /5;
                printf("El promedio de la fila (%i) es: %i\n", i+1, promedio);
                arraydoble[i][j] = promedio;
            }
        }
        suma = 0;
        promedio = 0;
    }

    return 0;
}```

Si hay errores, acepto retro

/*
Crea un arreglo de 5 filas por 6 columnas en donde:
- Los primeros 5 elementos cada fila tengan calificaciones
aprobatorias entre 6 y 10
- El sexto elemento de cada fila debe ser 0
- Calcula el promedio de los primeros 5 elementos de cada fila
y asignalo al sexto elemento
- Imprime el promedio de cada fila de calificaciones
*/

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

int main()
{
    printf("Promedio de la suma de los primeros 5 elementos de las columnas y setear el resultado en el ultimo\n");
    printf("\n");


    int array[5][6]= {{7, 6, 8, 10, 10, 0}, {8, 8, 10, 9, 10, 0},
    {7, 8, 6, 9, 10, 0}, {8, 7, 10, 6, 9, 0}, {7, 7, 7, 9, 10, 0}};

    int avg, suma;

    for(int x=0; x < 5; x++){
        suma = 0;
        for(int y=0; y < 5; y++){
            suma += array[x][y];
            printf("Casilla [%i][%i] calificacion: %i\n", x, y, array[x][y]);
        }

        avg = suma/5;
        array[x][6] = avg;
        printf("Fila - %i promedio: %i\n", x+1, array[x][6]);
        printf("\n");
    }
    return 0;
}

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

int main()
{
    printf("Array Bidimensional - Promedio de calificaciones\n\n");

    float scores[5][6];

    for (int evaluationPeriod = 0; evaluationPeriod < 5; evaluationPeriod++)
    {
        float average = 0;

        for (int note = 0; note < 5; note++)
        {
            scores[evaluationPeriod][note] = rand() % 5 + 6;
            
            average += scores[evaluationPeriod][note];

            printf("La sumatoria de array[%i][%i] es: %.2f\n", evaluationPeriod, note, average);
        }

        scores[evaluationPeriod][5] = average / 5;
        printf("\n  El promedio de la fila %i es: %.2f\n\n", evaluationPeriod+1, scores[evaluationPeriod][5]);
    }

    return 0;
}
<code> 
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char const *argv[])
{   
    printf("Array Bidimensional\n");
    int calificaciones[5][6];
    int temp = 0;
    int valor[5];

    for(int i = 0; i < 5; i++){
        printf("Ingresa los valores de la fila %i\n",i);
        for(int j = 0; j < 6; j++){
            if(j < 5){
            scanf(" %i", &calificaciones[i][j]);
            temp+= calificaciones[i][j];
            }else{
                valor[i] = temp/5;
            }
        }
        temp = 0;
    }

    printf("\nResultados\n\n");

    for(int i = 0; i < 5; i++){
        for(int j = 0; j < 6; j++){
            if(j < 5){
                printf("Valor[%i][%i]= %i\n",i,j,calificaciones[i][j]);
            }
        }
        printf("El promedio de la fila %i es %i\n\n", i, valor[i]);
    }
    return 0;
}
#include <stdio.h>
#include <stdlib.h>

int main()
{

    int arrayTest[5][6] =
    {
        {6, 6, 8, 9, 7, 0},
        {6, 9, 6, 6, 6, 0},
        {6, 8, 9, 7, 8, 0},
        {9, 6, 6, 9, 7, 0},
        {7, 7, 9, 6, 8, 0}
    };

    for(int i=0; i<5; i++)
    {
        for(int j=0; j<5; j++)
        {
            arrayTest[i][5] += arrayTest[i][j];
            printf("%i\t", arrayTest[i][j]);
        }
        arrayTest[i][5] /= 5;
        printf("promedio: %i\n", arrayTest[i][5]);
    }

    return 0;
}

Reto


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

/*
    RETO
    Crear un arreglo de 5 filas por 6 columnas en donde:
    * Los primeros 5 elementos de cada fila tengan calificaciones 
			aprobatorias entre 6 y 10.
    * El sexto elemento de cada fila debe ser 0.
    * Calcula el promedio de los primeros 5 elementos de cada fila y 
			asignalo al sexto elemento.
    * Imprime el promedio de cada fila de calificaciones.
*/

int main(int argc, char const *argv[])
{
    printf("\n");

    float array[5][6] = {{9.0, 7.0, 9.0, 6.0, 7.0, 0.0}, 
                         {9.0, 8.0, 6.0, 9.0, 9.0, 0.0}, 
                         {7.0, 8.0, 6.0, 8.0, 7.0, 0.0}, 
                         {9.0, 9.0, 9.0, 7.0, 8.0, 0.0}, 
                         {7.0, 8.0, 7.0, 6.0, 6.0, 0.0}};   
    
    for (int i = 0; i < 5; i++) {
        float sum = 0;

        for (int j = 0; j < 5; j++) {
            sum += array[i][j];
        }
        array[i][5] = (sum / 5);
        printf("El promedio de la fila %i es: %f \n", i, array[i][5]);
    }
    printf("\n");

    return 0;
}

RETO:


codigo:

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

int main()
{
    float notas[5][6],nota,promedio;
    printf("\n--- Reto Arreglo Bidimensional! ---\n\n");
    for(int i=0;i<5;i++){
        printf("\nIngrese las notas del estudiante %i : \n\n", i+1);
        for(int j=0;j<=5;j++){
            if(j==5){
                promedio = promedio/5;
                notas[i][j] = promedio;
            }else{
                printf(" Valor Nota %i: ", j+1);
                scanf("%f", &nota);
                notas[i][j] = nota;
                promedio += nota;
            }
        }
        printf("\n\n   - El promedio del estudiante %i es: %f \n\n",i,promedio);
    }
    return 0;
}

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

int main()
{
  float calificaciones[5][6],nota, promedio;
  int i,j;

    for(i=0;i<5;i++){
        promedio=0;
        for(j=0;j<6;j++){
            nota=rand()%+5+6;
            calificaciones[i][j]=nota;
            promedio+=nota;
            if(j==5){
                calificaciones[i][j]=(promedio/5);
                printf("\nPromedio (%i,%i): %f\n\n",i,j,calificaciones[i][j]);
            }
            printf("Notas (%i,%i): %f\n",i,j,calificaciones[i][j]);
        }
    }
        return 0;
}

Reto cumplido aunque estaba dif铆cil porque la explicaci贸n no era concreta.

Reto 13

Mi solucion:

Codigo:

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

int main()
{

    float arrayGrades[5][6];
    float average = 0;
    int temp;
    srand(time(NULL));
    //llenar el array con numeros aleatorios
    for (int i = 0; i < 5; i++)
    {
        for (int j = 0; j < 5; j++)
        {
            temp = 6+rand()%(10-6+1);
            arrayGrades[i][j]= temp;
            //print grades
            average+=temp;
            printf("Valor del array [%i][%i] es: %i \n\n",i,j,temp);
    }

       arrayGrades[i][5] = average / 5;
       average = 0;
       printf("     El promedio de la fila %i es: %f \n\n",i,arrayGrades[i][5]);
    }       
}

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

int main()
{
printf(鈥\n");
printf(鈥Arrayanditerators***\n鈥);
printf("bidimensionales
\n");
printf("
*\n\n\n鈥);

float integerArray[5][6], average;
int i, j;


integerArray[0][5] = 0;
integerArray[1][5] = 0;
integerArray[2][5] = 0;
integerArray[3][5] = 0;
integerArray[4][5] = 0;

for(i = 0; i < 5; i++){
    printf("Row %i \n", i+1);
    for(j = 0; j < 5; j++){
        printf("Input note in [%i,%i]: ", i, j);
        scanf("%f", &integerArray[i][j]);
    }
    printf("\n");
}
for(i = 0; i < 5 ; i++){
    average=0;
    printf("Notes in row %i \n\n", i+1);
    for(j = 0; j < 5; j++ ){
        printf("Note %i: %.2f \n", j+1, integerArray[i][j]);
        average +=integerArray[i][j];
    }
    average/=6;
    printf("\nAverage of this row is: %.2f \n\n\n", average);
}
return 0;

}

Result:

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

int main()
{
    float arreglo[5][6] = {
        {6, 7.3, 6.9, 10, 8.9, 7.8},
        {10, 6.4, 7.7, 9.1, 9.9, 9},
        {6, 7, 8, 7.8, 9, 10},
        {9, 8, 7, 8.6, 8, 8.8},
        {10, 7.8, 10, 10, 9, 10}};


        for(int i = 0; i < 5; i++){
            float sextoElemento = 0;
            for(int j = 0; j < 5; j++){
                printf("Calificacion [%d][%d]: %2.f \n",i, j, arreglo[i][j]);
                sextoElemento += arreglo[i][j];
            }
            printf(" \n");

            arreglo[i][5] = sextoElemento/5;
            printf("El promedio de la fila %d es %2.f \n \n",i, arreglo[i][5]);
        }

    return 0;
}

Mi solucion al reto

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

int main()
{
     printf ("ARREGLOS BIDIMENSIONALES ITERADORES\n\n");
     float array[5][6] = {{6.7,7.4,8.5,9.2,6.0,0.0},{9.7,6.4,8.5,9.0,7.3,0.0},{9.3,6.7,6.5,6.0,6.3,0.0},{7.8,6.4,9.1,6.6,7.3,0.0},{6.0,6.0,6.0,6.0,6.0,0.0}};
     float sum;
     float avr;


     for (int i = 0; i < 5; i++)
     {
        sum = 0.0;
        avr = 0.0;
        for (int j = 0; j < 5; j++)
        {
        sum += array[i][j];
        avr = sum / 5;
        array[i][5] = avr;

        printf("%f \t", array[i][j]);

        }

        printf ("\nEl promedio de la fila [%i] es %f \n\n", i, array[i][5]);
     }

    return 0;
}

Busque tutoriales en internet de c贸mo generar n煤meros aleatorios para hacer el script xd

  • El primer ciclo anidado generar las notas y asigna al 煤ltuimo elemento de cada fila el cero, como indica la profesora
  • El segundo ciclo anidado calcula el promedio de cada fila y las asigna al 煤ltimo elemento de cada fila, donde previamente hab铆a un cero
  • Finalmente el 煤ltimo ciclo anidado es para que se impriman todas las cosa en pantalla
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

void main()
{
    srand(time(NULL));
    float arrayOfScores[5][6], suma = 0;
    for (int i = 0; i < 5; i++)
    {   
        for (int j = 0; j < 5; j++)
        {
            arrayOfScores[i][j]= rand()%5 + 6;
        }
        arrayOfScores[i][5] = 0;
    }
    
    for (int i = 0; i < 5; i++)
    {
        for (int j = 0; j < 5; j++)
        {
            suma += arrayOfScores[i][j];
        }
        arrayOfScores[i][5] = suma/5;
        suma = 0;
    }
    
    for (int i = 0; i < 5; i++)
    {
        for (int j = 0; j < 6; j++)
        {
            printf("El valor (%i, %i) es: %.1f\n", i, j, arrayOfScores[i][j]);
        }
        
    }
    
}

Reto:

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

int main()
{
    printf("Reto 1. Arreglos e iteradores bidimensionales\n\n");

    float notasAlum [5][6] = {{6.0, 7.1, 8.5, 9.9, 6.5, 0},
                              {8.1, 8.0, 6.9, 8.8, 7.3, 0},
                              {6.6, 7.0, 6.5, 6.1, 7.2, 0},
                              {7.2, 8.4, 7.6, 9.2, 8.7, 0},
                              {6.1, 7.7, 6.3, 9.5, 6.9, 0}};

    int i;
    for(i = 0; i < 5; i++)
    {
        float promedio = 0;
        int j;

        for(j = 0; j<5; j++)
        {
            printf("Las calificaciones son: [%d][%d] %.2f\n", i, j, notasAlum[i][j]);
            promedio += notasAlum[i][j];
        }
        printf("\n");

        notasAlum[i][5] = promedio / 5;
        printf("El promedio del alumno %d es: %.2f\n\n", i, notasAlum[i][5]);
    }

    return 0;
}

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

int main()
{
    int matriznotas[5][6];
    float suma = 0;

    for(int i = 0; i < 5; i++)
    {
        for(int j = 0; j < 6; j++)
        {
            printf("introduce el valor para [%i][%i]:", i, j);
            scanf("%i", &matriznotas[i][j]);
            suma += matriznotas[i][j];
        }
        printf("\n El el promedio obtenido es de: %f \n\n", suma/6);

    }


    return 0;
}

Comparto este resultado por si a alguien le ayuda verlo visualmente 馃槂

Hice el programa para que acepte notas entre 1 - 10, si quieren pueden modificarlo para que cumpla la primera condici贸n del reto.

Comparto mi reto con una variaci贸n: Uno mismo captura las calificaciones y arroja los resultados del promedio.

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

int main () {

    /* Reto - Crea un arreglo de 5 filas por 6 columnas. Los primeros 5 elementos de cada fila debe tener
    calificaciones aprobatorias entre 6 y 10. El sexto elemento de cada fila debe ser 0. Calcula el promedio de los
    5 elementos de cada fila y asignalo al sexto elemento. Imprime el promedio de cada fila de calificaciones.
    */

    int calificaciones[5][6];



    printf("Arreglo Bidimensional - Promedio de calificaciones\n");

    for(int i=0; i<5; i++)
    {
        int promedio=0;

        for (int j=0; j<6; j++)
        {

            if(j==5)
            {
                calificaciones[i][j] = promedio/5;
                printf("\t\t \n El promedio de la fila %d es: %d \n\n", i+1, calificaciones[i][j]);
            }
            else
            {
                printf("Ingrese las calificaciones de la fila %d: ", i+1);
                scanf("%i", &calificaciones[i][j]);
                promedio += calificaciones[i][j];
            }
        }
    }

    return 0;
}

Usando una librer铆a para generar el n煤mero random entre 6 y 10:

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

int main()
{

    int temp = 0;
    int tabla[5][6];

    for( int i=0 ; i<5 ; i++ ){

        temp = 0;

        for( int j=0 ; j<6 ; j++ ){

            tabla[i][j] = rand() % (10-6+1) + 6;

            temp += tabla[i][j];

            if( j == 5 ){
                tabla[i][j] = temp/5;
                printf("El promedio de la fila %i:%i es: %i \n", i, j, tabla[i][j]);
            }
        }
    }

    return 0;
}

Reto:

int main()
{
    float myArray[5][6];
    myArray[0][0]=10;
    myArray[0][1]=9;
    myArray[0][2]=8;
    myArray[0][3]=7;
    myArray[0][4]=6;
    myArray[0][5]=0;

    myArray[1][0]=9;
    myArray[1][1]=8;
    myArray[1][2]=8;
    myArray[1][3]=6;
    myArray[1][4]=6;
    myArray[1][5]=0;

    myArray[2][0]=10;
    myArray[2][1]=6;
    myArray[2][2]=7;
    myArray[2][3]=7;
    myArray[2][4]=6;
    myArray[2][5]=0;

    myArray[3][0]=9;
    myArray[3][1]=9;
    myArray[3][2]=6;
    myArray[3][3]=7;
    myArray[3][4]=6;
    myArray[3][5]=0;

    myArray[4][0]=8;
    myArray[4][1]=8;
    myArray[4][2]=8;
    myArray[4][3]=7;
    myArray[4][4]=6;
    myArray[4][5]=0;


    for(int i=0;i<5;i++){
        float suma=0;
        for(int j=0;j<6;j++){
            suma +=myArray[i][j];
        }
    myArray[i][5]=suma/5;
    printf("El promedio de calificaciones es: %f \n",myArray[i][5]);

    }
    return 0;
}

Mi soluci贸n al reto:

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

int main()
{
    printf("----------------------------------");
    printf("\n    MEDIA DE CALIFICACIONES");
    printf("\n----------------------------------");

    float calificaciones[5][6];
    float media;

    for (int i = 0; i < 5; i++) {
        media = 0;
        for (int j = 0; j < 6; j++) {
            if (j == 5) {
                calificaciones[i][j] = media / 5;
                printf("\nMedia[%i] = %g", i, calificaciones[i][j]);
            }
            else {
                calificaciones[i][j] = 10 - j + 1;
                media += calificaciones[i][j];
            }
        }
    }

    return 0;
}
#include <stdio.h>
  2 #include <stdlib.h>
  3 #include <time.h>
  4
  5 int generaCalificacion(int min, int max)
  6 {
  7     int num;
  8     //num = rand() % (N-M+1) + M
  9     num = rand() % (max-min+1) + min;
 10     return num;
 11 }
 12
 13 int main () {
 14     int matriz[5][6];
 15     int promedio, sumatoria;
 16     srand(time(NULL));
 17
 18     //llenado del arreglo con calificaciones random
 19     for (int i=0; i<5; i++)
 20     {
 21         for (int j=0; j<6; j++)
 22             matriz[i][j] = generaCalificacion(6,10);
 23     }
 24
 25     //recorrido del arreglo para obtener el promedio
 26     for (int i=0; i<5; i++)
 27     {
 28         promedio = 0;
 29         sumatoria = 0;
 30
 31         for (int j=0; j<5; j++)
 32             sumatoria+=matriz[i][j];
 33
 34         promedio = sumatoria / 5;
 35         matriz[i][5] = promedio;
 36     }
 37
 38     for (int i=0; i<5; i++)
 39     {
 40         for (int j=0; j<6; j++)
 41             printf("[%i]",matriz[i][j]);
 42
 43         printf("\n");
 44     }
 45     return 0;
 46 }

En mi caso prefer铆 que los datos del arreglo sean valores aleatorios.

  1. Asignaci贸n de valor aleatorio a una variable.

srand (time(NULL)); [Instrucci贸n que inicializa el generador de n煤meros aleatorios]

int variable = rand(); [Obtenci贸n de un n煤mero aleatorio entero entre cero y un valor muy grande]

  1. Mostrar un valor aleatorio.

srand (time(NULL));

printf ("%d\n",rand());

El valor devuelto por rand() es de tipo entero, aunque si la variable a la que se asigna el contenido de rand() es de otro tipo, tendr谩 lugar la conversi贸n del valor originario para adaptarlo al tipo de variable de que se trate. Un aspecto importante a tener en cuenta es que el valor devuelto se encuentra en el rango 0<= valor < constante num茅rica RAND_MAX. Es decir, el n煤mero devuelto puede ser cero o un valor cualquiera hasta el l铆mite que define una constante de C (que podemos conocer escribiendo printf("%d", RAND_MAX);. Ejecuta este c贸digo y comprueba los resultados:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
// Ejemplo
int main() {
srand(time(NULL)); //El mayordomo pone a girar la diana
int test = rand(); //Primer disparo del robot
printf (鈥淓l numero aleatorio de test vale %d\n鈥, test);
printf (鈥淥tros numeros aleatorios son: %d, %d, %d\n鈥,rand(),rand(),rand()) ;
printf(鈥淟a constante RAND_MAX vale %d\n鈥, RAND_MAX);
return 0;
}

Un posible resultado con este programa es: El numero aleatorio de test vale 21051. Otros numeros aleatorios son: 12546, 22788, 7054. La constante RAND_MAX vale 32767.

Si repites la ejecuci贸n del programa obtendr谩s otros valores distintos, excepto el de la constante RAND_MAX que como su propio nombre indica es fijo (para un sistema y compilador dados).

La sentencia time(NULL) devuelve el n煤mero de segundos que han pasado desde el 1 de enero de 1970 seg煤n el reloj del sistema y nosotros la veremos como un n煤mero a partir del que se genera la velocidad de giro de la diana. Siempre ser谩 distinto porque nunca ejecutaremos un programa en el mismo segundo en que se ejecut贸 anteriormente. La sentencia srand(valor); la veremos como la instrucci贸n que pone a girar la diana a una velocidad calculada a partir del n煤mero indicado en el par谩metro 鈥渧alor鈥.

Las funciones srand y rand est谩n disponibles gracias a la directiva del preprocesador stdlib.h. Para poder hacer uso de la funci贸n time hemos de incluir la l铆nea #include <time.h>, que es la que nos facilita el uso de las funciones relacionadas con el tiempo en C.

En muchos casos querremos obtener un n煤mero con un valor m谩ximo acotado: por ejemplo un n煤mero aleatorio entre 0 y 3. Para ello nos podemos valer de la operaci贸n matem谩tica que nos devuelve el resto de una divisi贸n entera, que en C se expresa con el s铆mbolo % y que hemos denominado operaci贸n de m贸dulo o de obtenci贸n del resto. Por ejemplo 6%3 es el resto de dividir 6 entre 3. Como la divisi贸n es exactamente 2, el resto es 0. En cambio 7%3 genera un resto 1. 8%3 genera un resto 2 y 9%3 genera un resto 0 nuevamente.

Si nos fijamos los valores posibles al hacer la operaci贸n Numero%3 son 0 (la divisi贸n es exacta), 1 (el resto es 1) 贸 2 (el resto es 2). En ning煤n caso el resto podr铆a ser 3 ni un valor superior a 3. Bas谩ndonos en esto podemos obtener n煤meros aleatorios entre 0 (incluido) y un n煤mero NUM (incluido) haciendo la operaci贸n m贸dulo al n煤mero aleatorio que nos devuelve rand() as铆: rand%(NUM+1)

Por ejemplo: para obtener un n煤mero aleatorio comprendido entre 0 y 10 escribir铆amos rand()%11. El resultado de esta operaci贸n ser谩 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 贸 10.

Ejecuta este c贸digo varias veces y comprueba c贸mo var铆an los resultados:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
// Ejemplo
int main() {
srand(time(NULL)); //El mayordomo pone a girar la diana
int test = rand() % 5; //Primer disparo del robot
printf(鈥淣umero aleatorio entre 0 y 4 es %d\n鈥 ,test);
printf(鈥淥tros aleatorios entre 0 y 4 son %d, %d, %d\n鈥 ,rand()%5,rand()%5,rand()%5);
printf(鈥淥tros mas son %d, %d, %d\n鈥 ,rand()%5,rand()%5,rand()%5);
return 0;
}

Finalmente tambi茅n ser谩 habitual que adem谩s de tener un extremo superior, tambi茅n queramos tener un valor m铆nimo inferior. Por ejemplo para simular la tirada de un dado necesitaremos que el n煤mero m铆nimo sea un 1 y el n煤mero m谩ximo un 6. Esto lo podemos simular escribiendo rand()%6+1. En este caso rand()%6 nos devuelve 0, 1, 2, 3, 4 贸 5. Al sumarle un 1 estaremos obteniendo siempre alguno de los valores deseados: 1, 2, 3, 4, 5 贸 6.

Si quisi茅ramos obtener n煤meros entre 20 y 30 escribir铆amos rand()%11+20. La componente fija 20 nos da el m铆nimo y el m贸dulo nos da n煤meros comprendidos entre 0 y 10 de modo que el valor m铆nimo es 20 y el m谩ximo 30. La f贸rmula general ser铆a rand()%(INTERVALO+1)+MINIMO

Una instrucci贸n srand puede utilizarse para m煤ltiples rand. De todas formas, si es un programa extenso y tienes dudas, puedes poner un srand asociado a cada uno de los rand o grupos de rand que tengas en distintas partes del programa. De esta manera reduces el 鈥渄eterminismo鈥 o posibilidad de repetici贸n de ciertos valores o intervalos que podr铆an resultar poco adecuados para representar aleatoriedad.

La generaci贸n de n煤meros aleatorios puede presentar problemas cuya base es matem谩tica. Estos problemas pueden ser del tipo 鈥渜ue la aleatoriedad no sea uniforme en el rango deseado鈥. Por ejemplo, si generamos n煤meros entre 1 y 100 querremos que cualquier n煤mero tenga igual probabilidad de salir siempre que est茅 dentro del rango. Sin embargo, puede ocurrir que ciertos n煤meros tengan mayor probabilidad de salir debido a las cuestiones matem谩ticas que subyacen a este respecto. La serie que obtienes puede ser 鈥渁parentemente aleatoria鈥 y sin embargo no estar uniformemente distribuida. En algunos casos esto puede considerarse aceptable, pero en otros no. Nosotros no vamos a profundizar en el estudio matem谩tico de la generaci贸n de aleatorios y nos resulta suficiente el tratamiento que hemos visto, pero si tuvieras que realizar programas donde es importante el aspecto matem谩tico, deber谩s estudiar m谩s a fondo el funcionamiento de los n煤meros aleatorios en C.

As脥 lo hice yo, creen que haya algun error?

int main()
{
    printf("Hello world!\n\n");

    float intArray[5][6];

    for(int i = 0; i < 5; i++){
        for(int j = 0; j < 5; j++){
            intArray[i][j]= rand() %(10-6+1) + 6 ;
            printf("Las calificaciom en (%i, %i) es: %.0f \n",i ,j, intArray[i][j]);
        }
        
        //promedio
        for(int j = 5; j < 6; j++){
            float promedio = (intArray[i][0] + intArray[i][1] + intArray[i][2] + intArray[i][3] + intArray[i][4])/5;
            printf("\nEl Promedio es: %.1f \n\n", promedio);
        }
    }

    return 0;
}

Hola, comparto la soluci贸n al reto

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

/*
  Primer Reto:
  Crea un arreglo de 5 filas por 6
  columnas en donde:
  . Los primeros 5 elementos de cada fila
    tengan calificaciones aprobatorias
    entre 6 y 10.
  . El sexto elemento de cada fila debe
    ser 0.
  . Calcula el promedio de los
    primeros 5 elementos de cada fila y
    as铆gnalo al sexto elemento.
  . Imprime el promedio de cada fila
    de calificaciones.
*/

int main()
{
    setlocale(LC_ALL, "");

    printf("Programa para calcular el promedio de un conjunto de calificaciones\n\n");
    float calificaciones[5][6] = {
                               {10, 9, 8, 7, 6, 0},
                               {6, 7, 8, 9, 10, 0},
                               {7, 6, 8, 9, 10, 0},
                               {8, 7, 6, 9, 10, 0},
                               {9, 8, 7, 6, 10, 0}
                               };

    for(int i = 0; i < 5; i++){
        for(int j = 0; j < 6; j++){
            if(j < 5){
                calificaciones[i][5]+=calificaciones[i][j];
                printf("La suma de la fila %d[5] es igual a %f \n", i, calificaciones[i][5]);
            }else{
                calificaciones[i][j] /= 5;
                printf("\n\n\tEl promedio de la fila %d es igual a %f\n\n", i, calificaciones[i][j]);
            }
        }
    }

    return 0;
}

Buenas a todos.

Me ha costado un poco, me he liado un poco con los 铆ndices. Al final solo muestro la sumatoria total y el promedio.

int main(void) {
  
  printf("\n\nPROMEDIO DE CALIFICACIONES:\n\n\n");

  float arrayNotas[5][6] = {  { 6, 7, 6, 7, 8, 0},
                          { 8, 8, 7, 9, 7, 0},
                          { 10, 10, 9, 10, 8, 0},
                          { 10, 9, 9, 9, 8, 0},
                          { 8, 7, 6, 7, 8, 0} 
                        };
  
  float suma = 0;
  float promedio = 0;

  for(int i = 0; i < 5; i++)
  {
    for(int j = 0; j < 6; j++)
    {
      if(j < 5)
      	suma = arrayNotas[i][5] += arrayNotas[i][j];
      else
      	promedio = arrayNotas[i][j] / 5;
    }
    printf("Sumatoria notas Fila [%i]: %.2f \n", i, suma);
    printf("Promedio notas Fila  [%i]: %.2f \n\n\n", i, promedio);
  }

  return 0;
}

Un saludo y gracias.

Buenas a todos.

Comparto uno de los ejemplos cl谩sicos de las matrices, como son las tablas de multiplicar.

#include <stdio.h>

int main(void) {
  
  printf("\nTABLAS DE de MULTIPLICAR:\n\n\n");

  for(int i = 1; i < 10; i++)
  {
    printf("Tabla de Multiplicar del %i: \n", i);
    for(int j = 1; j <= 10; j++)
    {
      printf("\t%i * %i = %i \n", i, j, i * j);
    }
    printf("\n");
  }
  printf("\n");
  
  return 0;
}

Un saludo y gracias.

Aqu铆 esta mi reto a帽adi茅ndole la funci贸n de generar los n煤meros aleatoriamente entre 6 y 10

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

int main()
{
printf ("This is my software for scoring children! \n");

int scoresA[5][6];
int lowerVal = 6, upperVal = 10;
srand (time(NULL));


for (int i = 0; i < 5; i++)
{
    int sumA = 0;

    for (int j = 0; j < 5; j++)
    {
        scoresA[i][j] = (rand () % (upperVal - lowerVal + 1)) + lowerVal;
        printf ("La calificacion (%i, %i) es: %i \n", i, j, scoresA [i][j]);
        sumA += scoresA[i][j];
        scoresA[i][6]= sumA/5; 
    }
    
    printf ("El promedio es: %i \n\n", scoresA[i][6]);
}


    return 0;
}

Aqui mi solucion al reto, espero le entiendan y les sirva de algo

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

int main()
{
    printf("Arreglos bidimensionales e iteradores \n\n");

    srand(time(NULL));

    int studentsScore[5][6];
    float sum = 0;
    float resultAvg;

    for(int i = 0; i < 5; i++)
    {
        for(int j = 0; j < 6; j++)
        {
            if(j == 5)
            {
                studentsScore[i][j] = sum / 5;
                sum += studentsScore[i][j];
                printf("(%i, %i): %i \n", i, j, studentsScore[i][j]);
            }
            else
            {
                studentsScore[i][j] = rand() % (10 - 6 +1) + 6;
                sum += studentsScore[i][j];
                printf("(%i, %i): %i \n", i, j, studentsScore[i][j]);
            }
            resultAvg = sum / 6;
        }
        printf("El promedio de la fila (%i) es: %f\n", i + 1, resultAvg);
        sum = 0;
    }


    return 0;
}

He aqu铆 mi aporte.

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

int main()
{
    int array5x6[5][6];
    float sexto;
    for(int f=0; f < 5; f++)
    {
        for(int c=0; c < 6; c++)
        {   if(c < 5)
            {
                array5x6[f][c] = 6 - f + c;
                if(array5x6[f][c] < 6)
                    array5x6[f][c]+= f;
                printf("Calificaci贸n del estudiante (%i,%i): %i\n", f, c, array5x6[f][c]);
                sexto+= array5x6[f][c];
            }
            else
            {
                sexto/= 5;
                array5x6[f][c] = 0;
                printf("Promedio de las calificaciones: %.1f\n\n", sexto);
                sexto = 0;
            }
        }
    }
    return 0;
}

Primer reto

int main(){
float array [5][6]={
    {6,8,8,6,9,0},
    {6,6,6,6,6,0},
    {6,6,8,9,6,0},
    {6,6,6,7,10,0},
    {6,10,6,8,9,0}
};
int i,j;
for(i=0;i<5;i++){
      int suma=0;
    for(j=0;j<6;j++){
      
        suma+=array[i][j];
       
    }
    array[i][6]=suma/5.0;
     printf("En la fila %i el promedio es: %f\n",i+1,array[i][6]);
}




return 0;
}

Reto:Promedio de calificaciones

float SumRes;
float Mark[5][6] ={
{7,8,9,6,10,0},  //Suma:40 Promedio:8
{8,8,6,6,7,0},   //Suma:35 Promedio:7
{9,8,9,9,10,0},  //Suma:45 Promedio:9
{10,6,9,6,7,0},  //Suma:38 Promedio:7.6
{6,10,9,9,10,0}};//Suma:44 Promedio:8.8

for(int i = 0; i < 5; i++)
{
    SumRes = 0;
    for(int j = 0; j < 5; j++)
    {
        SumRes += Mark[i][j];
        printf("La sumatoria de las calificaciones[%i][%i] es: %f\n", i, j, SumRes);
    }
    Mark[i][5] = SumRes/5;
    printf("\n\tEl promedio de la fila %i es: %f\n\n", i, Mark[i][5]);
}

return 0;

Este ha sido el primer reto donde m谩s batalle, lo hice de esta forma, 驴Qu茅 opinan?

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

int main()
{
    printf("Arreglos e iteradores bidimensionales\n");
    
    float cal;
    float floatArray[5][6];
    float promedio;
    float suma;

    for(int i = 0; i < 5; i++)
    {
        for(int j = 0; j < 5; j++)
        {
            printf("Introduce la calificaci贸n (%i, %i): \n", i, j);
            scanf("%f", &cal);
            
            if ( cal > 5 && cal <= 10 )
            {
                floatArray[i][j] = cal;
            }
            else
            {
                printf("calificaci贸n no aprobatoria o numero invalido\n");
                exit(-0);
            }
        }
        
    }
    
    for(int j = 0; j < 5; j++)
    {
        for(int k = 5; k < 6; k++)
        {
            floatArray[j][k] = 0;
        }
    }
    
    for(int m = 0; m < 5; m++)
    {
        suma = floatArray[m][0] + floatArray[m][1] + floatArray[m][2] + floatArray[m][3] + floatArray[m][4];
        
        promedio = suma / 5;
        
        floatArray[m][5] = promedio;
        
        printf("La sumatoria de la fila %i es: %f \n", m , suma);
        
        printf("El promedio de de la fila %i es: %f\n\n", m, floatArray[m][5]);
        
    }
    
    
    return 0;
}

En esta estructura al iniciar el for, se recorre vuelta por vuelta ambos fors, iniciando por la primera vuelta del primer for y continuando con todas las vueltas del segundo for.

En C para obtener n煤meros aleatorios debemos primero incluir la librer铆a <time.h> y esto nos permitir谩 usar la funci贸n rand()

Yo lo hices solo con FOR y definiendo el arreglo desde el comienzo, as铆 en caso que se quiera cambiar la cantidad de notas o alumnos fuera m谩s f谩cil, adem谩s con un Scan para que sea el usuario quien ingrese los datos

#include <stdio.h>
#include <stdlib.h>
#define arreglo 5
#define notas 6
#define alumnos 5

int main()
{
    float promedio;
    float prom[alumnos][notas];

    for(int i = 0; i<alumnos; i++){
        promedio = 0;
        for (int j = 0; j < notas-1; j++){
             printf("\nIngrese la nota %i del alumno %i: ",j+1,i+1);
             scanf("%f", &prom[i][j]);
             promedio += prom[i][j];
                //for(i = notas-1; i<notas; i++){
                }
                prom[i][notas-1]=promedio/(notas-1);
                printf("\nPromedio del alumno: %.2f \n",prom[i][notas-1]);
                }


    return 0;
}
#include <stdio.h>

main()
{
	float arreglo[5][6],suma=0;
	for(int i=0;i<5;i++)
	{
		for(int j=0;j<5;j++)
		{
			printf("Dame la calificacion [%d][%d] \n",i,j);
			scanf("%f",&arreglo[i][j]);
			suma=suma+arreglo[i][j];
		}
		printf("\n");
		arreglo[i][5]=suma/5;
		printf("El promedio de %d es: %f \n",i,arreglo[i][5]);
		suma=0;
	}
	
}

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

int main()
{

printf("Arreglos bidimensionales e iteradores Reto \n");
float sumatoria;
float integerArray[5][6]={{6,7,8,9,0},
                          {8,9,10,6.5,0},
                          {9,9,8.5,7.5,0},
                          {8,6,7,10,0},
                          {6,6,7,9,0}};


for(int i = 0; i < 5; i++)
{
    sumatoria = 0;
    for(int j = 0; j < 6; j++)
    {
        sumatoria += integerArray[i][j];
    }
    float promedio =  sumatoria/5;
    printf("El promedio de la fila es: %f \n", promedio);
}
return 0;

}

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

int main()
{
    int calificaciones[5][6];

    //ciclos para pedir las calificaciones

    for(int i = 0; i<5; i ++)
    {
        printf("Escribe la calificacion %i \n \n", i+1);

        for(int j= 0; j<5;j++)
        {
            printf("Ingresa la calificacion: (%i %i) \n",i, j);
            scanf("%i",&calificaciones[i][j]);
        }
    }


    //ciclos para mostrar la informacion

    printf("Reto Array Bidimensional - promedio de calificaciones \n \n");

    for(int i = 0; i<5; i ++)
    {
        int suma= 0;
        int promedio= 0;

        for(int j= 0; j<5;j++)
        {
            printf("La calificacion %i es: %i \n",j, calificaciones[i][j]);

            suma = suma + calificaciones[i][j];
        }
        promedio = suma/6;
        printf("El promedio de la materia %i = %i \n \n \n", i, promedio);
    }


    return 0;
}

Retito de iterador bidimensional

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

int main()
{
    printf("arreglos \n");
    float sum = 0, prom;
    float arr[5][6] = {
                    {6, 6, 8, 8, 10, 0},
                    {7, 6, 9, 7, 8, 0},
                    {7, 8, 9, 8, 7, 0},
                    {6, 6, 8, 8, 9, 0},
                    {8, 9, 10, 9, 8, 0}
                    };

    for(int i = 0; i < 5; i++){
        for(int j = 0; j < 5; j++){
            sum += arr[i][j];
            if(j == 4){
                prom = sum / 5;
                arr[i][5] = prom;
            }
        }
        printf("Valor [%i][5], Promedio: [%.2f] \n", i, arr[i][5]);
        sum = 0;
    }

    return 0;
}

mi reto luego de 2 horas de quemar las pesta帽as

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

int main()
{
printf(鈥渁rreglos bidimencionales con iteracion, promedio de notas\n\n鈥);

float floatArray[5][6]={{6,10,9.5,8,7,0},
                        {7,8,9,10,6.5,0},
                        {9,6.5,8.5,9.7,0},
                        {8,6.9,7.3,8.7,9,0},
                        {7.5,8.3,9.9,6,10,0}};

for(int i=0; i < 5 ; i++)
{
    float sumatoria=0;

    for (int j = 0; j < 5;j++){
        printf("calificaciones[%i][%i]= %f\n", i,j, floatArray[i][j]);
        sumatoria+=floatArray[i][j];
    }
    floatArray[i][5] = sumatoria/5;
    printf("el promedio de la fila %i es %f\n",i,floatArray[i][5]);
}
return 0;

}

int main()
{
    printf("Reto Arreglos e Iteradores Bidimensionales\n\n");

    float promedio;

    float matriz[5][6] = {  {6.2, 8.3, 9.3, 7.0, 6.6, 0.0},
                            {7.3, 9.7, 6.2, 7.9, 8.4, 0.0},
                            {8.2, 7.2, 9.7, 8.6, 7.4, 0.0},
                            {9.8, 7.4, 8.8, 9.7, 8.5, 0.0},
                            {7.3, 6.3, 6.7, 6.7, 6.8, 0.0} };

    for(int i = 0; i < 5; i++)
    {
        promedio = 0.0;

        for(int j = 0; j < 5; j++)
        {
            printf("La sumatoria del array[%i][%i], es: %f \n", i, j, matriz[i][j]);
            promedio += matriz[i][j];
        }
        promedio = promedio / 5;

        printf("\n\t El primedio de la fila %i es: %f\n\n", i, promedio);
    }


    return 0;
}

Por fin lo logre 馃槂

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

int main()
{
    float arrr[5][6] = {{7, 6, 9, 8, 7, 0},
                        {6, 9, 7, 8, 6, 0},
                        {6, 9, 8, 7, 8, 0},
                        {7, 8, 9, 6, 9, 0},
                        {8, 7, 9, 6, 7, 0}};


    for(int i = 0; i < 5; i++)
    {

        for(int j = 0; j < 5; j++)
        {
             arrr[i][5] += arrr[i][j];

        }
        printf("La sumatoria de [%d][5] es: %f \n", i, arrr[i][5]);
        arrr[i][5] /= 5;
        printf("La el promedio de[%d][5] es: %f \n \n", i, arrr[i][5]);


    }


    return 0;
}

Reto

Mi c贸digo con n煤meros random 馃

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

int main(void) {
  printf("Matrix For\n");
  int prom = 0;
  int matrix[5][6];
  for(int i = 0; i < 5; i++)
    {
        for(int j = 0; j < 6; j++)
        {
            matrix[i][j] = rand() % 5 + 6;
            matrix[i][5] = 0;
            prom += matrix[i][j];
            matrix[i][5] = prom/5;
            printf("(%d, %d): %d \n", i, j, matrix[i][j]);
        }
            prom = 0;
    }
  return 0;
}

Reto:

#include <stdio.h>

int main(void) {

  printf("Array bidimensional - Promedio de calificaciones\n");

  int m[5][6] = {{6, 7, 8, 9, 10, 0},
                 {7, 7, 7, 7, 7, 0},
                 {6, 6, 6, 6, 6, 0},
                 {8, 8, 8, 8, 8, 0},
                 {9, 9, 9, 9, 9, 0}
                };

  for(int i = 0; i < 5; i++) {
    float average = 0;
    for(int j = 0; j < 5; j++) {
      average += m[i][j];
      printf("Calificaci贸n [%i][%i]: %i \n", i, j, m[i][j]);
    }
    average /= 5;
    m[i][5] = average;
    printf("El promedio de la fila %i es: %f \n", i+1 ,average);
  }

  return 0;
}

En mi caso no quise agregar los printf extras que aparecen en el ejemplo de la profesora porque prefer铆 centrarme en el motor del carro que en la pintura o latoner铆a.

PD: en el printf principal donde se imprime el promedio general de as filas el %0.2f significa que solo voy a tomar en cuenta dos decimales y nada m谩s, es una forma de impresi贸n m谩s elegante puesto que no vas a tener una chorrera de decimales

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


int main(){

    // inicializaci贸n de la tabla o matriz de 5*6
    // Declaraci贸n e inicializaci贸n de las variables sum y promedio

    float matriz[5][6] = {{6.3, 8.4, 9.2, 10, 6, 0}, {6.2, 7.4, 7.2, 7, 9, 0}, {6.9, 8.7, 9.9, 7.7, 6, 0},  
                        {6.3, 8.4, 9.2, 10, 6, 0}, {6.1, 8.8, 9.1, 10, 6.9, 0}};
    
    float sum = 0;
    float promedio;

    // Calculo del promedio de los primeros 5 elementos
    // y asignaci贸n del mismo al 6 elemento

    for(int i = 0; i < 4; i++){

        for(int j = 0; j < 5; j++){

            sum += matriz[i][j];
            promedio = sum / 6;

        }

        matriz[i][5] = promedio;
        sum = 0;
        promedio = 0;

    }

    // Calculo del promedio de lo elementos completos
    for(int i = 0; i < 5; i++){

        for(int j = 0; j < 6; j++){

            sum += matriz[i][j];
            promedio = sum / 6;

        }

        printf("Promedio De Notas fila(%i) = %0.2f \n", i, promedio);
        sum = 0;
        promedio = 0;

    }

    return 0;

}

Yo lo hice as铆

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

int main()
{
    printf("For anidado \n");

    int j,i;
    float guardar,b,promedio, arreglo[5][6]={  { 6, 7, 6, 7, 8, 0},
                            { 8, 8, 7, 9, 7, 0},
                            {10, 10, 9, 10, 8, 0},
                            { 10, 9, 9, 9, 8, 0},
                            { 8, 7, 6, 7, 8, 0} };

    for (i=0; i<5; i++)
    {
        guardar=0;
        for (j=0; j<6; j++)
        {
            guardar+=b;
            printf("La calificacion de (%i, %i) es: %f \n",i,j,arreglo[i][j]);
            b=arreglo[i][j];
        }
        promedio=guardar/6;
        printf("\nEl promedio de la fila %i es: %f \n\n\n",i,promedio);

    }




    return 0;
}

Comparto mi resoluci贸n!

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

int main()
{
    printf("\tReto de arreglos bidimensionales y bucles\n\n");

    float array[5][6];

    float mean;


    printf("----------------------------------------------------------------------\n\n");

    for(int i = 0; i<5;i++){
        for(int j = 0; j<6; j++){


            if(j != 5){
                array[i][j] = 7 +pow(-1,i+j);
                mean += array[i][j];
                printf("\t\t\tNota (%i, %i): %f\n", i, j, array[i][j]);

            }
            else{
                array[i][j] = mean/j;
                printf("\n\t\t\t\t\t\tPromedio %i: %f\n\n\n",i+1,array[i][j]);

            }
        }
        mean = 0;
        printf("----------------------------------------------------------------------\n\n");

    }


    return 0;
}

El c贸digo hermano del reto:

float arrayCal[5][6] = { {6.1, 7.5, 8.8, 9.3, 6.0, 0.0},
                             {7.7, 7.8, 8.8, 9.0, 9.9, 0.0},
                             {6.7, 6.1, 6.6, 6.9, 7.2, 0.0},
                             {8.9, 9.0, 7.9, 6.3, 8.0, 0.0},
                             {6.1, 7.5, 8.8, 9.3, 6.0, 0.0} };
    float promedio = 0.0;

    printf("Promedio calificaciones de una clase \n\n");
    
    for (int i = 0; i < 5; i++)
    {
        for (int j = 0; j < 6; j++)
        {
            if (j < 5)
            {
                printf("La calificacion del elemento [%i][%i]: \t %f \n", i, j, arrayCal[i][j]);
                promedio += arrayCal[i][j];
            }
            else if (j == 5)
                arrayCal[i][j] = promedio / 5.0;            
        }
        promedio = 0.0;
        printf("\n El promedio de la clase es: \t %f \n", arrayCal[i][5]);               
    }

Hola 馃槂 Les comparto mis c贸digos, lo resolv铆 de 2 formas:

#include <stdio.h>

int main()
{
    float array[5][6] = {
        {6,7,8,9,10,0},
        {7,9,6,6,8,0},
        {10,9,10,10,8,0},
        {8,9,8,6,6,0},
        {9,7,7,6,6,0}
        };

    float suma, promedio;

    for(int i = 0;i<5;i++){
        suma = 0;
        for(int j = 0;j < 5;j++){
                suma += array[i][j];
        }
        promedio = suma / 5;

        array[i][6] = promedio;
        printf("Promedio fila %i: %.2f\n",i+1,promedio);
    }

    return 0;
}
#include <stdio.h>

int main()
{
    float array[5][6] = {
        {6,7,8,9,10,0},
        {7,9,6,6,8,0},
        {10,9,10,10,8,0},
        {8,9,8,6,6,0},
        {9,7,7,6,6,0}
        };

    float suma, promedio;

    for(int i = 0;i<5;i++){
        suma = 0;
        for(int j = 0;j < 6;j++){
            if(j < 5){
                suma += array[i][j];
            }else{
                promedio = suma /(j);
                array[i][j] = promedio;
            }
        }
        printf("Promedio fila %i: %.2f\n",i+1,promedio);
    }

    return 0;
}

Soluci贸n del desaf铆o:

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

int main()
{
    printf("Arreglo de 5 filas por 6 columnas para sacar calificaciones promedio \n");

    float calificaciones[5][6] = {{9,8,6,8,9,0},
                                  {6,6,7,8,6,0},
                                  {10,9,8,9,9,0},
                                  {6,7,8,9,10,0},
                                  {8,6,7,7,7,0}};

    float suma = 0;

    for(int i = 0; i < 5; i++)
    {
        for(int j = 0; j < 5; j++)
        {
            suma += calificaciones[i][j];
        }
        calificaciones[i][5] = suma / 5;
        suma = 0;

        printf("Promedio fila %i: %f\n", i, calificaciones[i][5]);
    }

    return 0;
}

My notes

Nested Loop

C supports nesting of loops in C.聽Nesting of loops聽is the feature in C that allows the looping of statements inside another loop. Let鈥檚 observe an example of nesting loops in C.

Any number of loops can be defined inside another loop, i.e., there is no restriction for defining any number of loops. The nesting level can be defined at n times. You can define any type of loop inside another loop; for example, you can define 鈥while鈥 loop inside a 鈥for鈥 loop.

If you want to walk through a matrix you should do it with two loops and a nested loop

int matrix[5][6]
for(int i = 0; i<5; i++)
{
	for(int j = 0; j<6: j++)
		scanf("%d", matrix[i][j]);
}
		

https://www.javatpoint.com/nested-loops-in-c

My Code

#include <stdio.h>

int main()
{
    float matrix[5][6], prom;
    int n;

    for (int i = 0; i < 5; i++)
    {
        for (int j = 0; j < 5; j++)
        {
            n = 0;
            do
            {
                if (n == 1)
                {
                    printf("Remember, ingress a mark between 6 and 10. ");
                }
                printf("Student %d, Mark %d:  ", i + 1, j + 1);
                scanf("%f", &matrix[i][j]);
                n = 1;
            } while (matrix[i][j] < 6 || matrix[i][j] > 10);
            matrix[i][5] += matrix[i][j];
        }
        prom = matrix[i][5] / 5;
        printf("The average of student %d is: %.2f\n", i + 1, prom);
    }
}
#include <stdio.h>
#include <stdlib.h>

int main()
{
    int tabla[5][6];
    for(int i = 0; i < 5; i++)
    {
        tabla[i][6] = 0;
    }

    printf("Ingresa valores en la tabla:\n");
    for(int j = 0; j < 5; j++)
    {
        for(int p = 0; p < 5; p++)
        {
            printf("\nValor [%i][%i]:", j, p);
            scanf("%i", &tabla[j][p]);
            tabla[j][6] += tabla[j][p];
        }
        tabla[j][6] /=  5;
        printf("Promedio de fila %i: %i", j, tabla[j][6]);
    }
    return 0;
}

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

int result, lastSum, lastArray;

int main()
{
printf(" \t Average student \n \n");
int a[5][6] = {{9,8,7,6,5,0},
{7,8,8,7,8,0},
{9,7,9,7,9,0},
{6,7,9,8,7,0},
{6,7,9,8,7,0}};

for(int i = 0; i < 5; i++)
{
    for(int j = 0; j < 5; j++)
    {
        result = a[i][j] + lastSum;
        lastSum = result;

        if(j == 6)
            {lastArray = a[i][j];}

        printf("Resolution : %i \n", result);

    }
            lastArray = result / 5;
            printf("Average : %i \n", lastArray);
            printf("\n \n" );
            lastSum = 0;
}


return 0;

}

Mi reto:

#include <stdio.h>

int main() {
    unsigned int tamanoArray;
    float numMasGrande;

    printf("驴Cuantos n煤mero vas a ingresar?\n");
    scanf("%i", &tamanoArray);

    float numberList[tamanoArray];

    for (int i = 0; i < tamanoArray; i++) {
        printf("Ingresa el valor %i: ", i);
        scanf("%f", &numberList[i]);

        if (numberList[i] > numMasGrande) {
            numMasGrande = numberList[i];
        }
    }

    printf("El numero m谩s grande es: %f", numMasGrande);

    return 0;
}
#include <stdio.h>
#include <stdlib.h>

int main()
{
        /*
        Primer reto: Crea un arreglo de 5 filas por 6 columnas donde:
        1.Los primeros 5 elementos de cada fila tengan calificaciones aprobatorias entre 6 y 10
        2.El sexto elemento de cada fila debe ser 0
        3.Calcula el promedio de los primeros 5 elementos de cada fila y asignalo al sexto elemento.
        4.Imprime el promedio de cada fila de calificaciones
    */
    printf("Reto 13\n");
    int i, j;
    float array[5][6] = {
        {6,7,8,10,6,0},
        {6.2,7.3,8.9,10,7.9,0},
        {8.9,9,7.1,9.8,10,0},
        {6,8.5,8.2,6.8,9,0},
        {6,7.8,8,10,7.2,0}};
        for(i = 0; i < 5; i++)
        {
            float promedio;
            for(j = 0; j < 5; j++)
            {
                printf("Calificacion [%i][%i]: %.2f\n", i,j, array[i][j]);
                promedio += array[i][j];
            }
            printf("\n");
            array[i][5] = promedio/5;
            printf("El promedio de la fila %i es %.2f\n\n", i, array[i][5]);
        }
    return 0;
}


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

int main()
{
    printf("Promedio de calificaciones\n");
    float grades[5][6];

    for(int i = 0;i<5;i++){
        float sum = 0;
        for(int j = 0;j<6;j++){
            if(j != 5){
                grades[i][j] = (rand()%5+6);
                sum += grades[i][j];
                printf("Calificacion[%d][%d]: %f\n",i,j,grades[i][j]);
            }
            else{
                grades[i][j] = sum/5;
            }
        }
        printf("El promedio de la fila %i es: %f\n",i,grades[i][5]);

    }

    return 0;
}

Reto:

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

int main()
{
    printf("Array Bidimensional - Promedio de calificaciones\n\n");

    float tablaPromedio[5][6];
    srand(time(0));

    for (int i = 0; i < 5; i++)
    {
        for (int j = 0; j < 5; j++)
        {
            tablaPromedio[i][j] = rand () % (10-6+1) + 6;
        }
    }

    for (int k = 0; k < 5; k++)
    {
        tablaPromedio[k][5] = (tablaPromedio[k][0] + tablaPromedio[k][1] + tablaPromedio[k][2] + tablaPromedio[k][3] + tablaPromedio[k][4])/5; 
    }
    
    for (int l = 0; l < 5; l++)
    {
        for (int m = 0; m < 5; m++)
        {
            printf("Calificaci贸n [%i][%i]: %f\n", l, m, tablaPromedio[l][m]);
        }
        printf("\nEl promedio de la fila %i es: %f\n\n", l, tablaPromedio[l][5]);
    }
    
    return 0;
}
int main()
{
    float arreglo[5][6] ={{6,7,8,9,6,0},{2,2,2,2,2,0},{7,7,9,9,3,0},{9,7,6,9,6,0},{10,9,7,9,7,0}};

    for(int i = 0; i < 5; i++)
    {
        float promedio = 0, result = 0;
        for(int j = 0; j < 5; j++)
        {
            promedio += arreglo[i][j];
            result = promedio / 5;
            arreglo[i][5] = result;
        }
        printf("Promedio(%i): %f\n", i,arreglo[i][5]);
    }
}
#include <stdio.h>

int main()
{
        float notes[5][6] = {
        {6, 9, 10, 9, 8, 0},
        {9, 8, 9, 10, 8, 0},
        {10, 8, 9, 7, 10, 0},
        {8, 7, 9, 7, 9, 0},
        {8, 9, 7, 9, 10, 0},
    };

    for (int i = 0; i < 5; i++)
    {
        float avg, total;
        avg = total = 0;

        for (int j = 0; j < 5; j++)
        {
            total += notes[i][j]; 
            avg = total / 5;
            notes[i][5] = avg;
        }

        //printf("row %i -> %.1f \n", i + 1, total);
        printf("alumn %i -> %.1f \n", i + 1, notes[i][5]);
    }
}

alumn 1 -> 8.4
alumn 2 -> 8.8
alumn 3 -> 8.8
alumn 4 -> 8.0
alumn 5 -> 8.6

RETO COMPLETADO

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


int main()
{
    printf("\t\t\t\tReto 17\n");

    int randomNum, n, m, ave, sum;
    m = 6;
    n = 10;
    int challengeArray[5][6];


    for(int i=0 ;i<5; i++)
    {
        sum = 0;
        for(int j=0 ;j<6; j++)
        {
            randomNum = rand () % (n-m+1) + m;
            challengeArray[i][j] = randomNum;
            sum += randomNum;
            printf("La sumatoria del arreglo [%i][%i], es: %i\n", i, j, sum);
        }
        ave = sum / 6;
        printf("\n\t\tEl promedio de la fila %i. es: %i\n\n", i+1, ave);
    }



    return 0;
}

Soluci贸n al reto.
Las calificaciones se agregaron a la lista por medio de una funci贸n que retorna valores aleatorios. A esta se le pueden agregar mas detalles para que agregue n煤meros entre un rango especifico, en este caso 6 y 10.

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

int main()
{
   printf("Iteraciones en un array bidimensional\n");

   int min = 6;
   int max = 10;
   int filas = 5;
   int columnas = 6;
   int promedio;
   srand(time(0));
   
   int calificaciones[filas][columnas];
   for(int i = 0; i < filas; i++)
   {
      for(int j = 0; j < (columnas-1); j++)
      {
         calificaciones[i][j] = ((rand() % (max - min +1)) + min); //Crea un numero aleatorio entre min(6) y max(10)
         promedio += calificaciones[i][j];
      }
      promedio /= (columnas-1);
      calificaciones[i][columnas-1] = promedio;

      printf("Promedio Fila No.%i:\t%i\n", i+1, calificaciones[i][columnas-1]);
   }
   
   return 0;
} 

Mi solucion:

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

int main(){
    int prom, calificaciones[5][6]=
    {{6,7,8,9,9,0},
     {8,8,7,6,7,0},
     {9,9,9,8,6,0},
     {10,10,10,10,10,0},
     {9,9,9,8,6,0}};
    for(int i=0; i<5; i++){
        for(int j=0; j<5; j++){
            calificaciones[i][5]+= calificaciones[i][j];
        }
    }

    for(int i=0; i<5; i++){
      calificaciones[i][5]=calificaciones[i][5] / 5;
      printf("El promedio de la fila %i es= %i\n", i, calificaciones[i][5]);
    }

    }



mi aporte a la clase con el reto:

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

int main(){
    float arrayList[5][6];

    srand(time(NULL));

    for(int n=0; n<5; n++){
        for(int m=0; m<5; m++){
            arrayList[n][m]=(rand()%5)+6;
            arrayList[n][5]=arrayList[n][5]+arrayList[n][m];
        }
    }

    for(int f=0; f<5; f++){
        arrayList[f][5]=arrayList[f][5]/5;
        printf("el promedio de la fila %d es: %f\n",f+1,arrayList[f][5]);
    }

    return 0;
}

Reto Cumplido, comente algunas l铆neas para que se pudiera entender un poco la estructura del c贸digo.

int main(){
    //definimos las notas en nuestro arreglo bidimensional
    float notas[5][6] = {{6,8,8,9,6,0},{6,7,8,9,9,0},{7,7.9,8,8,6,0},{8,8,8,8,8,0},{6,6,6,6.8,6,0}};
    float promedio; //la variable promedio nos ayuda parea poder reasignar el campo que vale cero
    for(int i = 0; i < 5; i++){
        promedio = 0; //en cada vuelta del primer for promedio vuelve a 0 para volver a ingresar al otro for
        for(int j= 0; j < 5 ; j++){
            promedio += notas[i][j];
        }
        promedio /= 5; //definimos el promedio
        notas[i][5] = promedio; //asignamos el promedio al campo que vale cero de cada fila
    }

    for (int k = 0; k < 5; k++)
    {
        printf("Notas finales del estudiante (%i): %f \n", (k+1) ,notas[k][5]);
    }
    
    return 0;
}

Mi propia version gg espero sirva de algo

#include <stdio.h>

int main()
{
    int array[5][6];
    for (int x = 0; x < 5; x++)
    {
        int y, suma = 0;
        float promedio = 0;
        for (y = 0; y < 6; y++)
        {
            printf("Ingresa una calificacion para la fila %d y columna %d: ", x, y);
            scanf("%d", &array[x][y]);
            suma = suma + array[x][y];
        }
        promedio = suma / 5;
        printf("La sumatoria del array[%d][%d] es: %d\n", x, y, suma);
        printf("El promedio de la fila es: %f\n\n", promedio);
    }
    
    return 0;
}

Reto:

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

int main()
{
float A[5][6];
srand(time(NULL));

for(int i = 0; i < 5; i++)
{
float average = 0;
for(int j = 0; j < 5; j++)
{
A[i][j] = 6+rand()%(10-6+1);
printf(鈥淣otas ingresadas son (%d, %d): %.2f\n鈥, i, j, A[i][j]);
average += A[i][j];
}
printf("\n");
A[i][5] = average/5;
printf(鈥淓l promedio de la fila %d es %.2f\n\n鈥, i, A[i][5]);
}
return 0;
}

Uno no se da cuenta de las muchas maneras en las que hizo mal el ejercico hasta que ve los retos de los dem谩s JAJA

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

int main()
{
    printf("Asignemos calificaciones\n");

    float cali[5][6];

    for(int i = 0; i<5;i++){
        for(int j = 0; j<6; j++){
        float suma;
        float acumulado;
        if(j<5){
        printf("Ingresa las calificaciones para (%i,%i) : ",i,j);
        scanf("%f", &cali[i][j]);
        if(cali[i][j] <6 || cali[i][j]>10){
            printf("Ingresaste una calificacion incorrecta, intentalo nuevamente\n");
            cali[i][j]=0;
            j = j - 1;
        }
            suma = cali[i][j] + acumulado;
            acumulado = suma;
        }
        else {
        cali[i][j] = acumulado / 5;
        printf("\nEl promedio de la fila %i es : %f\n", i, cali[i][j]);
        acumulado = 0;
        }
    }
    }
    return 0;
}

Challenge solution

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

float array[5][6];

int main() {    
    printf("Challenge\n");

    int i, j;
    float sum;
    for(i = 0; i < 5; i++) {
        printf("\n");
        for(j = 0; j < 5; j++) {
            array[i][j] = rand() % (4 + 1) + 6;
            printf("array[%i][%i] = %f\n", i, j, array[i][j]);
            sum += array[i][j];
        }
        array[i][5] = sum / 5;
        printf("El promedio es de: %f", array[i][5]);
        sum = 0;
    }
    return 0;
}```

Reto:

Sufr铆 mucho para hacer este reto, pero no me rend铆 帽.帽
Tuve que aprender de la funci贸n rand() para agregar n煤meros aleatorios en el arreglo. Pueden googlear, como n煤meros aleatorios en C, para aprender m谩s sobre ello, quise compartir el link pero no me permite hacerlo.
.
Aqu铆 comparto mi c贸digo y el resultado 馃槃

<int main()
{
   printf("Arreglos bidimensionales\n\n");
   int notas[5] [6];

   for(int i = 0; i < 5; i++)
    {
     int promedio = 0;
     for(int j=0; j < 6; j++)
      {
       notas[i] [j] = rand() %5 + 6;
       notas[i] [5] = promedio/5;
       printf("[%i, %i]: %i \n", i, j, notas[i] [j]);
       promedio = promedio + notas[i] [j];
      }
     printf("El promedio de la fila (%i) es: %i\n\n",i,notas[i][5]);
    }
    return 0;
}>

Ahora si final con sus numeros con decimales =)

Comparto el desafio.

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

int main()
{
    printf("Reto # 11 Arreglos Bidimensionales e Iteradores!\n");
    //Declarando variables:
    float lista[5][6];
    float promedio;

    //Iniciando FOR Anidados para las condicionales de los arreglos:
    for(int i=0;i<5;i++)
    {
        for (int j=0;j<6;j++)
        {

        //Ingresando la calificacion y la condicion para el usuario:
        if(j<5){
        printf("Digite la calificacion obtenida superior a 6.00 en la lista numero [%i][%i]:",i,j);
        scanf("%f", &lista[i][j]);
        promedio += lista[i][j];
    }else
        {
        promedio/=5;
        lista[i][j] = promedio;
        printf("El Promedio de la Lista %i es : %f",i,lista[i][j]);
      }
    }
      promedio = 0;
      printf("\n\n");
}
 return 0;
}

Aqu铆 mi codigo del reto, le he agregado el sexto elemento de cada fila a la impresi贸n para que sea m谩s visual 馃槃

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

int main()
{
    printf("Reto Arreglos bidimensionales e Iteradores\n\n");

    printf("Vamos a sacar el promedio de unas calificaciones\n\n");

    float calificaciones [5][6];


    for(int i = 0; i < 5; i++)
    {
        float suma = 0;

        for(int j = 0; j < 5; j++)
        {
            calificaciones [i][j] = rand() % 5 + 6;
            printf("\nCalificacion[%i][%i]: %f", i, j, calificaciones[i][j]);

            suma += calificaciones [i][j];
        }

        calificaciones[i][6] = suma / 5;
        printf("\nCalificacion[%i][5]: %f", i, calificaciones[i][6]);
        printf("\n\nEl promedio de la fila %i es: %f\n", i, calificaciones[i][6]);
    }

    printf("\n\n");
    return 0;
}

Y aqu铆 el resultado

![](

ADJUNTO mi codigo :3

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

int main()
{
    printf("Reto BIDIMENSIONALES\n");

    int Calificaciones[5][6];


    for(int i = 0; i<5; i++)
    {
        float suma = 0;
        for(int j = 0; j<5; j++)
        {
            Calificaciones[i][j] = rand() % 5 + 6;
            printf("el valor en la posicion [%i][%i] es %i\n", i,j, Calificaciones[i][j]);
            suma += Calificaciones[i][j];

        }
    printf("La suma de los valores %f \n",suma);
    Calificaciones[i][6] = suma / 5;
    printf("El promedio en la posicion [%i][6], es %i\n\n",i,Calificaciones[i][6]);
    }


    return 0;
}```

reto
encontrar el promedio de un array

#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>//para los bools

int main ()
{
    //declaro mis variables
    int suma;//variable para mi suma
    suma = 0;//la inicializo a 0

  float calificaiones [5] [6];//mi float
    //fores para llenar mi arreglo
  for(int i = 0; i < 5; i++)
  {
    for(int j = 0; j < 5; j++)
    {
      do
      {
        printf("ingresa las calificaciones de 6 a 10: \n");//imprimo mi peticion
        scanf("%f", &calificaiones [i] [j]);//lo guardo
      }while(calificaiones [i] [j] < 6 || calificaiones [i] [j] > 10);//parara hasta que ingrese un numero menor que 6 o mayor que 10
      printf("es una calificacion invalida \n");//si me ingresa una calificaion hara esto
      suma += calificaiones [i] [j];//hago la suma
    }
    calificaiones [i] [5] =  suma / 5;//y la nota final
    //luego ya solo se imprime
    printf("el promedio de las calificaiones de la fila [%i] es: %0.2f \n ", i,calificaiones [i] [5] );
  }  
     return 0;
}```

Buenas, muchas gracias a los compa帽eros que dan sus explicaciones y aportes, pude entender que el ejemplo de la maestra la sumatoria se iba dando por rengl贸n.

int main()
{
    float Arrai[5][6] = {{6, 7.5, 8.5, 9.5, 6.7, 0},
                         {7.2, 8.6, 9.1, 6.9, 8.9, 0},
                         {6.3, 7.4, 8.2, 9.4, 7.7, 0},
                         {9.3, 6.4, 7.1, 6.1, 10, 0},
                         {8.8, 6.6, 9.2, 9.9, 9.7, 0}};

    printf("Array Bidimensional - Promedio de calificaciones. \n");

    for(int x = 0; x < 5; x++)
    {
        float prom = 0;
        for(int y = 0; y < 6; y++)
        {
            prom += Arrai[x][y];
            printf("El sumatoria de la fila [%i][%i]: %f\n", x, y, prom);
        }

        Arrai[x][5] = prom / 5;
        printf("\n");
        printf("El promedio de la fila %i: %f\n", x, Arrai[x][5]);
        printf("\n");

    }
    return 0;
}```

Aqu铆 esta el reto 馃憣

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

int main() 
{
    float matrix[5][6]; 
    float goodScore[] = {7, 8, 7, 10, 9};
    int i, j;


    for(i=0; i< 5; i++) 
    {
        for(j=0; j<6; j++)
        {
            if (j == 0)
            {
                matrix[i][j]= goodScore[i];
                printf("Este es el resultado(%i, %i): %f\n", i, j,  matrix[i][j]);
            }else if (j == 5) 
            {
                matrix[i][j]= (matrix[i][0] + matrix[i][1] + matrix[i][2] + matrix[i][3] + matrix[i][4]) / 5;
                printf("Este es el promedio de esta fila(%i, %i): %f\n", i, j,  matrix[i][j]);
            }
            else
            {
                matrix[i][j]= ((i+j)*10) /(10-j);
                printf("Este es el resultado(%i, %i): %f\n", i, j,  matrix[i][j]);
            }              
        }
    }

    return 0;
}```

WOW, este estuvo un poco m谩s desafiante, pero lo pude terminar 馃槂

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

int main()
{
    float calificaciones[5][6] = {{8,7,7,8,10,0}, {10,10,6,6,7,0}, {8,9,6,10,9,0}, {8,6,9,10,7,0}, {10,6,7,8,8,0}};
    float prom = 0;
    int j = 0;
    int i = 0;
    for(i = 0; i < 5; i++)
    {
        for(j = 0; j < 5; j++)
        {
            prom = prom + calificaciones[i][j];
        }
        calificaciones[i][5] = prom / 5;
        prom = 0;

    }
    for(i = 0; i < 5; i++)
    {
        printf("\nEl promedio de: ");
        for(j = 0; j < 5; j++)
        {
            printf("%f, ", calificaciones[i][j]);
        }
        printf(" es: %f \n", calificaciones[i][5]);

    }

    return 0;
}