Este blog fue creado con la intencion de aportar a los alumnos una ayuda con los ejercicios de la carrera de ingenieria de sistemas LEVI VELASQUEZ PAZ

Blogroll

sábado, 16 de diciembre de 2017

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:

0 comentarios:

Publicar un comentario

Buscar este blog

Con tecnología de Blogger.

Blog Archive

Blog Archive