EJERCICIOS DE PROGRAMACIÓN CON ESTRUCTURAS DE DATOS EN JAVA
Nelson Daniel Suarez Buitrago
Septiembre 2018.
Sena
Análisis y desarrollo de sistemas de información
Fase desarrollo
Abstract ii
El presente trabajo consiste en la realización de cada uno de los puntos a realizar en la
actividad de programación con estructuras de datos en java, esta investigación tuvo como
objetivo general desarrollar una aplicación con cada una de las condiciones planteadas y de
cumplimiento para el correcto funcionamiento del mismo. Los individuos a evaluar esta
presentes en el lenguaje java utilizado y el print que este mismo lenguaje genera.
Tabla de Contenidos iii
Ejercicios de programacion con estructuras de datos java ................................................. 1
competencia participantes atletas ...................................Error! Bookmark not defined.
Desarrollo de aplicación ...............................................Error! Bookmark not defined.
1
Capítulo 1
Introducción e información general
Ejercicio competencia de participantes atletas
1. En una competencia participan N atletas de los cuales es importante conocer
nombre, nacionalidad y su tiempo. Desarrolle una aplicación que presente el
siguiente menú:
Competencia
1. Registrar atleta
2. Datos del campeón
3. Atletas por país
4. Tiempo promedio de todos los atletas
5. Salir
Registrar atleta: debe solicitar el nombre, la nacionalidad y el tiempo del atleta
Datos Campeón: Muestra el nombre, la nacionalidad y el tiempo del atleta cuyo
tiempo es el menor de todos
Atletas por país: Solicita el nombre del país y muestra los nombres de todos los
atletas de ese país.
Tiempo promedio de todos los atletas: Muestra el tiempo promedio de los
atletas registrados.
Características de la aplicación:
2
La aplicación debe desarrollarse de manera orientada a objetos, incluye
clase atleta, competencia y principal.
Debe emplear arreglos para su solución.
Solución
import [Link];
public class EjercicioUno {
public static void main(String[] args) {
//Declaración de variables
String nombre[];
String nacionalidad[]; double tiempo[];
int totalAtletas; double may=0;
String nombremin=null;
String nacionalidadmin = null;
String nacionalidadpais; String nombreatletapais; double sumTiempo=0; double
tiempoPromedio;
//Menu
[Link](null, "competencia\n"+"1. registrar
Atleta\n"+"2. Datos del campeon\n"+"3. Atletas por pais\n"
+"4. Tiempo pormedio de todos los atletas\n"+"5. Salir");
totalAtletas = [Link]([Link](null,"Ingrese la
3
cantidad de atletas"));
nombre=new String[totalAtletas]; nacionalidad=new String[totalAtletas];
tiempo=new double[totalAtletas];
//Registrar Atletas
[Link](null,"1. Registrar Atleta"); for(int i=0;
i<totalAtletas; i++){
nombre[1]=[Link](null,"ingrese el nombre del atleta:");
nacionalidad[i]=[Link](null, "ingrese la nacionalidad del
atleta:");
tiempo[i]=[Link]([Link](null, "Ingrese el
tiempo en minutos del atleta:"));
sumTiempo=sumTiempo+tiempo[i];
//Datos Campeon
[Link](null, "2. Datos del campeon"); for (int i=0;
i<totalAtletas; i++){
if (tiempo[i]>may){
may=tiempo[i]; nombremin=nombre[i];
nacionalidadmin=nacionalidad[i];
[Link](null,"El nombre del atleta campeon
es"+nombremin + "de nacionalidad"+nacionalidadmin+"cuyo timepo fue"+may);
4
//Atletas por pais
[Link](null, "3. Atletas por pais");
nacionalidadpais=[Link](null,"ingrese la nacionalidad
para
mostrar los atletas de ese pais:");
for (int i=0; i<totalAtletas; i++){
if(nacionalidadpais==null ? nacionalidad[i]==null:
[Link](nacionalidad[i])){
nombreatletapais=nombre[i];
[Link](null, "El nombre de un atleta de
nacionalidad"+nacionalidadpais+"es"+nombreatletapais);
//Promedio del tiempo de los atletas
[Link](null,"4. Tiempo promedio de todos los
atletas"); tiempoPromedio=sumTiempo/totalAtletas;
[Link](null,"El timepo promedio de los atletas
fue"+tiempoPromedio);
[Link](null,"5. Salir");
}
}
Desarrollo de aplicación
2. Desarrolle una aplicación utilizando colecciones, la cual permita tener las
siguientes funcionalidades.
5
Insertar elementos (Al inicio, al final)
Eliminar elementos
Obtener un valor de una posición determinada
Asignar valor a una posición determinada
Calcular la sumatoria de los valores de todos los elementos
Calcular el promedio de los valores de todos los elementos
Obtener el numero de elementos
Contar el numero de valores igual a cero (0)
Calcular la suma de los pares
Contar el numero de repeticiones dado un numero
Modificar el valor de una posición por otro valor suministrado
Cambiar todo el contenido
Invertir arreglo
Obtener el mayor valor
Obtener el menor valor
Obtener los primeros n elementos del arreglo
Obtener los últimos n elementos del arreglo
Indicar si es palíndromo
Indicar si un numero se encuentra dentro del arreglo
Mostrar el contenido del arreglo.
Solucion
6
package ejerciciodos;
import [Link].*;
public class EjercicioDos {
ArrayList numeros = new ArrayList();
public void insertarAlFinal(int valor) {
[Link](valor);
public void insertarAlPrincipio(int valor){
[Link](0, valor);
public void mostrarContenido(){
[Link](numeros);
public void agregarAlFinal(Object valor){
[Link](valor);
public void eliminar(int valor){
[Link](valor);
public void setValor(int posicion, int valor){
[Link](posicion, valor);
7
int getValor(int valor){
return (int)([Link](valor));
int cuentaElementos(){
int valor=[Link](); return valor;
int getSumatoria(){
int suma=0;
for(Object numero : numeros){
suma = suma + (int) numero;
return suma;
double getPromedio(){
int suma=0;
double promedio=0;
for(Object numero : numeros){
suma = suma+(int) numero;
promedio=suma/[Link]();
}
8
return promedio;
int cuentaCeros(){
int cantidad=0;
for(Object numero:numeros){
if((int)numero==0){
cantidad=cantidad+1;
return cantidad;
int sumaPares(){
int par=0;
for (Object numero:numeros){
if(((int)numero%2)==0){
par=par+(int)numero;
return par;
int cuentaRepeticiones(int num){
int cuenta=0;
9
for(Object numero:numeros){
if((int)numero==2){
cuenta=cuenta+1;
return cuenta;
public void reemplazarValor(int antiguoValor, int nuevoValor){
[Link](antiguoValor, nuevoValor);
public void reemplazarTodo(){
[Link](); [Link](9); [Link](10); [Link](11);
int getMayor(){
int mayor=0;
for(Object numero:numeros){
if((int)numero>=mayor){
mayor=(int)numero;
return mayor;
}
10
int getMenor(){
int menor=11;
for(Object numero:numeros){
if((int)numero<=menor){
menor=(int)numero;
return menor;
boolean buscar(int numero){
return [Link](numero);
public class TestMiColeccion{
public static void main(String[]args){
[Link]("Mi Coleccion 1"); MiColeccion mc1=new MiColeccion();
[Link](1); [Link](2); [Link](3);
[Link](4); [Link](); [Link](9);
[Link](10); [Link](11); [Link]();
[Link](0);
[Link](5); [Link](); [Link](0,0); [Link](6,0);
[Link]();
[Link]("En la posicion 4 ests el"+[Link](4));
[Link]("La sumatoria de sus elementos es:"+[Link]());
11
[Link]("El promedio de sus elementos es:"+[Link]());
[Link]("En la Coleccion hay"+[Link]()+"elementos");
[Link]("y hay"+[Link]()+"ceros");
[Link]("la sumatoria de los pares es"+[Link]());
[Link]("El numero 2 esta"+[Link](2)+"veces");
[Link](0,9);
[Link](); [Link](); [Link]();
[Link]("El mayor elemento es:"+[Link]());
[Link]("El mayor elemento es:"+[Link]()); [Link](1);
[Link](2); [Link](3); [Link]();
[Link]("Esta el 3 en la lista?"+[Link](3));
}
12
Lista de referencias
Sena Sofia Plus, (2018). Actividades a desarrollar de lenguaje estructura de datos java.
Informacion relacionada con actividades completas.