You are on page 1of 22

ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E

INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

LABORATORIO N 05
TRABAJO ACADEMICO LPOO

ARREGLOS (ARRAYS)
Crear carpeta: Laboratorio 05
ARREGLOS UNIDIMENSIONALES
1. Proyecto: Programa01
Escribir una aplicacin que permita crear un arreglo de 6 notas. Los datos a ingresar
so de tipo entero, finalmente imprimir las notas una en cada fila. Utilizar la clase
Scanner para ingresar los datos del arreglo.
FUENTE:

1
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

RESULTADO:

2. Proyecto: Programa02
Escribir una aplicacin que permita leer un nmero n de notas, almacenarla en un
arreglo e tipo int, y luego calcular su promedio.
FUENTE:

2
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

RESULTADO:

3. Proyecto: Programa03

Escribir una aplicacin que permita ordenar en forma ascendente una serie de
nmeros ingresados, almacenados en un arreglo.
FUENTE:

package programa03;
import java.util.Scanner;
public class Programa03 {
public static void main(String[] args) {
Scanner leer = new Scanner(System.in);
int numOp, i;
System.out.print("Ingrese cantidad de nmeros a leer: ");
numOp = leer.nextInt();
int[] numeros = new int[numOp];
for (i = 0; i < numOp; i++) {
System.out.print("Ingrese numero "
+ (i + 1) + ": ");
numeros[i] = leer.nextInt();
}
int aux;

for (i = 0; i < numOp; i++) {


for (int j = i + 1; j < numOp; j++) {
if (numeros[i] > numeros[j]) {
aux = numeros[i];
numeros[i] = numeros[j];
numeros[j] = aux;
}
}
}
for (i = 0; i < numOp; i++) {
System.out.println("numero " + (i + 1)

3
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

+ " : " + numeros[i]);

}
}
}

RESULTADO:

4. Proyecto: Programa04

Escribir una aplicacin que permita leer un numero n de enteros y luego determinar
el nmero mayor y el nmero menor ingresados.
FUENTE:
package programa04;

import java.util.Scanner;

