juan009
01/08/2012, 23:07
SON 3 EJERCICIO PARECIDOS, EN EL SENTIDO DE LA UTILIZACION DE LA CLASE PRINCIPAL
import java.text.*;
public class Ejercicios {
public void Ejer4() {
int N = 10;
int M[] = new int[N];
System.out.print("Contenido inicial");
for(int i=0; i<N; i++) {
M[i] = 10 + (int)(Math.random()*90);
System.out.print(" " + M[i]);
}
System.out.println();
verOrden(M, N);
System.out.print("Contenido inicial");
M[0] = 10 + (int)(Math.random()*10);
System.out.print(" " + M[0]);
for(int i=1; i<N; i++) {
M[i] = M[i-1] + 1 +(int)(Math.random()*10);
System.out.print(" " + M[i]);
}
System.out.println();
verOrden(M, N);
System.out.print("Contenido inicial");
M[0] = 99 - (int)(Math.random()*10);
System.out.print(" " + M[0]);
for(int i=1; i<N; i++) {
M[i] = M[i-1] - 1 - (int)(Math.random()*10);
System.out.print(" - " + M[i]);
}
System.out.println();
verOrden(M, N);
}
private void verOrden(int M[], int N) {
boolean ASC = true;
boolean DES = true;
int ANT = M[0];
for(int i=1; i<N; i++) {
if(M[i] < ANT ) ASC = false;
if(M[i] > ANT ) DES = false;
ANT = M[i];
}
if(ASC) System.out.println("Orden ascendente\n");
if(DES) System.out.println("Orden descendente\n");
if(!ASC && !DES) System.out.println("Desordenado\n");
}}
import java.util.Scanner;
public class Principal {
public static void main(String args[]) {
Ejercicios Ejer = new Ejercicios();
Scanner entrada = new Scanner(System.in);
Ejer.Ejer4();
}}
EJERCICIO 2
import java.text.*;
public class Ejercicios {
public void Ejer5() {
int N = 10;
int M[][] = new int[3][N];
int i, S, E, TOPE, SUMA;
S = (int)(Math.random()*N/2) - 1;
if(S==-1) E=-1;
else E=S + (int)(Math.random()*(N-S-1));
TOPE = (int)(Math.random()*N) - 1;
for(i=0; i<3; i++)
for(int j=0; j<N; j++) M[i][j] = 10 + (int)(Math.random()*50);
System.out.print("indice ");
for(i=0; i<N; i++) System.out.print(i + " ");
System.out.println();
System.out.print("Fila1");
for(i=0; i<N; i++) System.out.print(" " + M[0][i]);
System.out.println(" S = " + S + ", E = "+ E);
System.out.print(" ");
for(i=0; i<N; i++) {
if(i<S || i>E) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en cola\n");
System.out.print("Fila2");
for(i=0; i<N; i++) System.out.print(" " + M[1][i]);
System.out.println(" TOPE = " + TOPE);
System.out.print(" ");
for(i=0; i<N; i++) {
if(i>TOPE) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en pila\n");
System.out.print("Fila3");
for(i=0; i<N; i++) System.out.print(" " + M[2][i]);
System.out.println();
i = -1;
while(E < N-1){
i++;
SUMA = M[2][i];
if(i < S || i>E) SUMA = SUMA + M[0][i];
if(i > TOPE) SUMA = SUMA + M[1][i];
E++;
M[0][E] = SUMA;
if(S==-1) S=0;
}
System.out.println("------------------------------------------------------------------------------");
System.out.println("Despues de agregar datos a la cola");
System.out.print("indice ");
for(i=0; i<N; i++) System.out.print(i + " ");
System.out.println();
System.out.print("Fila1");
for(i=0; i<N; i++) System.out.print(" " + M[0][i]);
System.out.println(" S = " + S + ", E = "+ E);
System.out.print(" ");
for(i=0; i<N; i++) {
if(i<S || i>E) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en cola");
while(TOPE < N-1 && S>-1) {
TOPE++;
M[1][TOPE] = M[0][S];
S++;
if(S > E) {
S = -1;
E = -1;
}
}
System.out.println("------------------------------------------------------------------------------");
System.out.println("Despues de meter datos en la pila");
System.out.print("indice ");
for(i=0; i<N; i++) System.out.print(i + " ");
System.out.println();
System.out.print("Fila2");
for(i=0; i<N; i++) System.out.print(" " + M[1][i]);
System.out.println(" TOPE = " + TOPE);
System.out.print(" ");
for(i=0; i<N; i++) {
if(i>TOPE) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en pila");
}
}
import java.util.Scanner;
public class Principal {
public static void main(String args[]) {
Ejercicios Ejer = new Ejercicios();
Scanner entrada = new Scanner(System.in);
Ejer.Ejer5();
}}
EJERCICIO 3
import java.text.*;
public class arreglo {
public void cola() {
int N1 = 10;
int COLA1[] = new int[N1];
int N2 = 9;
int COLA2[] = new int[N2];
int N3 = 8;
int PILA[] = new int[N3];
int ANT, S1, E1, S2, E2, TOPE;
S1 = (int)(Math.random()*N1/2) - 1;
if(S1==-1) E1=-1;
else E1=S1 + (int)(Math.random()*(N1-S1-1));
S2 = (int)(Math.random()*N2/2) - 1;
if(S2==-1) E2=-1;
else E2=S2 + (int)(Math.random()*(N2-S2-1));
TOPE = -1;
ANT = 10 + (int)(Math.random()*10);
for(int i=0; i<N1; i++) {
if(i<S1 || i>E1) COLA1[i] = 10 +(int)(Math.random()*90);
else {
COLA1[i] = ANT +1 + (int)(Math.random()*10);
ANT = COLA1[i];
}
}
ANT = 10 + (int)(Math.random()*10);
for(int i=0; i<N2; i++) {
if(i<S2 || i>E2) COLA2[i] = 10 +(int)(Math.random()*90);
else {
COLA2[i] = ANT +1 + (int)(Math.random()*10);
ANT = COLA2[i];
}
}
//se llena el arreglo PILA con valores al azar entre 10 y 90
for(int i=0; i<N3; i++) PILA[i] = 10 + (int)(Math.random()*90);
System.out.print("indice ");
for(int i=0; i<N1; i++) System.out.print(i + " ");
System.out.println();
System.out.print("Cola1");
for(int i=0; i<N1; i++) System.out.print(" " + COLA1[i]);
System.out.println(" S = " + S1 + ", E = "+ E1);
System.out.print(" ");
for(int i=0; i<N1; i++) {
if(i<S1 || i>E1) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en cola\n");
System.out.print("Cola2");
for(int i=0; i<N2; i++) System.out.print(" " + COLA2[i]);
System.out.println(" S = " + S2 + ", E = "+ E2);
System.out.print(" ");
for(int i=0; i<N2; i++) {
if(i<S2 || i>E2) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en cola\n");
System.out.print("Pila1");
for(int i=0; i<N3; i++) System.out.print(" " + PILA[i]);
System.out.println(" TOPE = " + TOPE);
System.out.print(" ");
for(int i=0; i<N3; i++) {
if(i>TOPE) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en pila\n");
//Comienzan las acciones solicitadas
while(S1>-1 && S2>-1 && TOPE<N3-1) {
TOPE++;
if(COLA1[S1]< COLA2[S2]) {
PILA[TOPE] = COLA1[S1];
S1++;
if(S1>E1) {
S1=-1;
E1=-1;
}
}
else {
PILA[TOPE] = COLA2[S2];
S2++;
if(S2>E2) {
S2=-1;
E2=-1;
}
}
}
while(S1>-1 && TOPE<N3-1) {
TOPE++;
PILA[TOPE] = COLA1[S1];
S1++;
if(S1 > E1) {
S1=-1;
E1=-1;
}
}
while(S2>0 && TOPE<N3-1) {
TOPE++;
PILA[TOPE] = COLA2[S2];
S2++;
if(S2 > E2) {
S2 = -1;
E2 = -1;
}
}
System.out.println("------------------------------------------------------------------------------");
System.out.println("Despues realizadas las acciones");
System.out.print("indice ");
for(int i=0; i<N1; i++) System.out.print(i + " ");
System.out.println();
System.out.print("Cola1");
for(int i=0; i<N1; i++) System.out.print(" " + COLA1[i]);
System.out.println(" S = " + S1 + ", E = "+ E1);
System.out.print(" ");
for(int i=0; i<N1; i++) {
if(i<S1 || i>E1) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en cola\n");
System.out.print("Cola2");
for(int i=0; i<N2; i++) System.out.print(" " + COLA2[i]);
System.out.println(" S = " + S2 + ", E = "+ E2);
System.out.print(" ");
for(int i=0; i<N2; i++) {
if(i<S2 || i>E2) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en cola\n");
System.out.print("Pila1");
for(int i=0; i<N3; i++) System.out.print(" " + PILA[i]);
System.out.println(" TOPE = " + TOPE);
System.out.print(" ");
for(int i=0; i<N3; i++) {
if(i>TOPE) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en pila\n");
} }
import java.util.Scanner;
public class usararreglo {
public static void main(String args[]) {
arreglo Ejer = new arreglo();
Scanner entrada = new Scanner(System.in);
Ejer.cola();
}}
import java.text.*;
public class Ejercicios {
public void Ejer4() {
int N = 10;
int M[] = new int[N];
System.out.print("Contenido inicial");
for(int i=0; i<N; i++) {
M[i] = 10 + (int)(Math.random()*90);
System.out.print(" " + M[i]);
}
System.out.println();
verOrden(M, N);
System.out.print("Contenido inicial");
M[0] = 10 + (int)(Math.random()*10);
System.out.print(" " + M[0]);
for(int i=1; i<N; i++) {
M[i] = M[i-1] + 1 +(int)(Math.random()*10);
System.out.print(" " + M[i]);
}
System.out.println();
verOrden(M, N);
System.out.print("Contenido inicial");
M[0] = 99 - (int)(Math.random()*10);
System.out.print(" " + M[0]);
for(int i=1; i<N; i++) {
M[i] = M[i-1] - 1 - (int)(Math.random()*10);
System.out.print(" - " + M[i]);
}
System.out.println();
verOrden(M, N);
}
private void verOrden(int M[], int N) {
boolean ASC = true;
boolean DES = true;
int ANT = M[0];
for(int i=1; i<N; i++) {
if(M[i] < ANT ) ASC = false;
if(M[i] > ANT ) DES = false;
ANT = M[i];
}
if(ASC) System.out.println("Orden ascendente\n");
if(DES) System.out.println("Orden descendente\n");
if(!ASC && !DES) System.out.println("Desordenado\n");
}}
import java.util.Scanner;
public class Principal {
public static void main(String args[]) {
Ejercicios Ejer = new Ejercicios();
Scanner entrada = new Scanner(System.in);
Ejer.Ejer4();
}}
EJERCICIO 2
import java.text.*;
public class Ejercicios {
public void Ejer5() {
int N = 10;
int M[][] = new int[3][N];
int i, S, E, TOPE, SUMA;
S = (int)(Math.random()*N/2) - 1;
if(S==-1) E=-1;
else E=S + (int)(Math.random()*(N-S-1));
TOPE = (int)(Math.random()*N) - 1;
for(i=0; i<3; i++)
for(int j=0; j<N; j++) M[i][j] = 10 + (int)(Math.random()*50);
System.out.print("indice ");
for(i=0; i<N; i++) System.out.print(i + " ");
System.out.println();
System.out.print("Fila1");
for(i=0; i<N; i++) System.out.print(" " + M[0][i]);
System.out.println(" S = " + S + ", E = "+ E);
System.out.print(" ");
for(i=0; i<N; i++) {
if(i<S || i>E) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en cola\n");
System.out.print("Fila2");
for(i=0; i<N; i++) System.out.print(" " + M[1][i]);
System.out.println(" TOPE = " + TOPE);
System.out.print(" ");
for(i=0; i<N; i++) {
if(i>TOPE) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en pila\n");
System.out.print("Fila3");
for(i=0; i<N; i++) System.out.print(" " + M[2][i]);
System.out.println();
i = -1;
while(E < N-1){
i++;
SUMA = M[2][i];
if(i < S || i>E) SUMA = SUMA + M[0][i];
if(i > TOPE) SUMA = SUMA + M[1][i];
E++;
M[0][E] = SUMA;
if(S==-1) S=0;
}
System.out.println("------------------------------------------------------------------------------");
System.out.println("Despues de agregar datos a la cola");
System.out.print("indice ");
for(i=0; i<N; i++) System.out.print(i + " ");
System.out.println();
System.out.print("Fila1");
for(i=0; i<N; i++) System.out.print(" " + M[0][i]);
System.out.println(" S = " + S + ", E = "+ E);
System.out.print(" ");
for(i=0; i<N; i++) {
if(i<S || i>E) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en cola");
while(TOPE < N-1 && S>-1) {
TOPE++;
M[1][TOPE] = M[0][S];
S++;
if(S > E) {
S = -1;
E = -1;
}
}
System.out.println("------------------------------------------------------------------------------");
System.out.println("Despues de meter datos en la pila");
System.out.print("indice ");
for(i=0; i<N; i++) System.out.print(i + " ");
System.out.println();
System.out.print("Fila2");
for(i=0; i<N; i++) System.out.print(" " + M[1][i]);
System.out.println(" TOPE = " + TOPE);
System.out.print(" ");
for(i=0; i<N; i++) {
if(i>TOPE) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en pila");
}
}
import java.util.Scanner;
public class Principal {
public static void main(String args[]) {
Ejercicios Ejer = new Ejercicios();
Scanner entrada = new Scanner(System.in);
Ejer.Ejer5();
}}
EJERCICIO 3
import java.text.*;
public class arreglo {
public void cola() {
int N1 = 10;
int COLA1[] = new int[N1];
int N2 = 9;
int COLA2[] = new int[N2];
int N3 = 8;
int PILA[] = new int[N3];
int ANT, S1, E1, S2, E2, TOPE;
S1 = (int)(Math.random()*N1/2) - 1;
if(S1==-1) E1=-1;
else E1=S1 + (int)(Math.random()*(N1-S1-1));
S2 = (int)(Math.random()*N2/2) - 1;
if(S2==-1) E2=-1;
else E2=S2 + (int)(Math.random()*(N2-S2-1));
TOPE = -1;
ANT = 10 + (int)(Math.random()*10);
for(int i=0; i<N1; i++) {
if(i<S1 || i>E1) COLA1[i] = 10 +(int)(Math.random()*90);
else {
COLA1[i] = ANT +1 + (int)(Math.random()*10);
ANT = COLA1[i];
}
}
ANT = 10 + (int)(Math.random()*10);
for(int i=0; i<N2; i++) {
if(i<S2 || i>E2) COLA2[i] = 10 +(int)(Math.random()*90);
else {
COLA2[i] = ANT +1 + (int)(Math.random()*10);
ANT = COLA2[i];
}
}
//se llena el arreglo PILA con valores al azar entre 10 y 90
for(int i=0; i<N3; i++) PILA[i] = 10 + (int)(Math.random()*90);
System.out.print("indice ");
for(int i=0; i<N1; i++) System.out.print(i + " ");
System.out.println();
System.out.print("Cola1");
for(int i=0; i<N1; i++) System.out.print(" " + COLA1[i]);
System.out.println(" S = " + S1 + ", E = "+ E1);
System.out.print(" ");
for(int i=0; i<N1; i++) {
if(i<S1 || i>E1) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en cola\n");
System.out.print("Cola2");
for(int i=0; i<N2; i++) System.out.print(" " + COLA2[i]);
System.out.println(" S = " + S2 + ", E = "+ E2);
System.out.print(" ");
for(int i=0; i<N2; i++) {
if(i<S2 || i>E2) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en cola\n");
System.out.print("Pila1");
for(int i=0; i<N3; i++) System.out.print(" " + PILA[i]);
System.out.println(" TOPE = " + TOPE);
System.out.print(" ");
for(int i=0; i<N3; i++) {
if(i>TOPE) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en pila\n");
//Comienzan las acciones solicitadas
while(S1>-1 && S2>-1 && TOPE<N3-1) {
TOPE++;
if(COLA1[S1]< COLA2[S2]) {
PILA[TOPE] = COLA1[S1];
S1++;
if(S1>E1) {
S1=-1;
E1=-1;
}
}
else {
PILA[TOPE] = COLA2[S2];
S2++;
if(S2>E2) {
S2=-1;
E2=-1;
}
}
}
while(S1>-1 && TOPE<N3-1) {
TOPE++;
PILA[TOPE] = COLA1[S1];
S1++;
if(S1 > E1) {
S1=-1;
E1=-1;
}
}
while(S2>0 && TOPE<N3-1) {
TOPE++;
PILA[TOPE] = COLA2[S2];
S2++;
if(S2 > E2) {
S2 = -1;
E2 = -1;
}
}
System.out.println("------------------------------------------------------------------------------");
System.out.println("Despues realizadas las acciones");
System.out.print("indice ");
for(int i=0; i<N1; i++) System.out.print(i + " ");
System.out.println();
System.out.print("Cola1");
for(int i=0; i<N1; i++) System.out.print(" " + COLA1[i]);
System.out.println(" S = " + S1 + ", E = "+ E1);
System.out.print(" ");
for(int i=0; i<N1; i++) {
if(i<S1 || i>E1) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en cola\n");
System.out.print("Cola2");
for(int i=0; i<N2; i++) System.out.print(" " + COLA2[i]);
System.out.println(" S = " + S2 + ", E = "+ E2);
System.out.print(" ");
for(int i=0; i<N2; i++) {
if(i<S2 || i>E2) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en cola\n");
System.out.print("Pila1");
for(int i=0; i<N3; i++) System.out.print(" " + PILA[i]);
System.out.println(" TOPE = " + TOPE);
System.out.print(" ");
for(int i=0; i<N3; i++) {
if(i>TOPE) System.out.print(" ");
else System.out.print(" **");
}
System.out.println (" ** = estan en pila\n");
} }
import java.util.Scanner;
public class usararreglo {
public static void main(String args[]) {
arreglo Ejer = new arreglo();
Scanner entrada = new Scanner(System.in);
Ejer.cola();
}}