Está en la página 1de 5

Universidad Nacional Mayor De San Marcos

(Universidad del Perú. Decana de América)

Facultad de Ingeniería Electrónica y Eléctrica


Escuela Académico Profesional de Ingeniería de Telecomunicaciones

ASIGNATURA:
Programaciòn orientada a objetos

DOCENTE:
Alex Alfonso Gonzalo Suarez

INTEGRANTES:

Alarcón Molina, Luis Eduardo


Carhuas Lizarbe, Harold Jacobed
Chero Quispe, Giancarlo Jesus
Cruzado Fernández, Marlon Vladimir
Reategui Amasifen, Sem Aram

2023
Resoluciòn de los ejercicios:

1. Escriba un programa que cree un arreglo de 40 elementos enteros


generados aleatoriamente. Luego,lo divide por la mitad y los almacena en
2 arreglos diferentes.
Considere que, al ejecutar el programa, debe verse el contenido de cada
arreglo de manera ordenada.

package com.mycompany.pregunta1;

/*
Autores:
Alarcon Molina, Luis Eduardo
Chero Quispe, Giancarlo Jesús
Cruzado Fernández, Marlon Vladimir
Carhuas Lizarbe, Harold Jacobed
Reategui Amasifen, Sem Aram
*/

import java.util.Arrays;
import java.util.Random;

public class pregunta1 {

public static void main(String[] args) {

// Primero crear el arreglo de 40 elementos


int[] arreglo = new int[40];

// Ahora generamos los números aleatorios y los almacenamos en el


primer arreglo
Random rnd = new Random();
for (int i = 0; i < arreglo.length; i++) {
arreglo[i] = rnd.nextInt(100);
}

// Dividimos el arreglo por la mitad y almacenamos cada mitad en un


segundo arreglo
int[] arreglo1 = Arrays.copyOfRange(arreglo, 0, arreglo.length/2);
int[] arreglo2 = Arrays.copyOfRange(arreglo, arreglo.length/2,
arreglo.length);

// Finalmente ordenamos cada arreglo


Arrays.sort(arreglo1);
Arrays.sort(arreglo2);

System.out.println("Primer arreglo:");
for (int i = 0; i < arreglo1.length; i++) {
System.out.print(arreglo1[i] + " ");
}
System.out.println();

System.out.println("Segundo arreglo:");
for (int i = 0; i < arreglo2.length; i++) {
System.out.print(arreglo2[i] + " ");
}
System.out.println();
}
}
2. Escriba un programa que gira los elementos de un arreglo de manera
cíclica a la izquierda 2 posiciones. Considere que, al ejecutar el programa,
deben verse ambos arreglos de manera ordenada.

package com.mycompany.pregunta2;

/*
Autores:
Alarcon Molina, Luis Eduardo
Chero Quispe, Giancarlo Jesús
Cruzado Fernández, Marlon Vladimir
Carhuas Lizarbe, Harold Jacobed
Reategui Amasifen, Sem Aram
*/
import java.util.Arrays;

public class pregunta2 {


public static void main(String[] args) {
int[] arr = {1, 2, 3, 4, 5};
int rotate = 2;

System.out.println("Array original: " + Arrays.toString(arr));


rotateArrayLeft(arr, rotate);
System.out.println("Array rotado: " + Arrays.toString(arr));
}

public static void rotateArrayLeft(int[] arr, int rotate) {


int n = arr.length;
rotate %= n; // Si rotate es mayor que el tamaño del arreglo

reverseArray(arr, 0, rotate-1);
reverseArray(arr, rotate, n-1);
reverseArray(arr, 0, n-1);
}

public static void reverseArray(int[] arr, int start, int end) {


while (start < end) {
int temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
start++;
end--;
}
}
}

También podría gustarte