angeles734

tp1

Sep 15th, 2021
466
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package TP1;
  2.  
  3. import java.text.DecimalFormat;
  4. import java.util.Random;
  5. import java.util.Scanner;
  6.  
  7. public class ejer1test {
  8.         public static void main(String[] args) {// Este es el Mein n.n
  9.             int opc;
  10.             int Divisores[];
  11.             Divisores=new int[10];
  12.             int Primos[];
  13.             Primos=new int[10];
  14.             int Sumatoria[];
  15.             Sumatoria=new int[10];
  16.             int a;    
  17.             a=0;          
  18.             // Comienza la ejecucion de funciones y procedimientos  
  19.              System.out.println("Desea ingresar numero por consola [1] o Generar numeros aleatorios[2]");
  20.              while(true) {
  21.                  while(true){
  22.                         opc = obten_int();  
  23.                         if ( Malopc(opc)==false) break;
  24.                             }
  25.                  switch(opc) {
  26.                     case 2:AsignacionRandomP(Primos,a);
  27.                            AsignacionRandomD(Divisores,a);
  28.                            Suma(Primos,Divisores,Sumatoria);
  29.                            media(Divisores);
  30.                            media(Sumatoria);
  31.                            media(Primos);
  32.                            menorymayor(Sumatoria,Primos,Divisores);
  33.                         break;
  34.                     case 1: CargarVector(Primos,a);
  35.                             Cargardivisores(Divisores,a);
  36.                             Suma(Primos,Divisores,Sumatoria);
  37.                             media(Divisores);
  38.                             media(Sumatoria);
  39.                             media(Primos);
  40.                             menorymayor(Sumatoria,Primos,Divisores);
  41.                         break;
  42.                     default:
  43.                     }
  44.                  break;
  45.                  }          
  46. }      
  47.         static boolean Malopc(int opc) {// Valida que Opc Sea 1 o 2
  48.             boolean mal=false;
  49.             if(opc != 1 && opc != 2 )
  50.             {
  51.                 System.out.println("Ingrese 1 o 2");
  52.                 mal = true;
  53.             }
  54.             return mal;        
  55.         }
  56.         static int obten_int() {    //Valida que se ingrese un Entero        
  57.         @SuppressWarnings("resource")
  58.         Scanner scan = new Scanner(System.in);
  59.         do {
  60.             if (scan.hasNext()) {
  61.                 if (scan.hasNextInt()) {
  62.                     return scan.nextInt();
  63.                 } else {
  64.                     scan.next();
  65.                     System.out.print("No ha introducido un número valiado");
  66.                 }
  67.             } else {
  68.                 System.out.println("Recibido EOF (forzamos 0)");
  69.         return 0;
  70.             }
  71.         } while (true);      
  72.             }                                      
  73.         static double media (int x[]) {// Esta Piola
  74.             int i;
  75.             double h;
  76.             h=0;
  77.             for(i=0; i<x.length;i++) {
  78.                 h= h+ x[i];
  79.         }
  80.             h=h/x.length;
  81.             return h;
  82.         }
  83.         static void menorymayor(int x[],int y[],int z[]) {//Muestra Promedios de los Vectores ya Cargados
  84.             int i;
  85.             DecimalFormat df = new DecimalFormat("#0.00");
  86.             System.out.println("         Promedios     ");
  87.             System.out.println("Promedio del vector Primos  =  "+df.format(media(y)) );
  88.             System.out.println("Promedio del vector Divisores  =  "+df.format(media(z)) );
  89.             System.out.println("Promedio del vector Sumatoria  =  "+df.format(media(x)) );      
  90.             for(i=0;i<x.length;i++) {
  91.                 if( media(z)<x[i]) {                
  92.                         System.out.println("Numero Mayor al Promedio del vector Divisores  "+x[i]);
  93.                 }          
  94.                 if (x[i]<media(y)) {
  95.                     System.out.println("Numero Menor al Promedio del vector Primos  "+x[i]);                
  96.                 }                
  97.             }      
  98.         }
  99.         static void AsignacionRandomD (int x[],int a) {//Genera numeros random divisores de 1000
  100.             int i;
  101.             Random random=new Random();
  102.             System.out.println("      Vector de Divisores ");
  103.             for(i=0;i<x.length;i++) {          
  104.                 do{
  105.                     a=random.nextInt(1000)+1;
  106.                 }while (1000%a==0) ;
  107.                 x[i]=a;
  108.                 System.out.println("Numero Generado "+x[i]+"   en la posicion  "+i);
  109.             }
  110.         }
  111.         static void AsignacionRandomP (int x[],int a) {//Genera Numeros random Primos
  112.             int i;
  113.             Random random=new Random();
  114.             System.out.println("     Vector De Numeros Primos");
  115.             for(i=0;i<x.length;i++) {
  116.                
  117.                 do{
  118.                     a=random.nextInt(1000)+1;
  119.                 }while (Primo(a)==0);
  120.                 x[i]=a;
  121.                 System.out.println("Numero Generado "+x[i]+"   en la posicion  "+i);
  122.             }
  123.         }  
  124.         static void Suma(int x[],int y[],int z[]) {//Rellena el 3er Vector
  125.             int i;
  126.             System.out.println("      Vector Sumatoria");
  127.             for(i=0; i<z.length;i++) {
  128.                 z[i]= x[i]+y[i];
  129.                 System.out.println("Numero  "+z[i]+"   guardado en la posicion  "+i);
  130.             }  
  131.         }
  132.         static void CargarVector(int x[],int a) {// cargar el vector Primos por Consola
  133.             int i;      
  134.             for (i=0; i<x.length;i++) {
  135.                 do {
  136.                 System.out.println("Ingrese Numero primos");
  137.                 a = obten_int();            
  138.                 if(Primo(a)==0) {
  139.                     System.out.println("No es un numero primo");                
  140.                  }
  141.                 }while (Primo(a)==0);
  142.                 x[i]=a;
  143.             }
  144.         }
  145.         static public int Primo (int a)//funcion para determinar si un numero es primo o no
  146.         {      
  147.             int i,b;
  148.             b=1;
  149.             i=2;
  150.             while(b==1 & i<a)
  151.             {
  152.                 if (a % i== 0) {
  153.                 b=0;    
  154.                 }else {
  155.                     i=i+1;
  156.                 }
  157.             }
  158.             return (b);
  159.             }
  160.         static void Cargardivisores(int x[],int a){// cargar el vector Divisores por Consola
  161.             int i;      
  162.             for (i=0; i<x.length;i++) {
  163.                 do {
  164.                 System.out.println("Ingrese Numero Divisor de 1000");
  165.                 a = obten_int();            
  166.                 if(divisor(a)==0) {
  167.                     System.out.println("No es un divisor de 1000");            
  168.                  }
  169.                 }while (divisor(a)==0);
  170.                 x[i]=a;
  171.             }
  172.         }
  173.         static public int divisor (int a)//Funcion que determinar si un numero es divisor de 1000
  174.         {      
  175.             int b;
  176.             b=0;
  177.             if (1000 % a==0) {
  178.                 b=1;
  179.             }
  180.             return b;      
  181.         }  
  182.     }
  183.  
  184.  
RAW Paste Data