Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package corso.java;
- public class Progam {
- // traduzione in lettere di un numero.
- static void translate(int number) {
- int pow = 0;
- while (number > 19) {
- // se è minore di 100
- if (number < 100) {
- pow = 10;
- trans100(number);
- }
- // se è minore di 1000
- else if (number < 1000) {
- pow = 100;
- trans1000(number);
- }
- // se è minore di 10000
- else if (number < 10000) {
- pow = 1000;
- trans10000(number);
- } // altrimenti stampo in cifre...
- else {
- System.out.println(number);
- number = 0;
- }
- // 250 => 250 / 10 = 20 * 10 = 200 => 250 - 200 = 50
- number -= (number / pow) * pow;
- }
- // se è minore di 20
- if (number < 20) {
- trans20(number);
- }
- System.out.println();
- }
- private static void trans10000(int n) {
- int m = n / 1000;
- if (m == 1)
- System.out.print("mille");
- else {
- trans20(m);
- System.out.print("mila");
- }
- }
- private static void trans1000(int n) {
- int c = n / 100;
- if (c > 1)
- trans20(c);
- System.out.print("cento");
- }
- private static void trans100(int n) {
- String[] numeri = { "venti", "trenta", "quaranta", "cinquanta", "sessanta", "settanta", "ottanta", "novanta" };
- System.out.print(numeri[n / 10 - 2]);
- }
- private static void trans20(int n) {
- String[] numeri = { "uno", "due", "tre", "quattro", "cinque", "sei", "sette", "otto", "nove", "dieci", "undici",
- "dodici", "tredici", "quattordici", "qundici", "sedici", "diciassette", "diciotto", "diciannove" };
- System.out.print(numeri[n - 1]);
- }
- public static void main(String[] args) {
- translate(5);
- translate(15);
- translate(31);
- translate(105);
- translate(999);
- translate(1005);
- translate(1999);
- translate(1234);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement