Você está na página 1de 7

EJERCICIOS DIAGRAMAS DE FLUJO CON VECTORES EN JAVA

Del 21 al 28

21. Se pretende almacenar en vectores los siguientes datos de un estudiante: a. Cdigo del estudiante B. Definitiva semestre que se saca de la captura de sus 3 notas, donde la nota1 vale 45%, nota2 35% y nota3 20% c. Definitiva de su electiva que es el promedio de sus dos notas... Debe validar que las notas ingresadas estn entre 1 y 5... Una vez almacenados estos datos se debe permitir la opcin de Modificar: definitiva de semestre o definitiva de electiva, y Consultar nota definitiva de semestre o definitiva de electiva... Cuando haga cualquiera de estas opciones debe preguntarle que si desea hacer otra modificacin u otra consulta de ser verdadero debe desplegar el men correspondiente a la opcin de ser falso, preguntarle que si desea dar fin al programa de ser as, da fin de lo contrario lo enva nuevamente al men principal
public static void main(String[] args) { int te=0; int td=0; int n=Integer.parseInt(JOptionPane.showInputDialog("digite las dimensiones del vector")); int vc[]=new int [n]; int vd[]=new int[n]; int ve[]=new int [n]; for (int i = 0; i < n; i++) { int cod=Integer.parseInt(JOptionPane.showInputDialog("digite un codigo")); vc[i]=cod; float no1; do{ no1=Integer.parseInt(JOptionPane.showInputDialog("digite la primera nota de la electiva")); }while((no1<1.0)&&(no1>5.0)); float no2; do{ no2=Integer.parseInt(JOptionPane.showInputDialog("digite la segunda nota de la electiva")); }while((no2<1.0)&&(no2>5.0)); te=(int)((no1+no2)/2); ve[i]=te; float n1=(float)0; do{ n1=Float.parseFloat(JOptionPane.showInputDialog("Digite el valor de la primera nota")); }while((n1<1.0)&&(n1>5.0)); float n2; do{ n2=Float.parseFloat((JOptionPane.showInputDialog("digite la segunda nota"))); }while((n2<1.0)&&(n2>5.0));

float n3; do{ n3=Integer.parseInt(JOptionPane.showInputDialog("digite la tercera nota")); }while((n3<1.0)&&(n3>5.0)); int t1=(int)(n1*0.45); int t2=(int)(n2*0.35); int t3=(int)(n3*0.20); td=(int)(t1+t2+t3); vd[i]=td; } String as=""; do{ String opc=JOptionPane.showInputDialog("desea hacer algo con los datos ingreados si-no"); String hacer=""; if(opc.equals("si")){ String sd=""; do{ do{ hacer=JOptionPane.showInputDialog("digite que desea hacer modificar"); }while((!hacer.equals("modificar"))&&(!hacer.equals("consultar"))); String cons="no"; if (hacer.equals("consultar")){ int ncod=Integer.parseInt(JOptionPane.showInputDialog("digite el codigo a buscar")); for (int i = 0; i < n; i++) { if(ncod==vc[i]){ JOptionPane.showMessageDialog(null,"el codigo si esta "+String.valueOf(vc[i])); JOptionPane.showMessageDialog(null,"su nota definitiva es del semestre es "+String.valueOf(td)); JOptionPane.showMessageDialog(null, "la nota de laelectiva es "+String.valueOf(te)); cons="si"; }} if(cons.equals("si")){ JOptionPane.showMessageDialog(null,"la consulta fue exitosa"); } else{ JOptionPane.showMessageDialog(null,"el codigo no fue encontrado"); }} if(hacer.equals("modificar")){ String cual=JOptionPane.showInputDialog("digite que desea modificar (electivas,semestrales)"); if(cual.equals("electiva")){ int cod=Integer.parseInt(JOptionPane.showInputDialog("digite el codigo a buscar")); for (int i = 0; i < n; i++) { if(cod==vc[i]){ JOptionPane.showMessageDialog(null,"el codigo si esta"); float nou1; do{ nou1=Integer.parseInt(JOptionPane.showInputDialog("digite la primera nota de la electiva")); }while((nou1<1.0)&&(nou1>5.0)); float nou2; do{ nou2=Integer.parseInt(JOptionPane.showInputDialog("digite la segunda nota de la electiva")); }while((nou2<1.0)&&(nou2>5.0));

te=(int)((nou1+nou2)/2); ve[i]=te; }}}} sd=JOptionPane.showInputDialog("desea hacer algo mas (si-no"); }while(!sd.equals("si")); } as=JOptionPane.showInputDialog("desea dar fin al programa(si-no)"); }while(!as.equals("si")); }}

