[ Foro de C++ ]
Por que el siguiente codigo me tira mal el resultado?
No me aparecen errorres de compilacion...
#include <iostream>
using namespace std;
int main() {
int v[10], b[10], i, smallv, smallb, bigv, bigb;
for (i=0; i<10; i++) {
cin >> v[i];
cin >> b[i];
cout << "v" <<v[i] << endl;
cout << "b" <<b[i] << endl;
}
smallv = v[0];
bigv = v[0];
smallb = b[0];
bigb = b [0];
for(i=0; i<10; i++) {
if (smallv > v[i]) {
smallv = v[i];
}
if (smallb > b[i]) {
smallb = b[i];
}
if (bigv < v[i]) {
bigv = v[i];
}
if (bigb < v[i]) {
bigb = b[i];
}
}
cout << "los menores numeros son: " << smallv << " y " << smallb << endl;
cout << "los mayores numeros son: " << bigv << " y " << bigb << endl;
if (smallv < smallb) {
cout << "el menor numero es " << smallv << endl;
}
else {
cout << "el menor es " << smallb << endl;
}
if (bigb < bigv) {
cout << "el mayor numero es " << bigv << endl; }
else {
cout << "el mayor es " << bigb << endl;
}
return 0;
}
Qué datos de prueba pones y qué resultado te da con ellos?
Pongo numeros aleatorios.
Pero el mayor no aparece como tal.
Infelizmente desde el celular no puedo pegar el resultado aca.
Puse numeros aleatorios.
En particular note que sale mal el mayor del segundo vector por ejemplo.
Infelizmente no puedo poner una foto aca.
Pero ingrese, por ejemplo, 4230 y 52780 en el vector "b" y muestra como resultado siendo mayor el primero.
A ojo, yo diría que sólo falla en un caso: el máximo del array b, porque esta condición es incorrecta:
if (bigb < v[i]) {
bigb = b[i];
}
Que torpeza la mía. Muchisimas gracias.
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)