Ayuda para realizar un programa en C++ de vectores
Publicado por Pedro (2 intervenciones) el 26/07/2020 21:21:53

Ponganc la capa porfi
Valora esta pregunta


-2
#include <iostream>
#include <cctype> // toupper
using namespace std;
void menu();
void leerVector(int v[], int sz);
void sumar(int A[], int B[], int sz);
void multiplicar(int A[], int B[], int sz);
void mayor(int A[], int B[], int sz);
void menor(int A[], int B[], int sz);
float promedio(int v[], int sz);
int main()
{
int sz;
float proA, proB;
char opcion;
cout << "\nTamanio de los vectores: ";
cin >> sz;
int a[sz], b[sz];
cout << "\nVector A: " << endl;
leerVector(a, sz);
cout << "\nVector B: " << endl;
leerVector(b, sz);
do {
menu();
cin >> opcion;
switch(opcion)
{
case '1':
cout << "\nLa suma de A + B es: ";
sumar(a, b, sz);
break;
case '2':
cout << "\nLa multiplicacion de A * B es: ";
multiplicar(a, b, sz);
break;
case '3':
mayor(a, b, sz);
menor(a, b, sz);
break;
case '4':
proA = promedio(a, sz);
proB = promedio(b, sz);
cout << "\nPromedio vector A: " << proA;
cout << "\nPromedio vector B: " << proB;
cout << "\nPromedio total: " << (proA + proB) / 2;
cout << "\n\nProgramado por XXX XXX" << endl;
cout << "\nFIN DEL PROGRAMA" << endl;
break;
default:
cout << "\nOPCION NO VALIDA" << endl;
break;
}
if (opcion == '4')
break;
cout << "\n\nOtra opcion (S/n): ";
cin >> opcion;
opcion = toupper(opcion);
if (opcion == 'N')
break;
} while(opcion != '4');
}
void menu()
{
cout << "\n MENU"
<< "\n==================="
<< "\n1.- Sumar"
<< "\n2.- Multiplicar"
<< "\n3.- Mayor y Menor"
<< "\n4.- Salir"
<< "\n==================="
<< "\nOPCION: ";
}
void leerVector(int v[], int sz)
{
for(int i = 0; i < sz; i++)
{
cout << i + 1 << ": ";
cin >> v[i];
}
}
void sumar(int A[], int B[], int sz)
{
for(int i = 0; i < sz; i++)
{
cout << A[i] + B[i] << " ";
}
}
void multiplicar(int A[], int B[], int sz)
{
for(int i = 0; i < sz; i++)
{
cout << A[i] * B[i] << " ";
}
}
void mayor(int A[], int B[], int sz)
{
int max;
char v = 'A';
for (int i = 0; i < sz; i++)
{
if (i == 0 || A[i] > max)
{
max = A[i];
}
}
for (int i = 0; i < sz; i++)
{
if (B[i] > max)
{
max = B[i];
v = 'B';
}
}
cout << "\nEl valor maximo es " << max << " del vector " << v << endl;
}
void menor(int A[], int B[], int sz)
{
int min;
char v = 'A';
for (int i = 0; i < sz; i++)
{
if (i == 0 || A[i] < min)
{
min = A[i];
}
}
for (int i = 0; i < sz; i++)
{
if (B[i] < min)
{
min = B[i];
v = 'B';
}
}
cout << "\nEl valor minimo es " << min << " del vector " << v << endl;
}
float promedio(int v[], int sz)
{
int total = 0;
for (int i = 0; i < sz; i++)
total += v[i];
return float(total) / float(sz);
}