Programa en c++

Cerrado
taziny Mensajes enviados 46 Fecha de inscripción miércoles, 12 de marzo de 2008 Estatus Miembro Última intervención martes, 23 de diciembre de 2008 - 6 nov 2008 a las 16:27
 Avalanch - 9 nov 2008 a las 00:27
Hola, tengo un examen en c++ en el que uno de los ejercicios no sé como hacerlo porque el profesor no nos permite usar los vectores ni declarar una funcion antes del main solo lo siguiente:

bibliotecas: iostream, cctype, cmath, string
tipos de datos: int, double, long, bool, char, string, enum
estructuras condicionales: if else, while, do while, for.


aki esta el ejercicio: por favor ayudenme:

[ondulado] Diremos que un entero positivo es ondulado si sus dígitos se
van repitiendo en la forma ababab.... Solo hay dos dıgitos (a y b) que
se repiten. Casos especiales:

Todos los enteros menores estrictos que 100 son ondulados.
Los enteros de la forma ababa son ondulados. Es decir, lo importante
es que se vayan alternando los dos dıgitos.

Ejemplos:
Ejemplos de numeros ondulados: 2, 82, 737, 1010, 10101, 222, 5555
Ejemplos de numeros no ondulados: 1987, 827, 827827, 1001, 955

Se pide lo siguiente:
Leer un valor entero n que representara el valor que queremos comprobar
si es ondulado o no.

El programa mostrara alguna de las siguientes salidas, dependiendo de
si es o no es ondulado:

Entrada: 1010
Salida: RESULTADO = SI
Entrada: 827
Salida: RESULTADO = NO
Consulta también:

1 respuesta

Bueno taziny supongo que sera para el examen de la ugr, jeje. Tras estar 2 horas llegue a una solucion. Te doy una pista mas que una resolucion del ejercicio ya que como tu has dicho es un examen xD.

Por ejemplo

1234 si quieres sacar el 4 para comparar si es igual que el 2, tienes que restarle a 1234, 1230, simplemente declara un entero y 1234 si lo divides entre 10 primero daria 123 ya que como e dixo es un entero, y luego vuelve a multiplicarlo por 10 y te dara 1230.

int i = 1234 - ((1234/10)*10)

i=4


Espero que te haya servido de ayuda.
0