import java.io.*; import java.util.Iterator; import java.util.LinkedList; import java.util.Scanner; public class Ejercicio02 { LinkedList listaPositivos = new LinkedList(); LinkedList listaNegativos = new LinkedList(); // recorremos la lista comprobando si son positivos o negativos y generamos // ambas public void generarListas(LinkedList lista) { for (int var : lista) { if (var > 0) { listaPositivos.add(var); } else if (var < 0) { listaNegativos.add(var); } } } // probamos si son divisibles por los valores menores a el public boolean esPrimo(int var) { for (int i = 2; i < var; i++) { if (var % i == 0) { return false; } } return true; } public static Integer minimo(LinkedList lista) { Integer min = Integer.MAX_VALUE; for (int a : lista) { if (a < min) { min = a; } } return min; } public static Integer maximo(LinkedList lista) { Integer max = Integer.MIN_VALUE; for (int a : lista) { if (a > max) { max = a; } } return max; } public static void ordenarLista(LinkedList lista) { Integer[] aux = new Integer[lista.size()]; int indice = 0; for (int a : lista) { aux[indice] = a; indice++; } lista.clear(); ordenar_vector(aux); for (int i = 0; i < aux.length; i++) { lista.add(aux[i]); } } private static void ordenar_vector(Integer[] vec) { Integer auxiliar; for (int i = 0; i < vec.length; i++) { for (int k = i + 1; k < vec.length; k++) { if (vec[i] > vec[k]) { auxiliar = vec[i]; vec[i] = vec[k]; vec[k] = auxiliar; } } } } public static void main(String[] args) { LinkedList lista = new LinkedList(); Ejercicio02 ejercicio02 = new Ejercicio02(); // generamos la lista con valor inicial 0 lista.add(0); System.out.println("Ingrese los valores"); int res = 1; Scanner in = new Scanner(System.in); while (res == 1) { System.out.println("Ingrese los valores"); int val = in.nextInt(); if (val > 0) { lista.add(val); } else if (val < 0) { lista.addFirst(val); } System.out.println("Desea seguir ingresando valores? 1- SI 2-NO"); res = in.nextInt(); } // la lista impresa System.out.println("Impresion de la lista"); for (int var : lista) { System.out.println(var); } System.out.println("\n"); ejercicio02.generarListas(lista); // la lista de positivos System.out.println("Impresion de la lista de positivos"); for (int var : ejercicio02.listaPositivos) { System.out.println(var); } System.out.println("\n"); // la lista de negativos System.out.println("Impresion de la lista de negativos"); for (int var : ejercicio02.listaNegativos) { System.out.println(var); } System.out.println("Hallando los valores max y min de cada lista."); System.out.println("Lista Positivos:"); System.out.println("Maximo: "+maximo(ejercicio02.listaPositivos)+"\t"+"Minimo: "+minimo(ejercicio02.listaPositivos)); System.out.println("Lista Negativos:"); System.out.println("Maximo: "+maximo(ejercicio02.listaNegativos)+"\t"+"Minimo: "+minimo(ejercicio02.listaNegativos)); System.out.println("Ordenando las Listas"); ordenarLista(ejercicio02.listaNegativos); ordenarLista(ejercicio02.listaPositivos); System.out.println("Imprimiendo las listas:"); System.out.println("Lista Positivos:"); for(int var : ejercicio02.listaPositivos) System.out.println(var); System.out.println("Lista Negativos:"); for (int var : ejercicio02.listaNegativos) System.out.println(var); } }