La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

1 1.Rutear public class c2ruteofunciones{ static double a, b, c; public static void p22(double b,double h) { double c; a=6; c = b + h; StdOut.printf("En.

Presentaciones similares


Presentación del tema: "1 1.Rutear public class c2ruteofunciones{ static double a, b, c; public static void p22(double b,double h) { double c; a=6; c = b + h; StdOut.printf("En."— Transcripción de la presentación:

1 1 1.Rutear public class c2ruteofunciones{ static double a, b, c; public static void p22(double b,double h) { double c; a=6; c = b + h; StdOut.printf("En el procedimiento p2 :%.1f %.1f %.1f\n",a,b,c); }; public static double accion(double b) { double a; a=5; b = Math.pow(a,2); c=b - a; StdOut.printf("Valores en la funcion accion: %.1f %.1f %.1f \n",a,b,c); p22(c,b); StdOut.printf("Despues del procedimiento p2: %.1f %.1f %.1f\n",a,b,c); return b; } public static void main(String[] args) { a=4; b=0; c=accion(a); StdOut.printf("Valores finales: %.1f %.1f %.1f\n",a,b,c); }

2 2

3 3 2. Codificar un programa que calcule la transpuesta de una matriz usando subprogramas para: leer, obtener la transpuesta e imprimir. public class c2traspuesta{ public static int N=3; public static void leer(long m[][]) { for (int i=0;i<N;i++) for (int j=0;j<N;j++) { StdOut.println("Ingrese valor fila="+i+" columna="+j+":"); m[i][j]=StdIn.readLong(); } public static void trans(long m[][]) { long aux; for (int i=0; i<N;i++) for (int j=i+1;j<N;j++) { aux=m[i][j]; m[i][j]=m[j][i]; m[j][i]=aux; }

4 4 public static void imprimir(long m[][]) { for (int i=0;i<N;i++) { for (int j=0;j<N;j++) StdOut.print(m[i][j]+" "); StdOut.println(); } public static void main(String[] args) { long[][] mat=new long[N][N]; leer(mat); trans(mat); imprimir(mat); }

5 5 2. Codificar un subprograma java que determine su una matriz de NxN de enteros es simétrica. public static boolean simetrica(int n, int[][] m) { boolean es; es=true; for (int f=0;f<n;f++) for (int c=f+1;c<n;c++) if (m[f][c]!=m[c][f]) es=false; return es; }

6 6 3. Las secuencias de ADN están compuestas de los siguientes elementos: G: guanina A: adenina C: citosina T: tinina Para saber si dos secuencias son iguales, se debe comparar elemento por elemento, pero teniendo en cuenta que las secuencias son cíclicas. Por ejemplo, las dos siguientes secuencias son iguales: Se solicita codificar un programa que indique si dos secuencias de largo L=1000, son iguales. Para ellos se deberá: a) Codificar una función que lea un vector de largo L (parámetros: vector y largo) con validación. b) Codificar una función que haga un shift a un vector de largo L, moviendo todos los elementos un espacio hacia la izquierda (parámetros: vector y largo). c) Codificar un programa que compare dos vectores y devuelva true o false dependiendo si son iguales (parámetros: los dos vectores y el largo). d) Codificar el programa principal que compare las dos secuencias usando las funciones anteriores e indique si dos secuencias ingresadas son o no iguales.

7 7 public class adns{ static int N=2; public static void leer(String mensaje,int n,char[] v) { StdOut.println("Ingrese los valores de "+mensaje); for (int i=0;i<n;i++) { do { StdOut.println("Ingrese elemento:"+i); v[i]=StdIn.readChar(); StdIn.readLine(); } while ((v[i]!='A')&&(v[i]!='G')&&(v[i]!='T')&&(v[i]!='C')); } public static boolean iguales(int n,char[] v1,char[] v2) { boolean son_iguales; son_iguales=true; for (int i=0;i<n;i++) if (v1[i]!=v2[i]) son_iguales=false; return son_iguales; }

8 8 public static void shift(int n,char[] v) { char aux; aux=v[0]; for (int i=0;i<n-1;i++) v[i]=v[i+1]; v[n-1]=aux; } public static void main(String[] args) { char[] patron=new char[N]; char[] adn=new char[N]; leer("patron",N,patron); leer("adn",N,adn); boolean adn_iguales; adn_iguales=false; int cont=0; while ((cont<N)&&(!adn_iguales)) { if (iguales(N,patron,adn)) adn_iguales=true; else shift(N,adn); cont++; } if (adn_iguales) StdOut.println("ADN iguales"); else StdOut.println("ADN distintos"); }

9 9 3. Una cadena de sala de cines desea conocer cual es la película más vista en un mes. Para ello cuenta con una matriz con 7 salas de cine y 15 películas y la cantidad de gente que asistió por cada sala y película. Codificar un programa Java que llene la matriz y determine cual es la película mas vista,

10 10 public class cine{ public static int salas=7; public static int peliculas=15; public static void leer(int m[][]) { for (int cines=0;cines<m.length;cines++) for (int pelicula=0;pelicula<m[0].length;pelicula++) { StdOut.printf("Ingrese asistentes sala:%d, pelicula: %d",cines,pelicula); m[cines][pelicula]=StdIn.readInt(); } public static void main(String[] args) { int[][] mat=new int[salas][peliculas]; leer(mat); int masvista=0; int publico=0,suma; for (int c=0;c<peliculas;c++) { suma=0; for (int f=0;f<salas;f++) suma+=mat[f][c]; if (c==0) { masvista=c; publico=suma; } else if (suma > publico) { masvista=c; publico=suma; } StdOut.printf("La pelicula mas vista es:%d, con un publico =%d",masvista,publico); }

11 11 4. Rutear el siguiente programa. public class SPROG6{ static void cambia (int v[]) { int aux; aux=v[0]; v[0]=v[1]; v[1]=aux; }; public static void main (String[] args) { int[] z=new int[2]; z[0]=24; z[1]=56; cambia(z); StdOut.printf("%d %d\n",z[0],z[1]); } cambia(v)mainpantalla vauxz 2456 245624 5624 562456 24

12 12 4. Codificar un programa que lea un rut, lo pase a un vector de largo 8 y luego calcule el dígito verificador en módulo 11 usando para ello un subprograma.

13 13 public class dv{ public static int n=8; public static char dv(int v[]) { int suma; int factor,resto; char digito; factor=2; suma=0; for (int i=v.length-1; i>0;i--) { suma+=v[i]*factor; factor++; if (factor==8) factor=2; } resto=11-suma % 11; switch (resto) { case 11:digito='K'; break; case 10:digito='0'; break; default:digito=(char)(resto+48); break; } return digito; } public static void main(String[] args) { int vector[]={0,0,0,0,0,0,0,0}; int i; int rut; StdOut.println("Ingrese rut:"); rut=StdIn.readInt(); i=n-1; while (rut != 0) { vector[i]=rut %10; rut=rut/10; i--; } StdOut.println("El digito verificador es:"+dv(vector)); }


Descargar ppt "1 1.Rutear public class c2ruteofunciones{ static double a, b, c; public static void p22(double b,double h) { double c; a=6; c = b + h; StdOut.printf("En."

Presentaciones similares


Anuncios Google