public class Programa04 {

public static void main(String[] args) {

Scanner Leer = new Scanner(System.in);

int numOp;

System.out.print("Ingrese la cantidad de nmeros a leer:");

numOp = Leer.nextInt();

int[] numeros = new int[numOp];

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

4
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

System.out.print("Ingrese numero "

+ (i + 1) + ": ");

numeros[i] = Leer.nextInt();

int numMayor, numMenor;

numMayor = -999999999;

numMenor = -1 * numMayor;

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

if (numeros[i] > numMayor) {

numMayor = numeros[i];

if (numeros[i] < numMenor) {

numMenor = numeros[i];

System.out.println("\nEl nmero mayor es: "

+ numMayor);

System.out.println("\nEl nmero menor es: "

+ numMenor);

5
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

RESULTADO:

5. Proyecto: Programa05

Escribir una aplicacin que permita buscar un nmero en un arreglo unidimensional


mediante una bsqueda lineal o secuencial.

FUENTE:

package programa05;

import java.util.Scanner;

public class Programa05 {

public static void main(String[] args) {


Scanner Leer = new Scanner(System.in);

boolean encontrado = false;


int nBuscar;
int indice = -1;
int[] numeros = new int[6];
numeros[0] = 12;
numeros[1] = 13;
numeros[2] = 11;
numeros[3] = 14;
numeros[4] = 10;
numeros[5] = 18;

6
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

System.out.print("Ingrese el numero a buscar: ");


nBuscar = Leer.nextInt();

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


if (nBuscar == numeros[i]) {
encontrado = true;
indice = i;
}
}

if (encontrado) {
System.out.println("\nEl numero ocupa la posicion: " + (indice + 1));

} else {
System.out.println("\nEl numero no se encuentra en el arreglo");

}
}

RESULTADO:

6. Proyecto: Programa06
Escribir una aplicacin que permita buscar un numero en un arreglo unidimensional
mediante una bsqueda binaria.

FUENTE:
7
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

package programa06;
import java.util.Scanner;
public class Programa06 {

public static void main(String[] args) {

Scanner Leer = new Scanner(System.in);


int nBuscar;
int[] numeros = {8, 10, 10, 11, 12, 13, 15, 17, 18, 19};
int nPrimero = 0;
int nUltimo = 9;
int central = -1;
boolean encontrado = false;
System.out.print("Ingrese el nmero a buscar: ");
nBuscar = Leer.nextInt();
while ((nPrimero <= nUltimo) && (!encontrado)) {
central = (nPrimero + nUltimo) / 2;
if (nBuscar == numeros[central]) {
encontrado = true;
} else if (nBuscar > numeros[central]) {
nPrimero = central + 1;
} else {
nUltimo = central - 1;
}
}

if (encontrado) {
System.out.println("\nEl numero ocupa la posicin: "
+ (central + 1));
} else {

8
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

System.out.println("\nEl nmero no se encuentra en el arreglo");

}
}
}

RESULTADO:

ARREGLOS BIDIMENSIONALES

7. Proyecto: Programa07
Escribir una aplicacin que permita escribir en pantalla el contenido de una matriz
de 2 filas por 3 columnas.

FUENTE:
package programa07;

public class Programa07 {


public static void main(String[] args) {
int[][] numeros = new int[2][3];
numeros[0][0] = 0;
numeros[0][1] = 1;
numeros[0][2] = 2;
numeros[1][0] = 3;
numeros[1][1] = 4;

9
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

numeros[1][2] = 5;

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


for (int j = 0; j < 3; j++) {
System.out.println("[" + i
+ "][" + j + "] = "
+ numeros[i][j]);
}
}
}
}

RESULTADO:

8. Proyecto: Programa08
Escribir una aplicacin que permita escribir en pantalla el nmero mayor de cada
fila y columna de una matriz de 2 filas por 3 columnas.

FUENTE:
package programa08;

import java.util.Scanner;

public class Programa08 {

public static void main(String[] args) {

Scanner leer = new Scanner(System.in);

10
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

int[][] numeros = new int[2][3];


int[] mayorf = new int[2];
int[] mayorc = new int[3];

System.out.println("Ingrese datos para la matriz de 2x3");

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


for (int j = 0; j < 3; j++) {
System.out.print("Ingrese nmero para ["
+ i + "][" + j + "]: ");
numeros[i][j] = leer.nextInt();
}
}
mayorf[0] = numeros[0][0];
mayorc[0] = numeros[0][0];
for (int e = 0; e < 2; e++) {
for (int f = 0; f < 3; f++) {
if (numeros[e][f] > mayorf[e]) {
mayorf[e] = numeros[e][f];
}
}
}
System.out.print("\n");
//Mayor elemento por filas
for (int g = 0; g < 2; g++) {
System.out.println("El mayor nmero de la fila "
+ (g + 1) + " es: " + mayorf[g]);
}

//Mayor elemento por columnas


for (int h = 0; h < 3; h++) {
for (int i = 0; i < 2; i++) {
if (numeros[i][h] > mayorc[h]) {
mayorc[h] = numeros[i][h];
}
}
}
System.out.print("\n");
for (int j = 0; j < 3; j++) {
System.out.println("El mayor nmero de la columna "
+ (j + 1) + " es " + mayorc[j]);
}
}
}

11
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

RESULTADO:

9. Proyecto: Programa09
Escribir una aplicacin que permita ingresar valores en una matriz de 4 x 4
obteniendo como resultado la suma de la diagonal secundaria.

FUENTE:

package programa09;
import java.util.Scanner;

public class Programa09 {


public static void main(String[] args) {

Scanner Leer = new Scanner(System.in);


int i, j;
int suma = 0;
int[][] numeros = new int[4][4];
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++) {

12
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

System.out.print("Ingrese numero para ["


+ i + "][" + j
+ "]: ");
numeros[i][j] = Leer.nextInt();
if ((i + j) == 3) {
suma = suma + numeros[i][j];
}
}
}
System.out.println("\nLa suma de la "
+ "diagonal secundaria es:" + suma);
}
}

RESULTADO:

10. Proyecto: Programa10

13
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

Escriba y ordene un arreglo de cadenas, en las que se almacena los nombres de


