Come invertire un numero in C

March 27

Come invertire un numero in C


L'algoritmo per invertire un numero comprende la rimozione dello destra cifra del numero e posizionandolo in una nuova variabile. Come si striscia ciascuna cifra del numero originale, spostare il valore della nuova variabile su una posizione e aggiungere la nuova cifra. In C, la procedura per determinare la cifra all'estrema destra prevede l'utilizzo del operatore modulo,%. L'operatore modulo dà il resto di una divisione. Per esempio, 462% 10 è 2 dal 462 diviso 10 è 46 con un resto di 2.

istruzione

1 Creare l'inizio della vostra funzione principale per eseguire l'inversione. Includere il file di intestazione per la libreria standard input e output in modo da poter stampare i risultati.

includere <stdio.h>

int main ()

{

2 Dichiarare una variabile per il numero che si desidera invertire così come una variabile per il numero invertito. Decidere come si determinerà il valore di invertire, o chiedendo all'utente o inizializzare la variabile. Per il nostro esempio, si inizializzare la variabile.

int originale = 4051, invertito = 0;

3 Stampa il numero originale corrente in modo da poter verificare l'inversione alla fine del programma.

printf ( "Il numero originale è% d \ n", originale);

4 Creare un ciclo while per scorrere tutte le possibili cifre del numero. Dal momento che si metterà a nudo una cifra del numero originale ogni volta attraverso il ciclo, si fermerà una volta che la variabile "originale" è pari a zero. Si potrebbe usare un po '(originale! = 0) come la pena condizione del ciclo, però, perché qualsiasi valore diverso da zero viene considerato vero in C, il vostro ciclo while può essere semplicemente mentre (originale).

mentre (originale)

{

5 Determinare la destra cifra di "original" prendendo "originale" variabile% 10. Ogni iterazione del ciclo, spostare il valore corrente della "invertito" variabile su una posizione moltiplicando per 10 e quindi aggiungere la cifra più a destra "original ".

reversed = reversed*10 + original % 10;

6 Striscia la cifra più a destra dalla variabile "originale" dal momento che appena trasformati IT. Approfittate della divisione intera in C e dividere "originale" di 10. Questo elimina la cifra più a destra e si prepara "originale" per la prossima volta attraverso il ciclo. Chiudere il ciclo while.

original = original / 10;

}

7 Stampa il numero invertito e terminare il programma.

printf ( "Il numero invertito è% d \ n", invertito);

return 0;

}

Consigli e avvertenze

  • Se si preferisce chiedere all'utente per un certo numero di invertire, è possibile utilizzare una routine di input, come scanf. Tuttavia, controllare il valore restituito da scanf per essere sicuri che l'utente ha inserito un numero valido prima di elaborarlo. Inoltre, cambiare il tipo di variabile da un int ad un lungo per ospitare grandi valori inseriti dal vostro utente.