Ver Mensaje Individual
  #9 (permalink)  
Antiguo 17/06/2014, 06:39
dehm
 
Fecha de Ingreso: septiembre-2010
Mensajes: 494
Antigüedad: 14 años, 1 mes
Puntos: 10
Respuesta: Atascado con ejercicio.

Hola:

La sintaxis sería así:
Código C++:
Ver original
  1. if(!(numero[i]<= 9))

Es decir, evalúa si numero[i]<=9 primero, y luego lo contrario a eso.
Pero claro, mejor:
Código C++:
Ver original
  1. if (numero[i]>9)
que es menos lioso

Pero igualmente me da que estás intentando usar la función para hacer una evaluación.

La cosa sería así:

Código C++:
Ver original
  1. includes
  2. prototipo de las funciones
  3. programa principal
  4. desarrollo de las funciones

Entonces el esqueleto de tu programa es:
Código C++:
Ver original
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. bool Incrementa (char[10]);
  5. int main()
  6. {
  7. secuencia para crear una cadena de 10 char (ya la tienes) (1)
  8. Hacer uso de la función:(2)
  9. if (Incrementa(nombrecadena)==false)
  10. (lo que sea....por ejemplo, cout<<"no puedo incrementar esa cadena")
  11. else //si es true
  12. (lo que sea, por ejemplo, cout<<"la cadena incrementada es: "<<nombrecadena)
  13.  
  14. return 0;
  15. }
  16.  
  17. bool Incrementa(char cadena[10])
  18. {
  19. comprobar si TODOS los elementos de la cadena son numeros.
  20. si no lo son, retornar false y salir(3)
  21.  
  22. Si todos los elementos son número, proceder al incremento de la cadena
  23. retornar true(4)
  24. }

Bueno, los puntos (1) y (2) ya los tienes, y el programa principal no debe tener más que eso.
Ahora deberías desarrollar el punto (3).
La forma sería hacer un bucle que recorra cada elemento de la cadena
Si se encuentra con un elemento que no es número, simplemente retornar false. Así acabará la función y devolverá false al programa principal, que actuará en consecuencia (imprimirá el mensaje de error o la cadena incrementada)

Entonces, ¿cómo ver si el caracter es número o no?
Una forma sencilla es saber que los caracteres ASCII correspondientes a los símbolos numéricos van desde el 48 hasta el 57, así que cualquier cadena[i] cuyo valor sea menor que 48 o mayor que 57 no es número.
Saludos!