algunas ciudades del Per.

FUENTE:
package programa10;
public class Programa10 {
public static void main(String[] args) {
String[] ciudades = {"Lima", "Cuzco",
"Iquitos", "Arequipa", "Callao",
"Trujillo", "Huancayo"};
String temp = "";
System.out.println("Nro de elementos: "
+ ciudades.length);
System.out.print("array1: [ ");
for (int i = 0; i < ciudades.length; i++) {
System.out.print(ciudades[i] + " ");
}
System.out.println("]");

// ordenacion del array


for (int j = 0; j < ciudades.length - 1; j++) {
for (int k = j + 1; k < ciudades.length; k++) {
if (ciudades[j].compareTo(ciudades[k]) > 0) {
temp = ciudades[j];
ciudades[j] = ciudades[k];
ciudades[k] = temp;
}
}
}
System.out.println("Array ordenado ascendente");

14
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

System.out.print("array1: [ ");
for (int m = 0; m < ciudades.length; m++) {
System.out.print(ciudades[m] + " ");
}
System.out.println("]");
}
}

RESULTADO:

11. Proyecto: Programa 11


Una funcin que reciba una cadena numrica y retorne el digito ms Alto.

FUENTE:

15
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

RESULTADO:

12. Proyecto: Programa12


Escribir un programa que convierta una fecha en formato "MMDDYYYY" al formato
"DD de mes del YYYY". Por ejemplo, para "12072006" debera devolver "7 de
diciembre del 2006".

16
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

FUENTE:

RESULTADO:

17
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

13. Proyecto: Programa13


Disee un proyecto que la permita manipular las distintas operaciones que se
pueden realizar con cadenas. Estas operaciones pueden ser:
Un mtodo que reciba una cadena y visualice la cantidad de caracteres.
Un mtodo que reciba una cadena y visualice el contenido de cada una de
sus posiciones.
Un mtodo que convierte a maysculas una cadena

FUENTE:
package programa13;

import javax.swing.JOptionPane;

public class Programa13 {

String cadena;

public static void main(String[] args) {


String cadena=new String();
JOptionPane.showMessageDialog(null,"Operaciones con cadenas","Aplicacion
Cadenas",JOptionPane.INFORMATION_MESSAGE);

cadena=JOptionPane.showInputDialog("Ingrese la Cadena");

longitud_cad(cadena);
posiciones_cad(cadena);
mayusculas_cad(cadena);

}
// metodo que recibe una cadena y visualiza la cantidad de caracteres.
static void longitud_cad(String cad) {
int tam=cad.length();
JOptionPane.showMessageDialog(null,"La cadena tiene "+tam+" caracteres","Aplicacion
Cadenas",JOptionPane.INFORMATION_MESSAGE);
}

18
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

// metodo que recibe una cadena y visualiza el contenido de cada una de sus posiciones.
static void posiciones_cad(String cad) {
int tam=cad.length();
char car=' ';
int i=0;
for (i=0;i<tam;i++){
car=cad.charAt(i);
JOptionPane.showMessageDialog(null,"caracter "+i+" : "+car);
}
}
// metodo que convierte a mayusculas una cadena
static void mayusculas_cad(String cad) {
String cadM;
cadM=cad.toUpperCase();
JOptionPane.showMessageDialog(null,"La cadena en Mayuscula es: " +cadM);
}
// mtodo que convierte a minscula una cadena
// mtodo que invierte una cadena
}
RESULTADO:

19
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

14. Proyecto: Programa14


Escribir un programa que limpie de ruidos una seal de entrada. La seal de entrada
ser una cadena con letras y nmeros y la salida ser la misma cadena eliminando
los nmeros. Por ejemplo para la cadena "Es2to0 3es u9na se88al c0on ru1id2os"
debe devolver "Esto es una seal con ruidos".

FUENTE:

20
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

RESULTADO:

21
ESCUELA PROFESIONAL DE INGENIERA DE SISTEMAS E
INFORMTICA
LENGUAJE DE PROGRAMACIN ORIENTADO A OBJETOS
Docente: Ing. Vicente Castro Lpez

22