• No se han encontrado resultados

AP7 AA6 Ev3 Planteamiento de Ejercicios

N/A
N/A
Protected

Academic year: 2021

Share "AP7 AA6 Ev3 Planteamiento de Ejercicios"

Copied!
10
0
0

Texto completo

(1)

Servicio Nacional de Aprendizaje - SENA

Servicio Nacional de Aprendizaje - SENA

 Análisis y De

 Análisis y De

sarrollo de S

sarrollo de S

istema de In

istema de In

formación

formación

 – –

 ADSI

 ADSI

 AP7-AA7

 AP7-AA7.1-Ev1-E

.1-Ev1-Ejercicios de Pr

jercicios de Programació

ogramación con Estru

n con Estructuras de Da

cturas de Datos

tos

en Java

en Java

Presentado por:

Presentado por:

Leonardo Moreno Vargas

Leonardo Moreno Vargas

Málaga, Santander

Málaga, Santander

2018

2018

(2)

Ejercicios de Programación con Estructuras de Datos en Java

Ejercicios de Programación con Estructuras de Datos en Java

1

1.. En una competencia participan N atletas de los cuales es importante conocer suEn una competencia participan N atletas de los cuales es importante conocer su nombre, nacionalidad y su tiempo. Desarrolle una aplicación que presente el

nombre, nacionalidad y su tiempo. Desarrolle una aplicación que presente el siguiente menú:

siguiente menú:

 Registrar Atleta: Debe solicitar el nombre, la nacionalidad y el tiempo delRegistrar Atleta: Debe solicitar el nombre, la nacionalidad y el tiempo del atleta

atleta 

 Datos Campeón: Muestra el nombre, la nacionalidad y el tiempo del atletaDatos Campeón: Muestra el nombre, la nacionalidad y el tiempo del atleta cuyo tiempo es el menor de todos.

cuyo tiempo es el menor de todos. 

 Atletas por país: Solicita el nombre del país y muestra los nombres deAtletas por país: Solicita el nombre del país y muestra los nombres de todos los atletas de ese país.

todos los atletas de ese país. 

 Tiempo promedio de todos los atletas:Tiempo promedio de todos los atletas: Muestra el tiempo promedio de Muestra el tiempo promedio de los atletas registrados.

los atletas registrados. 

 Características de la aplicación:Características de la aplicación: La aplicación debe desarrollarse de La aplicación debe desarrollarse de manera orientada a objetos, incluyendo las clases Atleta, Competencia y manera orientada a objetos, incluyendo las clases Atleta, Competencia y Principal.

Principal. 

 Debe Debe emplear emplear arreglos arreglos para para su su solución.solución.

import javax.swing.JOptionPane; import javax.swing.JOptionPane;

