Inesqs

Untitled

Oct 17th, 2019
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.75 KB | None | 0 0
  1. package Ficha5;
  2.  
  3. /**
  4.  * Breve descrição do código
  5.  *
  6.  * @sid 2005
  7.  * @aid 5.13
  8.  */
  9.  
  10. public class Ficha5_ex13 {
  11.  
  12.     public static void main(String[] args) {
  13.  
  14.         // begin_inputs
  15.         int num = 3495; // a solicitar ao utilizador, de 4 digitos
  16.         // end_inputs
  17.  
  18.         // Determinar os algarismos todos (vai ao método algarismoMaximo para perceber
  19.         // qual é o maior) para ser usado no ciclo for.
  20.         int unid1 = 0, unid2 = 0, unid3 = 0, unid4 = 0;
  21.         unid4 = num % 10;
  22.         unid3 = (num % 100 - unid4) / 10;
  23.         unid2 = (num % 1000 - unid3) / 100;
  24.         unid1 = num / 1000;
  25.  
  26.         // ns = nº de espaços
  27.         int ns = 0;
  28.         for (int i = 1; i <= algarismoMaximo(unid1, unid2, unid3, unid4); i++) { // vai de 1 a 9
  29.  
  30.             for (int j = 1; j <= 4; j++) {
  31.                 // nº de espaços para cada coluna
  32.                 if (j == 1)
  33.                     ns = algarismoMaximo(unid1, unid2, unid3, unid4) - unid1; // 9-3=6
  34.                 if (j == 2)
  35.                     ns = algarismoMaximo(unid1, unid2, unid3, unid4) - unid2; // =5
  36.                 if (j == 3)
  37.                     ns = algarismoMaximo(unid1, unid2, unid3, unid4) - unid3; // =0
  38.                 if (j == 4)
  39.                     ns = algarismoMaximo(unid1, unid2, unid3, unid4) - unid4; // =4
  40.  
  41.                 // impressao em cd linha
  42.                 if (i <= ns) {
  43.                     System.out.print(" ");
  44.                 } else if (i > ns) {
  45.                     System.out.print("*");
  46.                 }
  47.  
  48.             }
  49.             System.out.println();
  50.         }
  51.     }
  52.  
  53.     /**
  54.      *
  55.      * @param x
  56.      * @return o algarismo maximo dos 4 digitos fornecidos.
  57.      */
  58.     private static int algarismoMaximo(int x1, int x2, int x3, int x4) {
  59.         // int x1 = 0, x2 = 0, x3 = 0, x4 = 0;
  60.  
  61.         /*
  62.          * unid4 = x % 10; unid3 = (x % 100 - unid4) / 10; unid2 = (x % 1000 - unid3) /
  63.          * 100; unid1 = x / 1000;
  64.          */
  65.  
  66.         int max1 = Math.max(x1, x2);
  67.         int max2 = Math.max(x3, x4);
  68.         int maximo = Math.max(max1, max2);
  69.  
  70.         return maximo;
  71.  
  72.     }
  73.  
  74. }
Advertisement
Add Comment
Please, Sign In to add comment