Red de conocimiento informático - Aprendizaje de código fuente - Programación entera

Programación entera

1. Análisis del problema:

Para generar números enteros bit a bit, ya sea en orden directo o inverso, es necesario separar cada bit.

El método en C es tomar el resto de 10, sacar un dígito y luego dividirlo por 10 para lograr el efecto de "desplazamiento".

2. Diseño del algoritmo:

1. Ingrese el número entero a procesar

2. Llamada recursiva, con el valor actual dividido por 10 como parámetro;

4.

La salida de orden directo e inverso depende de la relación posicional entre la llamada recursiva y la salida.

3. Código de referencia:

Secuencia de avance:

¿#Contiene? ltstdio.h gt

¿No es válido? func(int?n)

{

int? Cinco;

si(n==0)? Retorno; //Fin de 0.

v = n 10; //Obtén el bit.

func(n/10); //Llamada recursiva

printf("d?",?五); //Salida.

}

int? principal()

{

int? n;

scanf("d", ampn); //Entrada.

func(n); //Llama a la función para generar todos los bits en orden positivo.

¿Volver? 0;

}Orden inverso:

#Contiene? ltstdio.h gt

¿No es válido? func(int?n)

{

int? Cinco;

si(n==0)? Retorno; //Fin de 0.

v = n 10; //Obtén el bit.

printf("d?",?五); //Salida.

func(n/10); //Llamada recursiva

}

int? principal()

{

int? n;

scanf("d", ampn); //Entrada.

func(n); //Llama a la función para generar todos los bits en orden positivo.

¿Volver? 0;

}