Introducción
En este laboratorio, escribiremos un programa en C++ que encuentre la fila en una matriz que contiene la mayor cantidad de números pares. Utilizaremos una matriz bidimensional.
Declarar las variables necesarias
Creamos un nuevo archivo llamado main.cpp en el directorio ~/project con el siguiente comando:
touch ~/project/main.cpp
Comenzaremos declarando las variables necesarias, que incluyen a, n, l, i, j y count.
int a[10][10], n, l, i, j, count = 0;
Obtener el tamaño de la matriz y el número de fila
A continuación, obtendremos el tamaño de la matriz y el número de fila del usuario. Utilizaremos la función cin para obtener los valores de entrada del usuario.
cout << "Enter matrix size(l * l): ";
cin >> l;
cout << "Enter row number of matrix: ";
cin >> n;
Verificar la validez de la entrada del usuario
Comprobaremos la validez de la entrada del usuario comprobando si n está dentro de los límites del tamaño de la matriz. Si no lo está, mostraremos un mensaje de error y saldremos del programa.
if (n < 0 || n > l) {
cout << "Error: Row exceeds matrix size. Please enter a value > 0 and less than or equal to the size of matrix." << endl;
exit(0);
}
Obtener los valores de la matriz
Utilizaremos bucles for anidados para obtener los valores de la matriz del usuario.
cout << "Enter the matrix values: " << endl;
for (i = 1; i <= l; i++) {
for (j = 1; j <= l; j++) {
cin >> a[i][j];
}
}
Encontrar la fila con la mayor cantidad de números pares
Utilizaremos un bucle for para iterar a través de la fila y contar la cantidad de números pares. Si el número actual es par, incrementaremos la variable count.
for (i = 1; i <= l; i++) {
if (a[n][i] % 2 == 0) {
count++;
}
}
Salida de resultados
Mostraremos los valores de la fila y la cantidad de números pares en esa fila.
cout << "\nRow is given below:\n";
for (i = 1; i <= l; i++) {
cout << a[n][i] << " ";
}
cout << "\n\nNo. of even numbers in row is: " << count << endl;
Compilar y ejecutar el programa
Compilaremos el programa utilizando el compilador g++ y lo ejecutaremos en la terminal.
$ g++ main.cpp -o main
$./main
Código completo
#include<iostream>
using namespace std;
int main() {
int a[10][10], n, l, i, j, count = 0;
cout << "Enter matrix size(l * l): ";
cin >> l;
cout << "Enter row number of matrix: ";
cin >> n;
if (n < 0 || n > l) {
cout << "Error: Row exceeds matrix size. Please enter a value > 0 and less than or equal to the size of matrix." << endl;
exit(0);
}
cout << "Enter the matrix values: " << endl;
for (i = 1; i <= l; i++) {
for (j = 1; j <= l; j++) {
cin >> a[i][j];
}
}
for (i = 1; i <= l; i++) {
if (a[n][i] % 2 == 0) {
count++;
}
}
cout << "\nRow is given below:\n";
for (i = 1; i <= l; i++) {
cout << a[n][i] << " ";
}
cout << "\n\nNo. of even numbers in row is: " << count << endl;
return 0;
}
Resumen
En este laboratorio, aprendimos cómo implementar un programa en C++ para encontrar la fila en una matriz bidimensional que contiene la mayor cantidad de números pares. Lo logramos creando un conjunto de variables y usando bucles para iterar a través de la matriz. Utilizamos instrucciones condicionales para mostrar los resultados del programa.



