Título: Escriba una función que dado un número entero positivo n produzca el número invertido
Fecha: 08-05-2023 20:27
¡Hola! ¿Alguien me podría ayudar a escribir una función en lenguaje C que, dado un número entero positivo n, genere su número invertido? ¡Gracias!
Respuesta de ALEGSA.com.ar:
Para invertir un número entero positivo en C, puedes hacer lo siguiente:
```c
#include <stdio.h>
int invertir_numero(int n) {
int invertido = 0;
while (n > 0) {
invertido = (invertido * 10) + (n % 10);
n = n / 10;
}
return invertido;
}
int main() {
int num = 123456;
int num_invertido = invertir_numero(num);
printf("El número invertido de %d es: %d", num, num_invertido);
return 0;
}
```
La función `invertir_numero` recibe como parámetro un número entero `n` y devuelve su valor invertido. Dentro de la función, se inicializa una variable `invertido` en 0. Luego, se utiliza un bucle `while` para ir extrayendo el último dígito del número original y agregándolo al número invertido. El proceso se repite hasta que el número original se convierte en 0. Finalmente, se devuelve el número invertido.
En el `main` se utiliza la función `invertir_numero` para invertir el número 123456 y se imprime el resultado por pantalla. Si quieres invertir otro número, simplemente cambia el valor de la variable `num`.
Preguntas relacionadas para el Asistente IA:
1 - ¿Qué hace la función `invertir_numero` en el ejemplo de semántica en lenguaje C?
2 - ¿Cómo se define la variable `invertido` dentro de la función `invertir_numero`?
3 - ¿Qué tipo de dato devuelve la función `invertir_numero`?
Compartir nota