La necessità di applicare l'operazione di calcolo del resto della divisione è evidente quando si lavora con le cifre di un numero.
Analizziamo il seguente task:
Viene fornito un numero di tre cifre. Visualizza tutte le cifre di questo numero e ottieni un nuovo numero formato permutando unità e centinaia
La domanda più difficile che si pone per i principianti è come prendere e ottenere le sue cifre da un numero.
In effetti, tutto è risolto in modo abbastanza semplice, se ricordi la matematica. E la matematica ci dice che qualsiasi numero può essere scomposto in una somma di cifre.
Ad esempio: 365=3*100+6*10+5*1
. Vediamo che ogni cifra è un moltiplicatore della cifra corrispondente del numero.
Mostreremo come ottenere ogni cifra di un numero in una variabile separata, usando l'esempio di dividere le colonne per il numero 10. (Prendiamo il numero 10, perché abbiamo un sistema di numeri decimali e, di conseguenza, abbiamo termini di cifre 1, 10, 100, ecc.)
Analizzando la figura, puoi vedere che
e = n % 10; // operazione n % 10 - calcola l'ultima cifra del numero n (ovvero le unità del numero) 365 % 10 = 5
d = n / 10% 10; // operazione n / 10 - riduce il numero di 10 volte, ovvero scarta l'ultima cifra del numero (365 / 10 = 36),
// ora possiamo calcolare il numero delle decine applicando l'operazione familiare al risultato: calcola il resto della divisione per il numero 10, 36 % 10 = 6
s = n/100; // per ottenere le centinaia, è sufficiente scartare due cifre a destra del numero, ovvero dividere per 10 due volte (n / 10 /10 o uguale a n / 100 ) < strong>365 / 100 = 3
Avendo le cifre salvate del numero, possiamo ricavarne qualsiasi numero moltiplicando la cifra desiderata per la cifra corrispondente:
ad esempio, la riga sottostante otterrà un nuovo numero dal numero originale n, con le centinaia e le unità riorganizzate:
1) il vecchio numero di uno (memorizzato nella variabile
e) moltiplicato per
100
2) il vecchio numero di decine (memorizzato nella variabile
d) moltiplicato per
10
3) possiamo semplicemente moltiplicare il vecchio numero di centinaia per 1, o semplicemente prendere il valore memorizzato nella variabile
s
Quindi aggiungi semplicemente i valori dei punti 1, 2 e 3 e ottieni un nuovo numero:
n1 = e * 100 + d * 10 + s;
L'intero programma sarà simile a questo:
import java.util.Scanner;
classe pubblica Principale {
public static void main(String[] args) {
Scanner in = nuovo Scanner(System.in);
int n, e, d, s;
n = in.nextInt();
e = n % 10;
d = n / 10% 10;
s = n/100;
System.out.print(e + "" + d + "" + s + "" + (e * 100 + d * 10 + s));
}