Una serie de números será creciente si y sólo si el número presente es mayor al anterior:
N1 < N2 < ... < Nn
Para poder comprobar eso, deberás guardar el número anterior y el presente, la comparación será:
if (anterior < actual) {
// seguir pidiendo números
}
else
std::cout << "La serie no es ascendente\n";
Propuesta.
Tu código podría parecerse a:
#include <iostream>
#include <limits>
int main() {
int numeros, anterior = std::mumeric_limits<int>::min(), actual;
// Primero ingreso el numero de datos que voy a introducir
std::cin >> numeros;
// Posteriormente creo mi ciclo de acuerdo a 'numeros'
for (int i = 0; i < numeros; ++i) {
std::cout << "Introduce el numero " << (i + 1) << ": ";
std::cin >> actual;
if (anterior > actual) {
std::cout << "La serie no es ascendente\n";
break;
}
anterior = actual;
}
return 0;
}
El valor obtenido mediante std::numeric_limits<int>::min
es el mínimo valor almacenable en una variable de tipo int
, usando eso como valor inicial de anterior
te garantiza que en el primer ciclo anterior < actual
se va a cumplir siempre (excepto si actual
ya es el mínimo valor almacenable en una variable de tipo int
).
Cosas a tener en cuenta.
- Nombres auto-explicativos: En los años 80 y 90, teníamos que programar en pantallas de 80 caracteres de ancho y 25 líneas de alto, hacer que el código fuese escueto, conciso y apelotonado era una necesidad. Esos tiempos han quedado (por fortuna) atrás, así que evita las variables de un sólo carácter, los acrónimos y las abreviaturas.
- No abuses de
using namespace std
: Lee este hilo para saber más al respecto.
- Intenta no abusar de
std::endl
: Lee este hilo para saber más al respecto.