lunes, 8 de junio de 2026

Llenar un vector de números enteros que representa las notas de los alumnos de 12do. Grado. Mostrar por pantalla la mayor nota, además, la posición donde se encuentra en C++

Código del ejercicio:

#include <iostream>
#include <vector>
#include <clocale>

using namespace std;

int main()
{
    setlocale(LC_CTYPE, "Spanish");
    vector<int> notas;
    int nAlumnos;
    cout << "Ingrese cantidad de alumnos: "; cin >> nAlumnos;
    for (int i = 0; i < nAlumnos; i++)
    {
        int nota;
        cout << "Ingrese la nota " << i + 1 << ": "; cin >> nota;
        notas.push_back(nota);
    }
    int mayorNota = notas[0];
    int posicion = 0;
    for (int i = 1; i < nAlumnos; i++)
    {
        if (notas[i] > mayorNota)
        {
            mayorNota = notas[i];
            posicion = i + 1;
        }
    }
    cout << "La mayor nota es: " << mayorNota << ", está en la posición: " << posicion;
    return 0;
}

Definición de los códigos del ejercicio:

#include <iostream> --> significa flujo de entrada-salida estándar. Este archivo de encabezado contiene definiciones de objetos como cin, cout, cerr, etc.
#include <vector> --> es una clase genérica que permite almacenar una colección de objetos del mismo tipo.
#include <clocale> --> especificador de configuración regional.
using namespace std; --> un espacio de nombres es una colección de nombres o identificadores relacionados (funciones, clases, variables) que ayudan a separar estos identificadores de identificadores similares en otros espacios de nombres o en el espacio de nombres global. Los identificadores de la biblioteca estándar de C++ se definen en un espacio de nombres llamado std.
int --> dato entero de 32 bits.
main() --> la función main() es el punto de entrada de cualquier programa C++. Es el punto en el que se inicia la ejecución del programa. Cuando se ejecuta un programa C++, el control de ejecución va directamente a la función main(). Cada programa C++ tiene una función main().
return 0; --> devolver 0 en la función principal significa que el programa se ejecutó correctamente.
setlocale(); --> sirve para configurar nuestro programa acorde a los parámetros locales de la computadora donde se ejecuta el programa, uno de estos parámetros es el idioma.
LC_CTYPE --> selecciona la categoría de clasificación de caracteres del entorno local.
setlocale(LC_CTYPE, "Spanish"); --> dentro de las comillas del segundo parámetro colocaremos la palabra "Spanish" para que así se utilicen los parámetros hispanos por defecto.
cout<<""; --> se utiliza para mostrar la salida al dispositivo de salida estándar, es decir, monitor.
cin>> --> se utiliza para aceptar la entrada del dispositivo de entrada estándar, es decir, el teclado.
for --> el ciclo for recorre un bloque de código varias veces.
if --> use if para especificar un bloque de código que se ejecutará, si una condición especificada es verdadera.
< --> el operador menor que ( < ) devuelve true si el operando izquierdo es menor que el operando derecho.
++ --> el operador de incremento ( ++ ) incrementa (suma uno a) su operando y devuelve un valor.
> --> el operador mayor que ( > ) devuelve true si el operando izquierdo es mayor que el operando derecho.
push_back() --> agrega un nuevo elemento al final del vector , después de su último elemento actual.

Explicación del Código:

Este programa permite ingresar las notas de varios alumnos utilizando un vector. Luego busca cuál es la nota más alta y muestra la posición donde se encuentra.

Código C++

#include <iostream>
#include <vector>
#include <clocale>

using namespace std;

int main()
{
    setlocale(LC_CTYPE, "Spanish");

    vector<int> notas;
    int nAlumnos;

    cout << "Ingrese cantidad de alumnos: ";
    cin >> nAlumnos;

    for (int i = 0; i < nAlumnos; i++)
    {
        int nota;

        cout << "Ingrese la nota " << i + 1 << ": ";  
        cin >> nota;

        notas.push_back(nota);
    }

    int mayorNota = notas[0];
    int posicion = 0;

    for (int i = 1; i < nAlumnos; i++)
    {
        if (notas[i] > mayorNota)
        {
            mayorNota = notas[i];
            posicion = i + 1;
        }
    }

    cout << "La mayor nota es: "
         << mayorNota
         << ", está en la posición: "
         << posicion;

    return 0;
}

Explicación de Cada Parte del Código

  • #include <iostream>
    Permite usar instrucciones de entrada y salida como cin y cout.
  • #include <vector>
    Permite utilizar vectores para almacenar varios datos.
  • #include <clocale>
    Configura el idioma español para mostrar correctamente los caracteres.
  • using namespace std;
    Evita escribir std:: antes de cada instrucción.
  • vector<int> notas;
    Crea un vector llamado notas donde se almacenarán las calificaciones.
  • int nAlumnos;
    Guarda la cantidad de alumnos.
  • cin >> nAlumnos;
    El usuario ingresa la cantidad de alumnos.
  • for (int i = 0; i < nAlumnos; i++)
    Recorre el ciclo según la cantidad de alumnos ingresados.
  • int nota;
    Variable temporal donde se guarda cada nota ingresada.
  • notas.push_back(nota);
    Inserta cada nota dentro del vector.
  • int mayorNota = notas[0];
    Inicialmente toma la primera nota como la mayor.
  • int posicion = 0;
    Guarda la posición donde se encuentra la mayor nota.
  • if (notas[i] > mayorNota)
    Verifica si existe una nota mayor que la actual.
  • mayorNota = notas[i];
    Actualiza la mayor nota encontrada.
  • posicion = i + 1;
    Guarda la posición de la mayor nota.
  • cout
    Muestra en pantalla la mayor nota y su posición.
  • return 0;
    Finaliza correctamente el programa.

Funcionamiento del Programa

El programa solicita la cantidad de alumnos y después pide ingresar las notas de cada uno. Luego recorre el vector para encontrar la nota más alta y finalmente muestra esa nota junto con la posición donde se encuentra.

No hay comentarios.:

Publicar un comentario

Mostrar los n primeros números de la siguiente serie: 1,4,9,16,25,36,... en C++

Código del ejercicio: Con ciclo while #include <iostream> using namespace std ; int main () {     int num = 1 , c = ...

Copyright ©2025 Ejercicios de programación. Todos los derechos reservados. ❤️