Advertisement
FacuValverdi

EdD-TP01-PTO1

Sep 7th, 2022 (edited)
1,156
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 6.52 KB | None | 0 0
  1. import java.util.Scanner;
  2. import java.util.ArrayList;
  3. import java.util.Random;
  4. public class eje1 {
  5.    
  6.     public static int menu() {
  7.        
  8.         Scanner op = new Scanner(System.in);
  9.         System.out.println("---CARGA DE ARRAYS---");
  10.         System.out.println("1-Ingresar Numeros Manualmente");
  11.         System.out.println("2-Ingresar Numeros Aleatorios");
  12.         System.out.println("3-Salir.");
  13.         System.out.println("--------------------");
  14.         System.out.println("Por favor elija una opcion");
  15.  
  16.     return op.nextInt();
  17. }
  18.    
  19.       public static boolean esDeficiente(int numero){
  20.             int suma=0;
  21.             for(int i=1;i<=numero/2;i++) {
  22.                 if((numero%i)==0) {
  23.                     suma=suma+i;
  24.                 }  
  25.             }
  26.             if(suma<numero) {
  27.                 return true;
  28.             }else {
  29.                 return false;
  30.             }
  31.         }
  32.        public static boolean esPrimo(int numero) {
  33.             int aux=0;
  34.             for(int i=1;i<=numero/2;i++) {
  35.                 if((numero%i)==0) {
  36.                     aux+=1;
  37.                 }
  38.             }
  39.             if(aux>1) {
  40.                 return false;
  41.             }else {
  42.                 return true;
  43.             }  
  44.         }
  45.       public static void cargarArreglo1(int[] numeros, int tamanio) {
  46.         int elem1;
  47.         Scanner sc= new Scanner(System.in);
  48.           System.out.println("Cargue el 1er Array[A]: ");
  49.             for(int i=0;i<tamanio;i++) {   
  50.                 do {
  51.                     System.out.println("Elemento "+i+" del arreglo: ");
  52.                     elem1= sc.nextInt();
  53.                 }while(!esDeficiente(elem1));
  54.                 numeros[i]=elem1;
  55.             }
  56.          
  57.       }
  58.       public static void cargarArregloAleatorio1(int[] numeros, int tamanio, int min, int max) {
  59.             int elem1;
  60.               Random r = new Random();
  61.               System.out.println("Carga  del 1er Array[A]: ");
  62.                 for(int i=0;i<tamanio;i++) {   
  63.                     do {
  64.                        
  65.                         elem1= r.nextInt((max-min)+1)+min; ;
  66.                         System.out.println("Elemento "+i+" del arreglo: "+ elem1);
  67.                     }while(!esDeficiente(elem1));
  68.                     numeros[i]=elem1;
  69.                 }
  70.              
  71.           }
  72.       public static void cargarArreglo2(int[] numeros, int tamanio) {
  73.             int elem1;
  74.             Scanner sc= new Scanner(System.in);
  75.               System.out.println("Cargue el 2do Array[B]: ");
  76.                 for(int i=0;i<tamanio;i++) {   
  77.                     do {
  78.                         System.out.println("Elemento "+i+" del arreglo: ");
  79.                         elem1= sc.nextInt();
  80.                     }while(esPrimo(elem1));
  81.                     numeros[i]=elem1;
  82.                 }
  83.              
  84.           }
  85.       public static void cargarArregloAleatorio2(int[] numeros, int tamanio, int min, int max) {
  86.             int elem1;
  87.               Random r = new Random();
  88.               System.out.println("Carga  del 2do Array[B]: ");
  89.                 for(int i=0;i<tamanio;i++) {   
  90.                     do {
  91.                        
  92.                         elem1= r.nextInt((max-min)+1)+min;
  93.                         System.out.println("Elemento "+i+" del arreglo: "+ elem1);
  94.                     }while(esPrimo(elem1));
  95.                     numeros[i]=elem1;
  96.                 }
  97.              
  98.           }
  99.       public static void diferencia(int[] numeros1, int [] numeros2, int[] numeros3) {
  100.             for(int i=0;i<numeros1.length;i++) {   
  101.                 numeros3[i]=Math.abs(numeros1[i]-numeros2[i]); 
  102.             }
  103.       }
  104.       public static int promedioArray(int[] numeros1){
  105.           int prom=0;
  106.           for(int i=0;i<numeros1.length;i++) { 
  107.                 prom+=numeros1[i]; 
  108.             }
  109.           return prom/numeros1.length;
  110.       }
  111.       public static ArrayList<Integer> mayoresA(int[] numeros1,int valor){
  112.             ArrayList <Integer> numeros= new ArrayList <Integer>();
  113.             for(int i=0;i<numeros1.length;i++) {   
  114.                 if(numeros1[i]>valor) {
  115.                     numeros.add(numeros1[i]);
  116.                 }
  117.             }
  118.             return numeros;
  119.       }
  120.       public static ArrayList<Integer> menoresA(int[] numeros1,int valor){
  121.             ArrayList <Integer> numeros= new ArrayList <Integer>();
  122.             for(int i=0;i<numeros1.length;i++) {   
  123.                 if(numeros1[i]<valor) {
  124.                     numeros.add(numeros1[i]);
  125.                 }
  126.             }
  127.             return numeros;
  128.       }
  129.      
  130.      
  131.       public static void op1() {
  132.             int tamanio;
  133.             int elem1;
  134.             Scanner sc= new Scanner(System.in);
  135.             System.out.println("---CARGA DE ARRAYS------");
  136.             System.out.println("Indique el tamaño de los arrays: ");
  137.             tamanio= sc.nextInt();
  138.             int numeros1[]= new int[tamanio];
  139.             int numeros2[]= new int[tamanio];
  140.             int diferencia[]= new int[tamanio];
  141.             cargarArreglo1(numeros1,tamanio);
  142.             cargarArreglo2(numeros2,tamanio);
  143.             diferencia(numeros1,numeros2,diferencia);
  144.             int media=promedioArray(diferencia);
  145.             /* PARA COMPROBAR EL LLENADO DE ARRAYS
  146.             for(int i=0;i<tamanio;i++) {   
  147.                     System.out.println(diferencia[i]);
  148.  
  149.             }
  150.             */
  151.             System.out.println("La media del vector diferencia es:"+media);
  152.             System.out.println("Los valores mayores a la media :"+mayoresA(numeros1,media));
  153.             System.out.println("Los valores menores a la media :"+menoresA(numeros2,media));
  154.        
  155.       }
  156.       public static void op2() {
  157.             int num;
  158.             int tamanio;
  159.             int numAleatorio1;
  160.             int numAleatorio2;
  161.             int contador=0;
  162.             Scanner numOb = new Scanner(System.in);
  163.             Random r = new Random();
  164.             System.out.println("---ARRAYS CON NUMEROS ALEATORIOS---");
  165.             System.out.println("Indique el tamaño de los arrays: ");
  166.             tamanio= numOb.nextInt();
  167.             System.out.println("-Ingrese los rangos para generar dichos numeros aleatorios[min,max] : ");
  168.             System.out.println("--------------------");
  169.             System.out.println("-Valor Min: ");
  170.             int min=numOb.nextInt();
  171.             System.out.println("-Valor Max: ");
  172.             int max=numOb.nextInt();
  173.             System.out.println("---------------------------");
  174.            
  175.             int numeros1[]= new int[tamanio];
  176.             int numeros2[]= new int[tamanio];
  177.             int diferencia[]= new int[tamanio];
  178.             cargarArregloAleatorio1(numeros1,tamanio,min,max);
  179.             cargarArregloAleatorio2(numeros2,tamanio,min,max);
  180.             diferencia(numeros1,numeros2,diferencia);
  181.             int media=promedioArray(diferencia);
  182.             System.out.println("La media del vector diferencia es:"+media);
  183.             System.out.println("Los valores mayores a la media :"+mayoresA(numeros1,media));
  184.             System.out.println("Los valores menores a la media :"+menoresA(numeros2,media));
  185.            
  186.         }
  187.     public static void main(String[] args) {
  188.         // TODO Auto-generated method stub
  189.        
  190.         int opcion;
  191.        
  192.         do{
  193.             opcion =menu();
  194.             switch(opcion) {
  195.             case 1:
  196.                 op1();
  197.                
  198.                 break;
  199.             case 2:
  200.                 op2();
  201.                 break;
  202.             case 3:    
  203.                 System.out.println("Hasta luego...");
  204.                 break;
  205.             default:
  206.                 System.out.println("Opcion Invalida!!");
  207.             }
  208.         }while(opcion!=3);
  209.     }
  210. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement