Código del ejercicio:
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 <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.
float --> convierte un número entero en un número de punto flotante, tiene un tamaño de 32 bits, es usado comúnmente en números con 6 o menos cifras decimales.
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.
endl --> la función endl acaba la línea y pasa a la siguiente.
== --> el operador de igualdad ( == ) regresa true si sus operandos son iguales, false en caso contrario.
\t --> significa que hay un espacio (equivale a presionar "tab" en el teclado).
Explicación del Código:
Este programa permite leer una matriz cuadrada, mostrarla en pantalla, guardar los elementos de la diagonal principal y secundaria en dos vectores, sumar esos valores y generar un vector resultado.
¿Qué hace el programa?
- El usuario ingresa el tamaño de la matriz.
- Se ingresan todos los valores de la matriz.
- El programa imprime la matriz.
- Obtiene la diagonal principal.
- Obtiene la diagonal secundaria.
- Suma ambas diagonales.
- Muestra el vector resultante.
Explicación simple del código
| Código | Función |
|---|---|
| #include <iostream> | Permite utilizar cin y cout para entrada y salida de datos. |
| #include <clocale> | Permite usar caracteres especiales en español. |
| using namespace std; | Evita escribir std:: antes de cada instrucción. |
| int n; | Guarda el tamaño de la matriz cuadrada. |
| float M[n][n] | Declara la matriz cuadrada. |
| float D1[n] | Vector que almacena la diagonal principal. |
| float D2[n] | Vector que almacena la diagonal secundaria. |
| float SUMA[n] | Vector que guarda la suma de ambas diagonales. |
| for | Se utiliza para repetir instrucciones. |
| if(i == j) | Detecta los elementos de la diagonal principal. |
| if(j == n - i - 1) | Detecta los elementos de la diagonal secundaria. |
| SUMA[i] = D1[i] + D2[i] | Suma los elementos de ambas diagonales. |
| return 0; | Finaliza correctamente el programa. |
Ejemplo de funcionamiento
Matriz: 1 2 3 4 5 6 7 8 9
Diagonal principal: 1 5 9
Diagonal secundaria: 3 5 7
Suma de diagonales: 4 10 16
Código del programa
#include <iostream>
#include <clocale>
using namespace std;
int main()
{
setlocale(LC_CTYPE, "Spanish");
int n;
cout << "Ingrese la dimensión de la matriz: ";
cin >> n;
float M[n][n], D1[n], D2[n], SUMA[n];
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
cout << "Ingrese valor [" << i << "][" << j << "]: ";
cin >> M[i][j];
}
}
cout << endl << "Matriz:" << endl;
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
if (i == j)
D1[i] = M[i][j];
if (j == n - i - 1)
D2[i] = M[i][j];
cout << M[i][j] << "\t";
}
cout << endl;
}
cout << endl << "Diagonal principal:" << endl;
for (int i = 0; i < n; i++)
cout << D1[i] << " ";
cout << endl << "Diagonal secundaria:" << endl;
for (int i = 0; i < n; i++)
cout << D2[i] << " ";
cout << endl << "La suma de las diagonales es:" << endl;
for (int i = 0; i < n; i++)
{
SUMA[i] = D1[i] + D2[i];
cout << SUMA[i] << " ";
}
return 0;
}
No hay comentarios.:
Publicar un comentario