public class EjercicioUno { public class EjercicioUno {

public static void main(String[] args) { public static void main(String[] args) { //Declaración de variables //Declaración de variables String nombre[]; String nombre[]; String nacionalidad[]; String nacionalidad[]; double tiempo[]; double tiempo[]; int totalAtletas; int totalAtletas; double may=0; double may=0; String nombremin=null; String nombremin=null;

String nacionalidadmin = null; String nacionalidadmin = null;

(3)

String nacionalidadpais; String nacionalidadpais; String nombreatletapais; String nombreatletapais; double sumTiempo=0; double sumTiempo=0; double tiempoPromedio; double tiempoPromedio; //Menu //Menu

JOptionPane.showMessageDialog(null, "competencia\n"+"1. registrar Atleta\n"+"2. JOptionPane.showMessageDialog(null, "competencia\n"+"1. registrar Atleta\n"+"2. Datos del campeon\n"+"3. Atletas por pais\n"

Datos del campeon\n"+"3. Atletas por pais\n"

+"4. Tiempo pormedio de todos los atletas\n"+"5. Salir"); +"4. Tiempo pormedio de todos los atletas\n"+"5. Salir");

totalAtletas = Integer.parseInt(JOptionPane.showInputDialog(null,"Ingrese la totalAtletas = Integer.parseInt(JOptionPane.showInputDialog(null,"Ingrese la cantidad de atletas")); cantidad de atletas")); nombre=new String[totalAtletas]; nombre=new String[totalAtletas]; nacionalidad=new String[totalAtletas]; nacionalidad=new String[totalAtletas]; tiempo=new double[totalAtletas]; tiempo=new double[totalAtletas]; //Registrar Atletas //Registrar Atletas

JOptionPane.showMessageDialog(null,"1. Registrar Atleta"); JOptionPane.showMessageDialog(null,"1. Registrar Atleta"); for(int i=0; i<totalAtletas; i++){

for(int i=0; i<totalAtletas; i++){

nombre[1]=JOptionPane.showInputDialog(null,"ingrese el nombre del atleta:"); nombre[1]=JOptionPane.showInputDialog(null,"ingrese el nombre del atleta:"); nacionalidad[i]=JOptionPane.showInputDialog(null, "ingrese la nacionalidad del nacionalidad[i]=JOptionPane.showInputDialog(null, "ingrese la nacionalidad del atleta:");

atleta:");

tiempo[i]=Double.parseDouble(JOptionPane.showInputDialog(null, "Ingrese el tiempo[i]=Double.parseDouble(JOptionPane.showInputDialog(null, "Ingrese el tiempo en minutos del atleta:"));

tiempo en minutos del atleta:"));

sumTiempo=sumTiempo+tiempo[i]; sumTiempo=sumTiempo+tiempo[i]; }}

//Datos Campeon //Datos Campeon

JOptionPane.showMessageDialog(null, "2. Datos del campeon"); JOptionPane.showMessageDialog(null, "2. Datos del campeon"); for (int i=0; i<totalAtletas; i++){

for (int i=0; i<totalAtletas; i++){ if

if (tiempo[i]>(tiempo[i]>may){may){ may=tiempo[i]; may=tiempo[i]; nombremin=nombre[i]; nombremin=nombre[i]; nacionalidadmin=nacionalidad[i]; nacionalidadmin=nacionalidad[i]; }}

(4)

}}

JOptionPane.showMessageDialog(null,"El nombre del atleta campeon JOptionPane.showMessageDialog(null,"El nombre del atleta campeon es"+nombremin + "de nacionalidad"+nacionalidadmin+"cuyo timepo fue"+may); es"+nombremin + "de nacionalidad"+nacionalidadmin+"cuyo timepo fue"+may); //Atletas por pais

//Atletas por pais

JOptionPane.showMessageDialog(null, "3. Atletas por pais"); JOptionPane.showMessageDialog(null, "3. Atletas por pais");

nacionalidadpais=JOptionPane.showInputDialog(null,"ingrese la nacionalidad para nacionalidadpais=JOptionPane.showInputDialog(null,"ingrese la nacionalidad para mostrar los atletas de ese pais:");

mostrar los atletas de ese pais:"); for (int i=0; i<totalAtletas; i++){ for (int i=0; i<totalAtletas; i++){

if(nacionalidadpais==null ? nacionalidad[i]==null: if(nacionalidadpais==null ? nacionalidad[i]==null: nacionalidadpais.equals(nacionalidad[i])){ nacionalidadpais.equals(nacionalidad[i])){ nombreatletapais=nombre[i]; nombreatletapais=nombre[i];

JOptionPane.showMessageDialog(null, "El nombre de un atleta de JOptionPane.showMessageDialog(null, "El nombre de un atleta de nacionalidad"+nacionalidadpais+"es"+nombreatletapais);

nacionalidad"+nacionalidadpais+"es"+nombreatletapais); }}

}}

//Promedio del tiempo de los atletas //Promedio del tiempo de los atletas

JOptionPane.showMessageDialog(null,"4. Tiempo promedio de todos los atletas"); JOptionPane.showMessageDialog(null,"4. Tiempo promedio de todos los atletas"); tiempoPromedio=sumTiempo/totalAtletas;

tiempoPromedio=sumTiempo/totalAtletas;

JOptionPane.showMessageDialog(null,"El timepo promedio de los atletas JOptionPane.showMessageDialog(null,"El timepo promedio de los atletas fue"+tiempoPromedio); fue"+tiempoPromedio); JOptionPane.showMessageDialog(null,"5. Salir"); JOptionPane.showMessageDialog(null,"5. Salir"); }} }} 2.

2. Desarrolle una aplicación utilizando colecciones, la cual permita tener lasDesarrolle una aplicación utilizando colecciones, la cual permita tener las siguientes funcionalidades:

siguientes funcionalidades:

• Insertar Insertar elementos elementos (al (al inicio, inicio, al al final).final).

(5)

• Obtener Obtener el el valor valor de de una una posición posición determinada.determinada.

• Asignar Asignar valor valor a a una una posición posición determinada.determinada.

• Calcular Calcular la la sumatoria sumatoria de de los los valores valores de de todos todos los los elementos.elementos.

• Calcular Calcular el el promedio promedio de de los los valores valores de de todos todos los los elementos.elementos.

• Obtener Obtener el el número número de de elementos.elementos.

 Contar Contar el el número número de de valores valores igual igual a a cero cero (0).(0).

• Calcular Calcular la la suma suma de de los los pares.pares.

• Contar Contar el el número número de de repeticiones repeticiones dado dado un un número.número.

• Modificar Modificar el el valor valor de de una una posición posición por por otro otro valor valor suministrado.suministrado.

• Cambiar Cambiar todo todo el el contenido.contenido.

• Invertir Invertir el el arreglo.arreglo.

• Obtener Obtener el el mayor mayor valor.valor.

• Obtener Obtener el el menor menor valor.valor.

• Obtener Obtener los los primeros primeros n n elementos elementos del del arreglo.arreglo.

• Obtener Obtener los los últimos últimos n n elementos elementos del del arreglo.arreglo.

• Indicar Indicar si si es es palíndromo.palíndromo.

• Indicar Indicar si si un un número número se se encuentra encuentra dentro dentro del del arreglo.arreglo.

• Mostrar Mostrar el el contenido contenido del del arreglo.arreglo.

package ejerciciodos; package ejerciciodos;

import java.util.*; import java.util.*;

public class EjercicioDos { public class EjercicioDos {

 ArrayL

 ArrayList numeros ist numeros = new Ar= new ArrayList(rayList(););

public void insertarAlFinal(int valor) { public void insertarAlFinal(int valor) {

numeros.add(valor); numeros.add(valor); }}

public void insertarAlPrincipio(int valor){ public void insertarAlPrincipio(int valor){

(6)

numeros.add

numeros.add(0, (0, valor);valor); }}

public void mostrarContenido(){ public void mostrarContenido(){

System.out.println(numeros); System.out.println(numeros); }}

public void agregarAlFinal(Object valor){ public void agregarAlFinal(Object valor){

numeros.add(valor); numeros.add(valor); }}

public void eliminar(int valor){ public void eliminar(int valor){

numeros.remove(valor); numeros.remove(valor); }}

public void setValor(int posicion, int valor){ public void setValor(int posicion, int valor){

numeros.add(posicion, valor); numeros.add(posicion, valor); }}

int getValor(int valor){ int getValor(int valor){

return (int)(numeros.get(valor)); return (int)(numeros.get(valor)); }} int cuentaElementos(){ int cuentaElementos(){ int valor=numeros.size(); int valor=numeros.size(); return valor; return valor; }} int getSumatoria(){ int getSumatoria(){ int suma=0; int suma=0;

for(Object numero : numeros){ for(Object numero : numeros){ suma = suma + (int) numero; suma = suma + (int) numero;

}} return suma; return suma; }} double getPromedio(){ double getPromedio(){

(7)

int

int suma=0;suma=0;

double promedio=0; double promedio=0;

for(Object numero : numeros){ for(Object numero : numeros){ suma = suma+(int) numero; suma = suma+(int) numero;

promedio=suma/numeros.size(); promedio=suma/numeros.size(); }} return promedio; return promedio; }} int cuentaCeros(){ int cuentaCeros(){ int cantidad=0; int cantidad=0; for(Object numero:numeros){ for(Object numero:numeros){ if((int)numero==0){ if((int)numero==0){ cantidad=cantidad+1; cantidad=cantidad+1; }} }} return cantidad; return cantidad; }} int sumaPares(){ int sumaPares(){ int par=0; int par=0;

for (Object numero:numeros){ for (Object numero:numeros){

if(((int)numero%2)==0){ if(((int)numero%2)==0){ par=par+(int)numero; par=par+(int)numero; }} }} return par; return par; }}

int cuentaRepeticiones(int num){ int cuentaRepeticiones(int num){ int cuenta=0;

int cuenta=0;

for(Object numero:numeros){ for(Object numero:numeros){

(8)

  if((int)numero==2){   if((int)numero==2){ cuenta=cuenta+1; cuenta=cuenta+1; }} }} return cuenta; return cuenta; }}

public void reemplazarValor(int antiguoValor, int nuevoValor){ public void reemplazarValor(int antiguoValor, int nuevoValor){ numeros.set(antiguoValor, nuevoValor);

numeros.set(antiguoValor, nuevoValor); }}

public void reemplazarTodo(){ public void reemplazarTodo(){ numeros.clear(); numeros.clear(); numeros.add(9); numeros.add(9); numeros.add(10); numeros.add(10); numeros.add(11); numeros.add(11); }} int getMayor(){ int getMayor(){ int mayor=0; int mayor=0; for(Object numero:numeros){ for(Object numero:numeros){ if((int)numero>=mayor){ if((int)numero>=mayor){ mayor=(int)numero; mayor=(int)numero; }} }} return mayor; return mayor; }} int getMenor(){ int getMenor(){ int m

int menor=11enor=11;;

for(Object numero:numeros){ for(Object numero:numeros){ if((int)numero<=menor){ if((int)numero<=menor){ menor=(int)numero; menor=(int)numero; }}

(9)

}}

return menor; return menor; }}

boolean buscar(int numero){ boolean buscar(int numero){

return numeros.contains(numero); return numeros.contains(numero); }}

}}

public class TestMiColeccion{ public class TestMiColeccion{

public static void main(String[]args){ public static void main(String[]args){

System.out.println("Mi Coleccion 1"); System.out.println("Mi Coleccion 1"); MiColeccion mc1=new MiColeccion(); MiColeccion mc1=new MiColeccion(); mc1.insertarAlFinal(1); mc1.insertarAlFinal(1); mc1.insertarAlFinal(2); mc1.insertarAlFinal(2); mc1.insertatAlFinal(3); mc1.insertatAlFinal(3); mc1.insertatAlPrincipio(4); mc1.insertatAlPrincipio(4); mc1.mostrarContenido(); mc1.mostrarContenido(); mc1.agregarAlFinal(9); mc1.agregarAlFinal(9); mc1.agregarAlFinal(10); mc1.agregarAlFinal(10); mc1.agregarAlFinal(11); mc1.agregarAlFinal(11); mc1.mostrarContenido(); mc1.mostrarContenido(); mc1.eliminar(0); mc1.eliminar(0); mc1.eliminar(5); mc1.eliminar(5); mc1.mostrarContenido(); mc1.mostrarContenido(); mc1.setValor(0,0); mc1.setValor(0,0); mc1.setValor(6,0); mc1.setValor(6,0); mc1.mostrarContenido(); mc1.mostrarContenido();

System.out.println("En la posicion 4 ests el"+mc1.getValor(4)); System.out.println("En la posicion 4 ests el"+mc1.getValor(4));

System.out.println("La sumatoria de sus elementos es:"+mc1.getSumatoria()); System.out.println("La sumatoria de sus elementos es:"+mc1.getSumatoria());

(10)

System.out

System.out.println("E.println("El promedil promedio de o de sus elesus elementos esmentos es:"+mc1.getP:"+mc1.getPromedio());romedio()); System.out.println("En la Coleccion hay"+mc1.cuentaElementos()+"elementos"); System.out.println("En la Coleccion hay"+mc1.cuentaElementos()+"elementos"); System.out.println("y hay"+mc.cuentaCeros()+"ceros");

System.out.println("y hay"+mc.cuentaCeros()+"ceros");

System.out.println("la sumatoria de los pares es"+mc1.sumaPares()); System.out.println("la sumatoria de los pares es"+mc1.sumaPares());

System.out.println("El numero 2 esta"+mc1.cuentaRepeticiones(2)+"veces"); System.out.println("El numero 2 esta"+mc1.cuentaRepeticiones(2)+"veces"); mc1.reemplazarValor(0,9); mc1.reemplazarValor(0,9); mc1.mostrarContenido(); mc1.mostrarContenido(); mc1.reemplazarTodo(); mc1.reemplazarTodo(); mc1.mostrarContenido(); mc1.mostrarContenido();

System.out.println("El mayor elemento es:"+mc1.getMayor()); System.out.println("El mayor elemento es:"+mc1.getMayor()); System.out.println("El mayor elemento es:"+mc1.getMenor()); System.out.println("El mayor elemento es:"+mc1.getMenor()); mc1.insertarAlFinal(1); mc1.insertarAlFinal(1); mc1.insertarAlFinal(2); mc1.insertarAlFinal(2); mc1.insertarAlFinal(3); mc1.insertarAlFinal(3); mc1.mostrarContenido(); mc1.mostrarContenido(); System.out.println("Esta el 3 en la lista?"+mc1.buscar(3)); System.out.println("Esta el 3 en la lista?"+mc1.buscar(3)); }} }}

Referencias

Documento similar

Ejemplos Cuota de una hipoteca import javax.swing.JOptionPane; public class Hipoteca { public static void main String args[] { double cantidad; // en euros double interes; //

bli t ti id i (St i [] ) th IOE ti { public static void main(String[] args) throws IOException { FileOutputStream gdF = new FileOutputStream(&#34;datos.dat&#34;);

El siguiente ejemplo utiliza algunos de los métodos anteriormente discutidos para el JFrame creando un objeto f de la clase JFrame en el método public static void main( String []

EDITOR DIDÁCTICO DE TRAMAS TCP/IP public static void mainString[] args throws java.io.IOException { String[] lists=Jpcap.getDeviceDescription; // se halla la lista de interfaces de

static void Mainstring[] args { string valor; // Creamos una instancia de la clase SqlConnection string datosConexion = "Data Source = TuServidor;" + "Initial Catalog = Ejemplo

public static void main(String args[]){ Pattern patron = Pattern.compile(&#34;a*b&#34;); // Se crea el Matcher a partir del patron, //la cadena como parametro. Matcher

+ Hola Mundo clase método Tipos básicos como en C javac Hola.java java Hola class Hola {{. public static void

import java.awt.*; public class MyFrame extends Frame { public MyFrame String str { super str; } public static void main String argv[] { MyFrame fr=new MyFrame “Hola