22. Dada n nmeros almacenarlos en un vector, una vez lleno el vector recorrerlo, contar cuantos son pares, cuantos impares, cuntos son mltiplos de 5
public static void main(String[] args) { int n=Integer.parseInt(JOptionPane.showInputDialog("Digite de numeros")); int vn[]=new int[n]; int cp=0,ci=0,cm=0; for (int i = 0; i < vn.length; i++) { vn[i]=Integer.parseInt(JOptionPane.showInputDialog("Digite numero")); } for (int i = 0; i < vn.length; i++) { int r=vn[i]%2; if(r==0){ cp=cp+1; } else{ ci=ci+1; } int rr=vn[i]%5; if(rr==0){ cm=cm+1; }} JOptionPane.showMessageDialog(null,"La cantidad de numeros "+String.valueOf(cp)); JOptionPane.showMessageDialog(null,"La cantidad de numeros "+String.valueOf(ci)); JOptionPane.showMessageDialog(null,"La cantidad de numeros de 5 es "+String.valueOf(cm)); }} la cantidad

un

pares es impares es multiplos

23. Dado el gnero de n personas, almacenarlos en un vector, hallar el porcentaje de hombres y el porcentaje de mujeres
public static void main(String[] args) { int n=Integer.parseInt(JOptionPane.showInputDialog("Digite la cantidad de personas ")); int cm=0,ch=0; String vg[]=new String[n]; for (int i = 0; i < vg.length; i++) { vg[i]=JOptionPane.showInputDialog("Digite el genero m/f"); } for (int i = 0; i < vg.length; i++) { if(vg[i].equals("f")){ cm=cm+1; }

else{ ch=ch+1; }} float ph=(ch*100)/n; float pm=(cm*100)/n; JOptionPane.showMessageDialog(null,"El porcentaje de mujeres es "+String.valueOf(pm)+"%"); JOptionPane.showMessageDialog(null,"El porcentaje de hombres es "+String.valueOf(ph)+"%"); }}

24. Dado 2 vectores de n posiciones, almacenar nmeros en l, una vez almacenados los nmeros preguntarle al usuario que desea hacer: a. Suma b. Resta (Al mayor se le quita el menor) c. Multiplicacin d. Divisin (Al mayor lo divido en el menor) Una vez el usuario digite la opcin que desea, se debe crear un nuevo vector con el resultado de la operacin y luego de estar almacenado se debe imprimir el resultado de cada operacin.
public static void main(String[] args) { int n=Integer.parseInt(JOptionPane.showInputDialog("Digite la cantidad de posiciones para el vector")); int v1[]=new int[n]; int v2[]=new int[n]; int vo[]=new int[n]; for (int i = 0; i < v1.length; i++) { v1[i]=Integer.parseInt(JOptionPane.showInputDialog("Digite un numero para el vector 1")); v2[i]=Integer.parseInt(JOptionPane.showInputDialog("Digite un numero para el vector 2")); } int cs=0,cr=0,cm=0,cd=0; for (int i = 0; i < v2.length; i++) { int op=Integer.parseInt(JOptionPane.showInputDialog("que desea hacer suma(1),restar(2),dividir(3),multiplicar(4)")); switch(op){ case 1: if(op==1){ vo[i]=1; cs++; } break; case 2: if(op==2){ vo[i]=2; cr++; } break; case 3: if(op==3){ vo[i]=3; cd++; } break; case 4: if(op==4){ vo[i]=4; cm++; }

break; }} int vs[]=new int[cs]; int vr[]=new int[cr]; int vd[]=new int[cd]; int vm[]=new int[cm]; String vsu[]=new String [cs]; String vre[]=new String [cr]; String vdi[]=new String [cd]; String vmu[]=new String [cm]; int j=0,k=0,l=0,m=0; for (int i = 0; i < v2.length; i++) { if(vo[i]==1){ vs[j]=v1[i]+v2[i]; vsu[j]=String.valueOf(v1[i])+"+"+String.valueOf(v2[i]); j++; } else{ if(vo[i]==2){ if(v1[i]>v2[i]){ vr[k]=v1[i]-v2[i]; vre[k]=String.valueOf(v1[i])+"-"+String.valueOf(v2[i]); } else{ vr[k]=v2[i]-v1[i]; vre[k]=String.valueOf(v1[i]+"-"+String.valueOf(v2[i])); }} else{ if(vo[i]==3){ if(v1[i]>v2[i]){ vd[l]=v1[i]/v2[i]; vdi[l]=String.valueOf(v1[i]+"/"+String.valueOf(v2[i])); } else{ vd[l]=v2[i]/v1[i]; vdi[l]=String.valueOf(v2[i]+"/"+String.valueOf(v1[i])); }} else{ if(vo[i]==4){ vm[m]=v1[i]+v2[i]; vmu[m]=String.valueOf(v1[i]+"*"+String.valueOf(v2[i])); }}}}} for (int i = 0; i < vs.length; i++) { JOptionPane.showMessageDialog(null, vsu[i]+"="+String.valueOf(vs[i])); } for (int i = 0; i < vr.length; i++) { JOptionPane.showMessageDialog(null, vre[i]+"="+String.valueOf(vr[i])); } for (int i = 0; i < vd.length; i++) { JOptionPane.showMessageDialog(null, vdi[i]+"="+String.valueOf(vd[i])); } for (int i = 0; i < vm.length; i++) { JOptionPane.showMessageDialog(null, vmu[i]+"="+String.valueOf(vm[i])); }}}

