Crear la clase VectorReales que tenga como atributos un arreglo unidimensional y el número de elementos que se ingresan

  package proyectovectorreales;
public class VectorReales {
 private double vector[];
 private int totalElementos;

 public VectorReales(){
 vector = new double[10];
 totalElementos = 0;

 }

 public VectorReales(int limite){
 vector = new double[limite];
 totalElementos = 0;
 }

 public boolean agregar(double valor){
 if(totalElementos < vector.length){
 vector[totalElementos] = valor;
 totalElementos++;
 return true;
 }
 else
 return false;
 }

 public int buscar(double valor){
 int i;
 for(i = 0; i < totalElementos; i++){
 if(vector[i] == valor)
 return i;
 }
 return -1;
 }

 public boolean modificar(int indice, double nuevo){
 if(indice >= 0 && indice < totalElementos){
 vector[indice] = nuevo;
 return true;
 }
 else
 return false;
 }

 public boolean eliminar(int indice){
 if(indice >= 0 && indice < totalElementos){
 int i;
 for(i = indice; i < totalElementos-1; i++)
 vector[i] = vector[i+1];
 totalElementos--;
 return true;
 }
 else
 return false;
 }

 public boolean insertar(int indice, double valor){
 if(totalElementos < vector.length && indice >= 0 && indice <= totalElementos){
 int i;
 for(i = totalElementos-1; i >= indice; i--)
 vector[i+1] = vector[i];
 vector[indice] = valor;
 totalElementos++;
 return true;
 }
 else
 return false;
 }

 public void ordenAscendente(){
 int i, j;
 double temp;
 for(i = 0; i < totalElementos-1; i++)
 for(j = i+1; j < totalElementos; j++)
 if(vector[i] > vector[j]){
 temp = vector[i];
 vector[i] = vector[j];
 vector[j] = temp;
 }
 }

 public void ordenDescendente(){
 int i, j;
 double temp;
 for(i = 0 ; i < totalElementos-1; i++)
 for(j = i+1; j < totalElementos; j++)
 if(vector[i] < vector[j]){
 temp = vector[i];
 vector[i] = vector[j];
 vector[j] = temp;
 }
 }

 public double devolverElemento(int indice){
 return vector[indice];
 }

 public int getTotalElementos(){
 return totalElementos;
 }


}

package proyectovectorreales;
import java.util.Scanner;
public class ProyectoVectorReales {

 public static void main(String[] args) {
 menuVectorReales();
 }

 public static void menuVectorReales() {
 VectorReales vectorReales = new VectorReales();
 int opcion;
 do {
 opcion = pedirOpcion();
 switch(opcion){
 case 1:
 agregarValor(vectorReales);
 break;
 case 2:
 buscarValor(vectorReales);
 break;
 case 3:
 modificarValor(vectorReales);
 break;
 case 4:
 eliminarValor(vectorReales);
 break;
 case 5:
 insertarValor(vectorReales);
 break;
 case 6:
 mostrarValores(vectorReales);
 break;
 case 7:
 vectorReales.ordenAscendente();
 break;
 case 8:
 vectorReales.ordenDescendente();
 break;
 }
 } while(opcion != 9);
 }

 public static void mostrarValores(VectorReales vectorReales) {
 System.out.println("Elementos del vector");
 for(int i = 0; i < vectorReales.getTotalElementos(); i++)
 System.out.println(vectorReales.devolverElemento(i));
 }
 public static void insertarValor(VectorReales vectorReales) {
 double valor;
 int indice;
 Scanner entrada = new Scanner(System.in);
 System.out.print("Valor a insertar: ");
 valor = entrada.nextDouble();
 System.out.print("Posicion donde desea insertar: ");
 indice = entrada.nextInt();
 if(vectorReales.insertar(indice, valor))
 System.out.println("Dato insertado");
 else
 System.out.println("No se puede insertar");
 }
 public static void eliminarValor(VectorReales vectorReales) {
 double valor;
 int indice;
 Scanner entrada = new Scanner(System.in);
 System.out.print("Valor a eliminar: ");
 valor = entrada.nextDouble();
 indice = vectorReales.buscar(valor);
 if(indice != -1){
 vectorReales.eliminar(indice);
 System.out.println("Dato eliminado");
 }
 else
 System.out.println("Dato no se encuentra");
 }
 public static void modificarValor(VectorReales vectorReales) {
 double valor;
 int indice;
 Scanner entrada = new Scanner(System.in);
 System.out.print("Valor a modificar: ");
 valor = entrada.nextDouble();
 indice = vectorReales.buscar(valor);
 if(indice != -1){
 System.out.print("Nuevo elemento ");
 vectorReales.modificar(indice, entrada.nextDouble());

 }
 else
 System.out.println("Dato no se encuentra");
 }
 public static void buscarValor(VectorReales vectorReales) {
 double valor;
 int indice;
 Scanner entrada = new Scanner(System.in);
 System.out.print("Valor a buscar: ");
 valor = entrada.nextDouble();
 indice = vectorReales.buscar(valor);
 if(indice != -1)
 System.out.println("Dato se encuentra en posicion " + indice);
 else
 System.out.println("Dato no se encuentra");
 }
 public static void agregarValor(VectorReales vectorReales) {
 double valor;
 Scanner entrada = new Scanner(System.in);
 System.out.print("Ingrese valor: ");
 valor = entrada.nextDouble();
 if( !vectorReales.agregar(valor) )
 System.out.println("El arreglo esta lleno");
 }
 public static int pedirOpcion() {
 int opcion;
 Scanner entrada = new Scanner(System.in);
 System.out.println("Vector de Reales");
 System.out.println("[1] Agregar");
 System.out.println("[2] buscar");
 System.out.println("[3] modificar elemento");
 System.out.println("[4] Eliminar elemento");
 System.out.println("[5] Insertar Elemento");
 System.out.println("[6] Mostrar elementos");
 System.out.println("[7] Ordenar Ascendentemente");
 System.out.println("[8] Ordenar Descendentemente");
 System.out.println("[9] Salir");
 System.out.print("Ingrese opcion (1-5): ");
 opcion = entrada.nextInt();
 return opcion;
 }

}
Share:

Blogroll

BTemplates.com

Buscar este blog

Blog Archive

Con tecnología de Blogger.