Suma y media
Muchas cajitas del mismo tipo, con un solo nombre.
1Por qué
Imagina que hay que guardar las notas de un curso de cuarenta personas. Con lo que sabes hasta ahora serían cuarenta cajitas con cuarenta nombres distintos, y después un printf para cada una.
Cuando algo se repite cuarenta veces, lo que falta no son cuarenta nombres: es poder tener cuarenta cajitas con un solo nombre y un número que diga cuál.
Eso es un arreglo: una fila de cajitas del mismo tipo, pegadas una al lado de la otra, con un nombre para toda la fila. int notas[4] crea cuatro cajitas de enteros de golpe.
Y aquí está lo que hace tropezar a todo el mundo: se cuentan desde cero. En int notas[4] la primera es notas[0] y la última es notas[3] — no notas[4], que no existe. Pedir la número 4 de cuatro cajitas es el error más común de C, y lo peor es que fuera de aquí no avisa: te da un número cualquiera y el programa sigue como si nada.
Aquí sí avisa. Cuando termines, pruébalo a propósito: cambia un número por uno de más y mira lo que te dice.
2Míralo andar
Este programa funciona. Léelo, y después ejecútalo sin cambiar nada.
#include <stdio.h>int main(void){int notas[3] = {4, 6, 5};int suma = 0;for (int i = 0; i < 3; i++){suma = suma + notas[i];}printf("Suma %d\n", suma);return 0;}
- línea 5
Tres cajitas de una vez, con sus valores entre llaves. La primera esnotas[0]. - línea 8
iempieza en 0 y llega hasta 2, porque la condición es< 3. Ese<en vez de<=es justo lo que evita pedir la cajita que no existe. - línea 10
notas[i]es el contenido de la cajita númeroi. Comoicambia en cada vuelta, cada vuelta suma una distinta.
3Ahora tú
Haz que el programa escriba: Suma 20, media 5
#include <stdio.h>int main(void){int notas[4] = {5, 3, 7, 5};int suma = 0;for (int i = 0; i < 4; i++){}printf("Suma %d, media %d\n", suma, suma / 4);return 0;}
↖︎ Tu línea va aquí. Se repite una vez por cajita, y en cada vuelta i vale otra cosa.
Ejecutar
Lo que dice tu programa
↖︎ Escribe tu parte y dale a Ejecutar
Qué pasó
Aquí te aviso si tu programa hace algo raro.
4Qué guarda tu programa
La pila
↖︎ Ejecuta el programa para ver qué pasa por dentro