Vous êtes sur la page 1sur 15

1.

Dado un vector x de n elementos reales, donde n es impar, disear una


funcin que calcule y devuelva la mediana de ese vector. La mediana es
el valor tal que la mitad de los nmeros son mayores que el valor y la otra
mitad son menores.
/*

* To change this license header, choose License Headers in Project


Properties.

* To change this template file, choose Tools | Templates

* and open the template in the editor.

*/

package ejercicio1;

/**

* @author Patow

*/

import java.util.Scanner;

public class Ejercicio1 {

public static Scanner s=new Scanner(System.in);

public static void main(String[] args) {

float M[]=new float[100];

float media = 0;

int c,j;

System.out.println( "Ingrese la dimension del vector ");

c= s.nextInt();
if (c%2 != 0){

for(j=1;j<=c;j=j+1)

System.out.println("Ingrese el valor");

M[j]=s.nextFloat();

for(j=1;j<=c;j++)

media+=M[j];

media=media/c;

System.out.println("La mediana del vector


es "+ media);

}
5.-Se tienen los nombres de los N alumnos de una escuela, adems de su
promedio general. Realice un algoritmo para capturar esta informacin, la
cual se debe almacenar en arreglos, un vector para el nombre y otro para el
promedio, despus de capturar la informacin se debe ordenar con base en
su promedio, de mayor a menor, los nombres deben corresponder con los
promedios. Realice el algoritmo y represntelo mediante el diagrama de flujo,
el pseudocdigo y el diagrama N/S

/*

* To change this license header, choose License Headers in Project


Properties.

* To change this template file, choose Tools | Templates

* and open the template in the editor.

*/

package ejercicio.pkg2;

import java.util.Scanner;

/**

* @author Patow

*/

public class Ejercicio2 {

public static Scanner s=new Scanner(System.in);

public static void main(String[] args) {

int notas[]=new int[10];

String nombres[]=new String [20];

int n,j,i;

int mayor;

int auxiliar[]=new int[10];


System.out.println("Cuantos alumnos desea ingresar: ");

n=s.nextInt();

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

System.out.println(" Ingrese el nombre del alumno ");

nombres[i]=s.nextLine();

System.out.println(" Ingrese el promedio del alumno ");

notas[i]=s.nextInt();

auxiliar[i] = notas[i];

for (i = 1; i < n; ++i) {

for (j = 0; j < n-i ; ++j) {

if( auxiliar[j] > auxiliar[j+1]){

mayor = auxiliar[j];

auxiliar[j] = auxiliar[j+1];

auxiliar[j+1] = mayor;

System.out.println("\nNombre y promedio de los estudiantes


registrados\n");

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

for (j = 0; j < n ; ++j) {

if(notas[j] == auxiliar[i]){

System.out.println("%s promedio %d \n");

}
}

9.-Elabore un algoritmo que lea los datos de una matriz cuadrada de tamao
N y realice las siguientes operaciones:

Imprima la suma de los elementos de la diagonal principal


Imprima cuntos "0" hay en la matriz
Imprima una matriz igual pero con las diagonales intercambiadas.
Imprima el nmero mayor de la matriz
/*

* To change this license header, choose License Headers in Project


Properties.

* To change this template file, choose Tools | Templates

* and open the template in the editor.

*/

package ejercicio.pkg9;

import java.util.Scanner;

/**

* @author Patow

*/

public class Ejercicio9 {

public static Scanner s=new Scanner(System.in);

/**

* @param args the command line arguments

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

int i,j,f;

int M[][]=new int[100][100];

System.out.println("Ingrese el tamao N para la matriz cuadrada ");

f=s.nextInt();

for(i=1;i<=f;i++)

for(j=1;j<=f;j++)

System.out.println("Ingrese el elemento de la posicin


%i,%i "+ i + j);

M[i][j]=s.nextInt();

System.out.println("\n");

for(i=1;i<=f;i++)

for(j=1;j<=f;j++)

System.out.println("%i "+M[i][j]);

System.out.println("\n");

int aux=0;

for(i=1;i<=f;i++)

for(j=1;j<=f;j++)

if(i==j)
{

aux=aux+M[i][j];

System.out.println("\nLa suma de la diagonal principal es %i\n"+


aux);

int aux1=0;

for(i=1;i<=f;i++)

for(j=1;j<=f;j++)

if(M[i][j]==0)

aux1=aux1+1;

System.out.println("\nEl nmero de ceros es %i\n\n"+ aux1);

int a;

int P[]=new int[100];

int S[]=new int[100];

for (i=1;i<=f;i++)

P[i]=M[i][i];

a=f;

for (i=1;i<=f;i++)

S[i]=M[i][a];
a--;

a=f;

for (i=1;i<=f;i++)

M[i][i]=S[i];

M[i][a]=P[i];

a--;

System.out.println("Matriz con las Diagonales invertidas\n");

for(i=1;i<=f;i++)

for(j=1;j<=f;j++)

System.out.println("%i "+ M[i][j]);

System.out.println("\n");

System.out.println("\n");

aux=0;

for (i=1;i<=f;i++)

for(j=1;j<=f;j++)

if(M[i][j]>aux)

aux=M[i][j];

}
System.out.println("El mayor nmero es %i"+ aux);

13.-Se tiene un arreglo de 15 filas y 12 columnas. Realice un algoritmo que


permita leer el arreglo y que calcule y presente los resultados siguientes:

El menor elemento del arreglo; la suma de los elementos de las cinco


primeras filas del arreglo; y el total de elementos negativos en las
columnas de la quinta a la nueve.
/*

* To change this license header, choose License Headers in Project


Properties.

* To change this template file, choose Tools | Templates

* and open the template in the editor.

*/

package ejercicio.pkg13;

/**

* @author Patow

*/

public class Ejercicio13 {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

int i,j,min,sum,can;

int a[][]= {{0, 15, 20, 25, 30, -4, -4, 5, 4, 9, -3, 4},{4, 1, 2, 5, 32, 3,
23, 51, 41, 3, -31, 43}, {10, -15, 24, 25, 2, 23, 4, 5, 67, 95, 43, 11},{4,
-11, 3, 25, 3, -42, -49, 57, 45, 99, -30, 77},{3, 90, 68, 255, -89, 79,
122, 55, 59, 93, 32, -67},{7, 87, -35, 205, -32, 49, 37, 78, 45, -47, 49,
-53},{1, -45, -61, 501, -8, 81, 12, 512, 15, -19, 29, 27},{-8, -53, 26,
11, -31, 28, 27, 30, -37, -41, 46, -49},{-1, 32, 29, -145, -67, -69, -87, -
97, 91, 56, 94, -17},{7, 87, -37, 45, -76, -77, 87, 85, 94, -39, 31, 84},{9,
1, -49, 912, 46, 94, -35, -55, -57, 84, 911, 4},{-4, -89, -43, -12, -97, -
87, -33, -76, -90, 13, 42, 85},{4, 4, 20, -45, 31, -45, -46, 57, 48, 91, -
23, 74},{-1, -5, 20, 51, 3, -5, -9, 88, -99, -66, 55, -12},{3, 77, 20, 53,
-32, -67, -98, -34, -34, -12, -97, -45}};

min=a[0][0];

sum=0;

can=0;

System.out.println("ARREGLO DE 15 FILAS Y 12 COLUMNAS");

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

for(j=0;j<12;j++)

System.out.println(a[i][j]);

//-----Hallando el menor numero de la matriz

if(min>a[i][j])

min=a[i][j];

//------------- Suma de cinco primeras filas

if(i<=4)

sum=sum+a[i][j];

//---------cantidad de elemento negativos de la fial 5 a la 9

if((i>=4)&&(i<=8))

if(a[i][j]<0)

can=can+1;

}
}

//---------------

System.out.println("-------- MENOR ELEMENTO DEL ARREGLO


====== : "+min);

System.out.println("-------- SUMA DE LAS 5 PRIMERAS FILAS


====== : "+sum);

System.out.println("--------CANTIDAD DE ELEMENTOS NEGATIVOS DE LA


FILA 5 A LA 9==: "+can);

17. Una compaa de transporte cuenta con cinco choferes, de los cuales
se conoce: nombre, horas trabajadas cada da de la semana (seis das) y
sueldo por hora. Realice un algoritmo que:

a) Calcule el total de horas trabajadas a la semana para cada trabajador.

b) Calcule el sueldo semanal para cada uno de ellos.

c) Calcule el total que pagar la empresa.

d) Indique el nombre del trabajador que labora ms horas el da lunes.

e) Imprima un reporte con todos los datos anteriores.

/*

* To change this license header, choose License Headers in Project


Properties.
* To change this template file, choose Tools | Templates

* and open the template in the editor.

*/

package javaapplication5;

import java.util.Scanner;

/**

* @author Patow

*/

public class JavaApplication5 {

public static Scanner s=new Scanner(System.in);

public static void main(String[] args) {

String trab[]=new String[50];

int hor[][]=new int[5][6],f[]=new int[5],c[]=new


int[5],val1,val2=0,val3=0,val4=0,val5=0;

System.out.println("Remuneracion por hora :");

val1=s.nextInt();

for(int i=1;i<=5;i++)

System.out.println("Ingrese nombre del trabajador :");

trab[i]=s.nextLine();

for(int j=1;j<=6;j++)

System.out.println("Ingrese horas trabajadas al dia "+j);


hor[i][j]=s.nextInt();

val2=val2+ hor[i][j];

f[i]=val2*val1;

c[i]=val2;

val3=val3+c[i];

val2=0;

for (int i=1;i<=5;i++)

System.out.println("Total de horas trabajadas "+trab[i]+" "+c[i]);

System.out.println("Sueldo del trabajador "+trab[i]+ f[i]);

if(hor[i][1]>val4)

val4=hor[i][1];

val5=i;

System.out.println("Total a pagar por la empresa:"+val3);

System.out.println("trabajador que ha laborado mas horas el dia lunes:"


+trab[val5]);

21. Escribir el cdigo de un mtodo que devuelva una palabra (un vector
de caracteres). El mtodo debe generar un vector de caracteres aleatorios,
recibiendo como argumentos: la longitud del vector y el rango de valores
permitidos (rango al que deben pertenecer los caracteres aleatorios que se
elijan como valores).

/*
* To change this license header, choose License Headers in Project
Properties.

* To change this template file, choose Tools | Templates

* and open the template in the editor.

*/

package pkg21;

/**

* @author Patow

*/

public class Main {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

String [] abecedario = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J",

"K", "L", "M","N","O","P","Q","R","S","T","U","V","W", "X","Y","Z" };

int numRandon = (int) Math.round(Math.random() * 26 ) ;

int numRandon1 = (int) Math.round(Math.random() * 26 ) ;

int numRandon2= (int) Math.round(Math.random() * 26 ) ;

int numRandon3 = (int) Math.round(Math.random() * 26 ) ;

int numRandon4 = (int) Math.round(Math.random() * 26 ) ;

int numRandon5 = (int) Math.round(Math.random() * 26 ) ;

System.out.println(
abecedario[numRandon]+abecedario[numRandon1]+abecedario[numRando
n2]+abecedario[numRandon3]+abecedario[numRandon4]+abecedario[num
Randon5] );