👤

Să se scrie un program care citeşte trei numere întregi şi afisează numerele în ordinea crescătoare a primei cifre.

Răspuns :

Răspuns:

import java.util.ArrayList;

import java.util.Comparator;

import java.util.List;

import java.util.Scanner;

public class Sort {

   private static final Scanner scanner = new Scanner(System.in);

   public static void main(String[] args) {

       List<Integer> numbers = new ArrayList<>();

       for (int i = 0;i < 3; i++) {

           System.out.print("Introduceti un numar: ");

           numbers.add(scanner.nextInt());

       }

       sortNumbers(numbers);

       System.out.println("Numerele sortate:");

       for (int val : numbers) {

           System.out.println(val);

       }

   }

   private static void sortNumbers(List<Integer> numbers) {

       numbers.sort(new Comparator<Integer>() {

           @Override

           public int compare(Integer o1, Integer o2) {

               return getFirstDigit(o1) - getFirstDigit(o2);

           }

       });

   }

   private static int getFirstDigit(int num) {

       while (num >= 9) {

           num /= 10;

       }

       return num;

   }

}

Explicație:

Vă mulțumim că ați ales să vizitați site-ul nostru dedicat Informatică. Sperăm că informațiile disponibile v-au fost utile. Dacă aveți întrebări sau aveți nevoie de asistență suplimentară, vă rugăm să ne contactați. Revenirea dumneavoastră ne va bucura, iar pentru acces rapid, nu uitați să ne salvați la favorite!


En Trainingsy: Alte intrebari