Está en la página 1de 6

El ciclo while:

Tambien llamado ciclo mientra, y es un ciclo controlado por una expresión lógica que determia; de
modo que siempre que la expresión de control sea verdadera el ciclo ejecuta sus instrucciones, y
solo cuando la expresión de control sea falsa el ciclo termina.

El ciclo mientras es de verificación inicial, por lo que primero evalua laexpresion de control antes
de iniciar; por lo tanto su numero de interaccion esta entre 0 y N; siendo usado cuando no
conocemos con exactitud el numero de representaciones del ciclo. En Java este ciclo tiene la
siguiente sintaxis:

While(condición){
°
°
°
Sentencias_a_repetir
°
°
°
}
Ejemplo:
1) Diseñar en UML e implementar en Java una clase que dada dos números enteros, permita
con ellos:
a) Hallar el minimo común divisor
b) Hallar el minimo común múltiplo
c) Determinar cuales números son primos y cuaes no

Solucion

TNumerosEnteros
-int Num1;
-int Num2;
+TNumerosEnteros()
+void setNum1(int N1);
+void setNum2(int N2);
+int getNum1();
+intgetNum2();
+int CaLeMCd();
+int CaLeMCm();
+boolean Esprimo(int N);

Strin Cad=”abc”; CharAt(0)>charAt(1)


Char It(i)<CharAt(i+1)=>true
a<b<c
MCD
a=6, b=8
D(6)={1,2,5,6}
D(8)={1,2,4,8}
D(6)nD(8)={1,2,}
|
Mayor
|
Med(6,8)=?

MCm:
6={6,12,18,24,30,36,42,48,54…+}
8={8,16,32,40,48,56…+}
6n8={24,48…+}
|
Menor -> mcm(6,8)=24

Mcd(6,8)*mcm(a,b)=a*b

Mcm=a*b Mcm(a,b)

d) Implementación Clase Principal :


Import javax.swing.JOptionPane;
Public class principal
package tenteros;

import javax.swing.JOptionPane;

public class TEnteros {

private static int Pedirentero(String mensaje)


{
String res;
res=JOptionPane.showInputDialog(mensaje);
return Integer.parseInt(res);
}
private static void mostrar(String Mensaje){
JOptionPane.showMessageDialog(null, Mensaje);
}
private static void llenar(TNumerosEnteros NumEn){
NumEn.setNum1(Pedirentero("Numero uno"));
NumEn.setNum2(Pedirentero("Numero dos"));
}
private static String primo(int N, TNumerosEnteros NumEn){
return N+(NumEn.Esprimo(N)?"es primo":"no es primo");
}
private static int menu(){
int opc;
String opciones="1) llenar \n2)Mcd\n3)mcm\n4)primos\n5)salir";
do{
opc=Pedirentero(opciones);
}
while (opc<1 || opc>5);
return opc;
}
public static void main(String args[]){
int opcion;
TNumerosEnteros NumEn;
NumEn=new TNumerosEnteros();
do{
opcion=menu();
switch(opcion){
case 1:llenar(NumEn);break;
case 2:mostrar("Mcd="+NumEn.CalcMcd());break;
case 3:mostrar("Mcm="+NumEn.Calcmcm());break;
case 4:mostrar(primo(NumEn.getNum1(),NumEn)+"\n"+
primo(NumEn.getNum2(),NumEn));
break;
}
}while(opcion!=5);
}
}
package tenteros;

public class TNumerosEnteros {

private int Num1;


private int Num2;

public TNumerosEnteros(){
Num1=0;
Num2=0;
}
public void setNum1(int N1){
Num1=N1;
}
public void setNum2(int N2){
Num2=N2;
}
public int getNum1(){
return Num1;
}
public int getNum2(){
return Num2;
}
public int CalcMcd(){
int d,mcd;
d=1;
mcd=1;
while ( d<=Num1 && d<=Num2){
if(Num1% d==0 && Num2%d==0){
mcd=d;
}
d=d+1;

}
return mcd;
}
public int Calcmcm(){
return (Num1*Num2)/CalcMcd();
}
public boolean Esprimo(int N){

int d,Cant;
d=1;
Cant=0;
while(d<=N && Cant<=2){

if(N%d==0){
Cant=Cant+1;
}
d=d+1;
}
return Cant<=2;
}

También podría gustarte