25. Dado n alumnos almacenar sus datos en 2 vectores, uno tendr el cdigo y otro la nota definitiva de la asignatura programacin, una vez almacenados los datos se le debe preguntar al usuario si desea consultar la nota de algn alumno, de ser as se le debe preguntar el cdigo del alumno y mostrar su nota, de no querer alguna consulta de debe dar fin al programa.
public static void main(String[] args) { int n=Integer.parseInt(JOptionPane.showInputDialog("Digite la cantidad de alumnos")); int vc[]=new int [n]; float vn[]=new float[n]; for (int i = 0; i < vn.length; i++) { vc[i]=Integer.parseInt(JOptionPane.showInputDialog("Digite el codigo del alumno")); vn[i]=Float.parseFloat(JOptionPane.showInputDialog("Digite la nota del alumno")); } String bu=JOptionPane.showInputDialog("Desea buscar la nota de algun alumno si/no"); if(bu.equals("si")){ int cod=Integer.parseInt(JOptionPane.showInputDialog("Digite el codigo del alumno")); for (int i = 0; i < vn.length; i++) { if(cod==vc[i]){ JOptionPane.showMessageDialog(null,"La nota del alumno es "+String.valueOf(vn[i])); }}}}}

26. Dado un vector de n posicione almacenarlo con nmeros, una vez almacenado el vector se deben crear dos nuevos vectores a partir de l, donde uno almacene los nmeros pares y otro los nmeros impartes.
public static void main(String[] args) { int n=Integer.parseInt(JOptionPane.showInputDialog("Digite la cantidad de numeros")); int vn[]=new int[n]; int cp=0,ci=0; for (int i = 0; i < vn.length; i++) { vn[i]=Integer.parseInt(JOptionPane.showInputDialog("Digite un numero")); int r=vn[i]%2; if(r==0){ cp++; } else{ ci++; } int vp[]=new int[cp]; int vi[]=new int[ci]; int k=0,l=0; for (int j = 0; j < vn.length; j++) { int rr=vn[i]%2; if(rr==0){ vp[k]=vn[i]; k++; } else{ vi[l]=vn[i]; l++; }}}}}

27. Dado un vector de n posiciones, hallar cuantos nmeros son mayores al promedio de la suma de todos los nmeros del vector.
public static void main(String[] args) { int n=Integer.parseInt(JOptionPane.showInputDialog("digite la cantidad de posiciones del vector")); int s=0; int may=0; int vn[]=new int[n]; for (int i = 0; i < n; i++) { int num=Integer.parseInt(JOptionPane.showInputDialog("digite un numero")); vn[i]=num; s=s+num; } int pro=s/n; for (int i = 0; i < n; i++) { if(pro<vn[i]){ may=may+1; }} JOptionPane.showMessageDialog(null,"la cantidad de numeros mayores al promedio "+String.valueOf(may)); }}

28. Dado un vector de n posiciones, llenarlo con nmeros, una vez lleno el vector se debe preguntar al usuario si desea buscar un nmero dentro del vector, de ser as se le debe preguntar el nmero a buscar, si lo encontr debe decirle cuantas veces se encuentra dentro del vector, si no lo encontr debe enviar un mensaje diciendo que el nmero no se encuentra dentro del vector.
public static void main(String[] args) { int n=Integer.parseInt(JOptionPane.showInputDialog("Digite la cantidad de numeros")); int v[]=new int[n]; for (int i = 0; i < v.length; i++) { v[i]=Integer.parseInt(JOptionPane.showInputDialog("Digite un numero")); } String bu=JOptionPane.showInputDialog("Desea buscar algun numero en el vector si/no"); if(bu.equals("si")){ int nu=Integer.parseInt(JOptionPane.showInputDialog( "Digite el numero a buscar")); int c=0; for (int i = 0; i < v.length; i++) { if(v[i]==nu){ c++; }} if(c>1){ JOptionPane.showMessageDialog(null,"El numero "+String.valueOf(nu)+" se encuentra "+String.valueOf(c)+" veces en el vector"); } else{JOptionPane.showMessageDialog(null,"El numero "+String.valueOf(nu)+" no se encuentra en el vector");}}}}

Você também pode gostar