Actividad Unidad 2

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 23

Realizar los siguientes ejercicios utilizando como lenguaje 

JAVA:

1. Utilizando un arrays, escribir un programa que


visualice un cuadro mágico de orden impar n,
comprendido entre 3 y 11. El usuario debe elegir el
valor de n.
“Un cuadrado mágico se compone de números enteros
comprendidos entre 1 y n. La suma de los números
que figuran en cada fila, columna y diagonal son
iguales”.
Ejemplo:
8 1 6
3 5 7
4 9 2

Un método de generación consiste en situar el número


1 en el centro de la primera fila, el número siguiente en
la casilla situada por encima y a la derecha de la
última es la primera. En el caso de que el número
generado caiga en una casilla ocupada, se elige la
casilla que se encuentre debajo del número que acaba
de ser situado.

R//

package estructura_of_datos;

public class CuadroMagico {

int NIVEL=5;

int arreglo[][];

public CuadroMagico () {

arreglo = new int [NIVEL][NIVEL];


generar();

public void generar () {


int mitad = NIVEL/2;
int ubicacionC = mitad;
int ubicacionF = 0;

arreglo[ubicacionF] [ubicacionC] =1;

int ubicacionFActual = ubicacionF;


int ubicacionCActual = ubicacionC;

for (int i=2; i<=(Math.pow(arreglo.length,2)); i++){

ubicacionF--;
ubicacionC--;

if (ubicacionF<0) {

ubicacionF = arreglo.length-1;
}

if(ubicacionC<0) {
ubicacionC = arreglo.length-1;
}

if (arreglo[ubicacionF][ubicacionC]==0) {

arreglo[ubicacionF][ubicacionC]=i;
}else {

ubicacionF = ubicacionFActual+1;
ubicacionC = ubicacionCActual;
arreglo[ubicacionF][ubicacionC]=i;
}

ubicacionFActual = ubicacionF;
ubicacionCActual = ubicacionC;

mostrarArreglo();

public void mostrarArreglo () {

for(int i=0;i<arreglo.length;i++) {
for(int j=0; j<arreglo.length;j++) {
System.out.print(arreglo[i][j]+"\t");
}
System.out.println();
}

}
public static void main (String... args) {

new CuadroMagico();

2. Se dispone de N temperaturas almacenadas en un array. Se


desea calcular su media y obtener el número de temperaturas
mayores o iguales que la media.

R//

package estructura_of_datos;

import java.util.*;
public class nTemperaturas {

public static void main(String[] args) {


// TODO Auto-generated method stub

int suma=0;

int TemperaturaMayor=0;

int TemperaturaMenor = 0;

int media = 0;

System.out.println("Introduce N temperaturas para almacenarlas en


un array");

int n=new Scanner (System.in).nextInt();

int [] Temperaturas=new int [n];

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

System.out.println("Introduce la temperatuira para la


pocision "+i);

Temperaturas [i]=new Scanner (System.in).nextInt();

suma=suma+Temperaturas[i];

media=suma/n;
}

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

if (Temperaturas[i]>media) {

TemperaturaMayor=Temperaturas[i];

System.out.println(" numero de temperatura mayores a la media: "+


i+ ": "+ TemperaturaMayor);

}else {

if (Temperaturas[i]==media) {
TemperaturaMenor=Temperaturas[i];
System.out.println(" numero de temperatura iguales a la
media son: "+i+ ": "+ TemperaturaMenor);
}
}
}

System.out.println(" La media es: "+suma/n);

3. Leer una matriz de 3 por 3 elementos y calcular la suma de cada


una de sus filas y columnas, dejando dichos resultados en dos
vectores, uno de la suma de las filas y otro de las columnas.

R//

package estructura_of_datos;

import java.util.*;

public class CalcularFilasColumnas {

public static void main (String []args) {

int sumf[]=new int [3];

int sumc[]=new int [3];

int Matriz [][]=new int[3][3];

Scanner m=new Scanner (System.in);


for (int x=0; x < Matriz.length; x++) {

for (int y=0; y < Matriz[x].length; y++) {

System.out.println("Introduce el numero en: "+ x+", "+ y + "]


");

Matriz [x][y]= m.nextInt();


}

for (int x=0; x < Matriz.length; x++) {

System.out.println(" ");
for (int y=0; y < Matriz[x].length; y++) {
System.out.print ("[" + x + "," + y + "] = " + Matriz[x][y]);
}
}

System.out.println( " ");

//SUMA FILAS
for (int i = 0; i < Matriz.length; i++) {

for (int j = 0; j < Matriz[i].length; j++) {


sumf[j]=sumf[j]+Matriz[i][j];
}

for(int filas:sumf) {
System.out.println("La suma de los valores de la fila "+(" ")+"
es: "+filas);
}

//SUMA COLUMNAS
for (int i = 0; i < Matriz[0].length; i++) {

for (int j = 0; j < Matriz.length; j++) {


sumc[i]=sumc[i]+Matriz[j][i];
}

for(int columnas:sumc) {
System.out.println("La suma de los valores de la columna "+
(" ")+" es: "+columnas);
}
}

4. Leer las notas de 15 estudiantes en un arreglo y ordenarlo con


el fin imprimirlo de forma Descendente

R//

package estructura_of_datos;

import java.util.*;

public class OrdenarFormaDescendenteArray {

public static void main(String[] args) {


// TODO Auto-generated method stub

double notas[]=new double [15];

int i,j;
double aux;

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

System.out.println("Nota del estudiante : "+i);

notas[i]= new Scanner (System.in).nextDouble();

}
System.out.println();

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

for (j=i+1;j<15;j++) {

if (notas[i]<notas[j]) {
aux=notas[i];
notas[i]=notas[j];
notas[j]=aux;

}
}
}

System.out.print(" notas en forma Descendente: ");

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

System.out.print(notas[i]+", ");
}

5. Se tiene un vector que va a contener como elementos, donde


cada elemento es un registro: Código del Vendedor, Nombre,
Salario básico, Valor Venta, salario neto de 10 empleados. Se
debe imprimir por cada empleado: • Código del vendedor •
Comisión. La comisión se calcula así:

• Si Valor Venta oscila entre 250 y 300 la Comisión = 20% Valor


Venta

• Si Valor Venta oscila entre 301 y 450 la Comisión = 25% Valor


Venta
• Si Valor Venta >450 la Comisión = 30% Salario Básico Se debe
imprimir al final de todo el proceso:

• Total pagado en comisión por cada rango

• Total pagado en neto.

R//

package estructura_of_datos;

import java.util.*;

public class VectorEmpleados {

public static void main(String[] args) {


// TODO Auto-generated method stub

int totalcomisionA = 0;

int totalcomisionB=0;

int totalcomisionC=0;

int ValorV[]=new int[10];

int SalarioN[]=new int[10];

int comision[]=new int [10];

int salarioB=1000;

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


//Si Valor Venta oscila entre 250 y 300 la Comisión = 20%
Valor Venta

System.out.println("Introduce el precio de la venta "+i);

ValorV[i]=new Scanner (System.in).nextInt();

if (ValorV[i]>250 && ValorV[i]<300) { //CALCULAR LA COMISION

comision[i]=(20*ValorV[i])/100;
SalarioN[i]+=comision[i];

totalcomisionA =+ comision[i];

if (ValorV[i]>301 && ValorV[i]<450) {

comision[i]=(25*ValorV[i])/100; //CALCULAR LA
COMISION
SalarioN[i]+=comision[i];

totalcomisionB =+ comision[i];
}

if (ValorV[i]>450) {

comision[i]=(30*ValorV[i])/100; //CALCULAR LA
COMISION
SalarioN[i]+=comision[i];

totalcomisionC =+ comision[i];
}

Empleados []empleado=new Empleados [10];

empleado[0]=new Empleados("empleado1",salarioB,ValorV[0],SalarioN[0],1);

empleado[1]=new Empleados(" empleado2


",salarioB,ValorV[1],SalarioN[1],2);

empleado[2]=new Empleados("empleado3",salarioB,ValorV[2],SalarioN[2],3);

empleado[3]=new Empleados("empleado4",salarioB,ValorV[3],SalarioN[3],4);

empleado[4]=new Empleados("empleado5",salarioB,ValorV[4],SalarioN[4],5);

empleado[5]=new Empleados("empleado6",salarioB,ValorV[5],SalarioN[5],6);

empleado[6]=new Empleados("empleado7",salarioB,ValorV[6],SalarioN[6],7);
empleado[7]=new Empleados("empleado8",salarioB,ValorV[7],SalarioN[7],8);

empleado[8]=new Empleados("empleado9",salarioB,ValorV[8],SalarioN[8],9);

empleado[9]=new
Empleados("empleado10",salarioB,ValorV[9],SalarioN[9],10);

for (Empleados e:empleado) {


System.out.println(e.devuelveDatos());
}

for (int i=0;i<10;i++) { // COMISIONES

System.out.println("Total pagado en comisiones es "+ comision[i]+ "


Al empledo "+i);
}

System.out.println("////////////////////////");

System.out.println(" Total pagado en comision en el rango entre 250 y 300


es: "+totalcomisionA);

System.out.println(" Total pagado en comision en el rango entre 301 y 450


es: "+totalcomisionB);

System.out.println(" Total pagado en comision en el rango entre >450 es:


"+totalcomisionC);

for (Empleados e:empleado) {


System.out.println(e.salarioNeto()); //SALARIO NETO
}

class Empleados {

String Nombre;

int Salariobasico;

double ValorVenta;
int Salarioneto;

private int id;

public Empleados ( String nom, int Salariob, double ValorV, int


salarioN,int id ){

Nombre=nom;

Salariobasico=Salariob;

ValorVenta=ValorV;

Salarioneto=salarioN;

this.id=id;

public String devuelveDatos() {

return "El codigo del empleado es: "+id +"-- El nombre es:
"+Nombre+" --El salario basico es: "+Salariobasico+ " \n"

+" -- El valor de la venta es: " +ValorVenta;

public String salarioNeto () {

int Total=Salarioneto+Salariobasico;
return " El total pagado en Neto es: "+ Total + " Al empleado "+
Nombre;
}

}
6. Realizar un programa que solicite al usuario desde un vector
crear una lista de números por teclado luego imprimir el
vector de forma ordenada con el Método de Burbuja
(Descendentemente).

R//

package estructura_of_datos;

import java.util.*;

public class MetodoBurbuja {

public static void main(String[] args) {


// TODO Auto-generated method stub

System.out.println("Introduce la cantidad del arreglo");

int cantidad=new Scanner (System.in).nextInt();

int num[]= new int [cantidad];

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

System.out.println("posicion "+i);

int n=new Scanner (System.in).nextInt();

num[i]=n;
}

int i;
boolean flag = true;
int temp;

while ( flag )
{
flag = false;
for( i=0; i < num.length -1; i++ )
{
if ( num[ i ] < num[i+1] )
{
temp = num[ i ];
num[ i ] = num[ i+1 ];
num[ i+1 ] = temp;
flag = true;
}
}
}

System.out.print(" El vector ordenado en burbuja ");

for (int i1=0;i1<cantidad;i1++) {

System.out.print( " "+num[i1]);


}
}

7. En un Vector se almacenan las calificaciones finales de N


alumnos. Realizar un programa que calcule e imprima:

o El promedio general del grupo


o Número de alumnos aprobados y número de alumnos
reprobados o Porcentaje de alumnos aprobados y porcentaje
de alumnos reprobados.

O Número de alumnos cuya calificación fue mayor o igual a 4.

R//

package estructura_of_datos;

import java.util.*;

public class VectorCalificaciones {

public static void main(String[] args) {


// TODO Auto-generated method stub

double suma = 0;

double promedio=0;

int aprobados=0;;

int reprobados=0;

double resultadoA=0;

double resultadoR=0;

int mayor=0;

int igual=0;

System.out.println(" Ingresar la cantidad de alumnos ");

int N=new Scanner (System.in).nextInt();

int Alumnos []=new int [N];


int cont=1;

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

System.out.println(" Nota " +cont);

int Alumnos1=new Scanner (System.in).nextInt();

Alumnos[i]=Alumnos1;

cont++;

if (Alumnos[i]>=3) {

aprobados+=1;

}else {

reprobados+=1;
}

if (Alumnos[i]>4) {

mayor++;
}

if (Alumnos[i]==4) {

igual++;
}

for (int j=0;j<N;j++) {

suma+=Alumnos[j];

promedio=suma/N;

//Calculando porcentaje
resultadoA = (aprobados * 100) / N;

resultadoR = (reprobados * 100) / N;

System.out.println("El promedio de las notas es: "+ promedio);

System.out.println("El numero de alumnos aprovados es: "+


aprobados);

System.out.println("El numero de alumnos reprovados es: "+


reprobados);

System.out.println("El porcentaje de alumnos aprobados es: "+


resultadoA);

System.out.println("El porcentaje de alumnos reprobados es: "+


resultadoR);

System.out.println("La cantidad de numeros mayores a 4 es: "+ mayor


);

System.out.println("La cantidad de numeros iguales a 4 es: "+ igual


);

}
}
8. En una matriz de 5 Filas X 4 Columnas, calcule la suma de las
filas y de las columnas, dejando los resultados en dos
vectores, uno con la sumas de las filas y el otro con las suma
de las columnas, imprima los dos vectores resultantes.

R//

package estructura_of_datos;

import java.util.Scanner;

public class SumaMatriz {

public static void main(String[] args) {


// TODO Auto-generated method stub

int sumf[]=new int [5];

int sumc[]=new int [4];

int Matriz [][]=new int[5][4];

Scanner m=new Scanner (System.in);

for (int x=0; x < Matriz.length; x++) {

for (int y=0; y < Matriz[x].length; y++) {

System.out.println("Introduce el numero en: "+ x+", "+


y + "] ");

Matriz [x][y]= m.nextInt();


}

for (int x=0; x < Matriz.length; x++) {

System.out.println(" ");
for (int y=0; y < Matriz[x].length; y++) {
System.out.print ("[" + x + "," + y + "] = " + Matriz[x]
[y]);
}
}

System.out.println( " ");

//SUMA FILAS
for (int i = 0; i < Matriz.length; i++) {

for (int j = 0; j < Matriz[i].length; j++) {


sumf[j]=sumf[j]+Matriz[i][j];
}

for(int filas:sumf) {
System.out.println("La suma de los valores de la fila "+("
")+" es: "+filas);
}

//SUMA COLUMNAS
for (int i = 0; i < Matriz[0].length; i++) {

for (int j = 0; j < Matriz.length; j++) {


sumc[i]=sumc[i]+Matriz[j][i];
}

for(int columnas:sumc) {
System.out.println("La suma de los valores de la
columna "+(" ")+" es: "+columnas);
}

9. Suponga que se tiene la siguiente matriz de números:


Calcule e Imprima, cuantos “ceros” aparecen en cada renglón de
la matriz.

R//

package estructura_of_datos;

public class Ceros_Matriz {

public static void main(String[] args) {


// TODO Auto-generated method stub

int cont=0;

int a=1;

int []contF=new int [5];

int [] [] matrix={

{0,2,5,7,6},
{0,0,0,3,8},
{2,9,6,3,4},
{1,5,6,1,4},
{0,9,2,5,0}
};

for (int x=0; x < matrix.length; x++) {

for (int i=0;i < matrix.length;i++) {


if (matrix[x][i] ==0) {

cont++;

contF[x]++;// SUMANDO CEROS DE CADA REGLON DE LA FILA

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

System.out.println(" ceros en la fila "+ a +" :: "+ contF[i]);


a++;

System.out.println("suma de todos los ceros "+cont);

}
10. Llenar una matriz de 3x3 e Imprima su traspuesta (la
traspuesta se consigue intercambiando filas por columnas y
viceversa).

R//
package estructura_of_datos;

public class Ceros_Matriz {

public static void main(String[] args) {


// TODO Auto-generated method stub

int cont=0;

int a=1;

int []contF=new int [5];

int [] [] matrix={

{0,2,5,7,6},
{0,0,0,3,8},
{2,9,6,3,4},
{1,5,6,1,4},
{0,9,2,5,0}
};

for (int x=0; x < matrix.length; x++) {

for (int i=0;i < matrix.length;i++) {

if (matrix[x][i] ==0) {

cont++;

contF[x]++;// SUMANDO CEROS DE CADA REGLON DE LA FILA

}
}

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

System.out.println(" ceros en la fila "+ a +" :: "+ contF[i]);


a++;

System.out.println("suma de todos los ceros "+cont);

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy