Dove ho sbagliato che non riesco a capire????

codice:
import java.util.*;
import java.math.*;

public class CicloEs19 {

   public static void main(String[] args) {
   
      /*Si hanno a disposizione tre premi identici da assegnare in un gruppo di dieci finalisti, ai quali
       * sono stati associati i numeri da 1 a 10. Scrivere un programma che scelga in modo casuale i numerici
       * dei tre finalisti che riceveranno un premio. si faccia attenzione a non sorteggiare lo stesso numero
       * più volte. per esempio, l'estrazione dei finalisti 3, 6, 2 sarebbe valida, ma quella di 3, 3, 11 no
       * perchè il finalista numero 3 compare due volte e inoltre 11 non è un numero valido per un finalista.
       * si può semplicemente utilizzare la seguente riga di codice per generare un numero casuale tra 1 a 10
       * 
       * int num = (int) (Math.random() * 10) + 1;
       * */
      
      /*È un po' "contorto". Si può fare in modo più semplice e lineare. Il primo (a) è banale, 
       * l'estrazione è diretta. Il secondo (b), fai un ciclo while finché il valore estratto è uguale ad a. 
       * Il terzo idem semplicemente che continui a ciclare se il valore estratto è uguale ad a O b.*/
      
      double num = 1 , a = 0, b = 0, c = 0;
      
      
      System.out.println("Si hanno a disposizione tre premi identici in un gruppo di 10 finalisti: ");
      System.out.println("Ogni finalista devono avere tre premi differenti.");
      
      
   /*   for(int i = 0; i <= 10; i++){
         num = (int) (Math.random() * 10) + 1;
         
            a = num;
         
         for(int y = 0; y < 10; y++){
            num = (int) (Math.random() * 10) + 1;
            
            b = num;
         }
         
         for(int z = 0; z < 10; z++){
            num = (int) (Math.random() * 10) + 1;
            c = num;
         }
         
      } */
      
      
      a =  (int) (Math.random() * 10) + 1;
      
      do{
         b = (int) (Math.random() * 10) + 1;
         c = (int) (Math.random() * 10) + 1;
         
      }while((!(a != b)) || (!(c != b))); // a deve essere maggiore di b

      System.out.println("A:" + a + " B:" + b + " C:" + c);

      
      }   
      
   }