Vous êtes sur la page 1sur 18

1.

Declaracin de variables

public class App1


{
public static void main( String args[] )
{
int i=1;
long l=1l;
double d=1.5;
float f=1.5f;
boolean b=true;
char c='a';
String cadena="Esto es una \ncadena";
System.out.println(
System.out.println(
System.out.println(
System.out.println(
System.out.println(
System.out.println(
System.out.println(

"i:"+i );
"l:"+l );
"d:"+d );
"i:"+f );
"b:"+b );
"c:"+c );
"cadena:"+cadena );

}
}

1.2

Operaciones y conversin cast

public class App2


{
public static void main( String args[] )
{
int x=5, y=2, resi;
resi = x/y;
double resd;
resd = (double) x/y;
System.out.println( "resi: "+resi );
System.out.println( "resd: "+resd );
}
}

1.3

Sentencias condicionales if

public class App3


{
public static void main( String args[] )
{
int x=5, y=2;
//igual
if (x==5) System.out.println("x=5");
//distinto
if (x!=2) System.out.println("x!=2");
//y lgico
if (x==5 && y==2) System.out.println("x=5, y=2");
//o lgico
if (x==5 || y==1) System.out.println("x=5");
//operacin
if (x+y>10)
{
System.out.println("x+y>10");
}
else

{
System.out.println("x+y<10");
}
}
}

1.4

Arrays y bucles for

public class App4


{
public static void main( String args[] )
{
int arrayint[] = new int[3];
char arraychar[] = {'a', 'b', 'c'};
//rellenamos el array de enteros
for (int i=0; i<3; i++)
{
arrayint[i]=i;
}
//imprimimos su valor
for (int i=0; i<3; i++)
{
System.out.println( "arrayint["+i+"]: "+arrayint[i] );
}
//incrementamos en 1 cada valor
for (int i=0; i<3; i++)
{
arrayint[i]+=1;
System.out.println( "arrayint["+i+"]: "+arrayint[i] );
}
//incrementamos en 1 cada letra
for (int i=0; i<3; i++)
{
arraychar[i]+=1;
}
//imprimimos su valor
for (int i=0; i<3; i++)
{
System.out.println( "arraychar["+i+"]: "+arraychar[i] );
}
}
}
public class Temperaturas
{
public static void main( String args[] )
{
int temperaturas[] = new int[5];
temperaturas[0] = 15;
temperaturas[1] = 29;
temperaturas[2] = 6;
temperaturas[3] = 23;
temperaturas[4] = 3;
int media, total=0;
//imprimimos las temperaturas
for (int i=0; i<5; i++)
{

System.out.println( "temperaturas["+i+"]: "+temperaturas[i] );


}
//cambiamos algunas temperaturas
temperaturas[0] += 4;
temperaturas[2] -= 2;
//calculamos la media
for (int i=0; i<5; i++)
{
total += temperaturas[i];
}
media = total / 5;
System.out.println( "\nTemperatura media: " + media );
}
}

1.5

Bucles while

public class App5


{
public static void main( String args[] )
{
int i=10;
while (i>0)
System.out.println( "i:"+i-- );
}
}
public class App6
{
public static void main( String args[] )
{
int i=10;
do
{
System.out.println( "i:"+ i-- );
} while (i>0);
}
}

1.6

Entrada y salida bsica

import java.io.*;
public class EntSal
{
public static void main( String args[] ) throws IOException
{
//Objeto para leer una cadena del teclado
BufferedReader entrada=
new BufferedReader(new InputStreamReader(System.in));
int edad;
String nombre;
System.out.println( "\nIntroduce tu nombre: " );
nombre = entrada.readLine();
System.out.println( "\nIntroduce tu edad: " );
//conversin de cadena a nmero
edad = Integer.parseInt(entrada.readLine());
System.out.print( "\nTe llamas " + nombre + " y tienes "
+ edad +

"

aos.");

}
}

El siguiente programa realiza lo mismo que el ejemplo anterior pero utiliza una clase introducida en
la versin 1.5 del jdk que se llama Scanner y que simplifica las operaciones de entrada y salida.
import java.util.Scanner;
public class EmtSalScanner
{
public static void main(String[] args)
{
//Objeto para leer una cadena del teclado
Scanner entrada = new Scanner(System.in);
int edad;
String nombre;
System.out.println( "\nIntroduce tu nombre:" );
//lectura de un String
nombre = entrada.nextLine();
System.out.println( "\nIntroduce tu edad:" );
//lectura de un int
edad = entrada.nextInt();
System.out.print( "\nTe llamas " + nombre + " y tienes "
+ edad + " aos.");
}
}

2. Media
El siguiente programa que realizaremos trata de dar un ejemplo de utilizacin de bucles simples,
sentencias condicionales y entrada y salida en Java.
El programa calcula el promedio de 10 calificaciones de examen. Esta calificacin puede ser A, B, C,
D y F y corresponden con 4, 3, 2, 1 y 0 puntos respectivamente.
// Media.java
// Calcula la nota media de los exmenes de un grupo de alumnos
// Utilizacin del bucle while y sentencias condicionales
import java.io.*;
public class Media {
public static void main( String args[] ) throws IOException
{
int contador, total, media;
String nota;
//Objeto para leer una cadena del teclado
BufferedReader entrada=
new BufferedReader(new InputStreamReader(System.in));
// inicializacin de variables
total = 0;
contador = 1;
while ( contador <= 10 ) {
System.out.println( "\nTeclee calificacin (A,B,C,D,F): " );
nota = entrada.readLine();
if ( nota.equals("A") )
total = total + 4;
else if ( nota.equals("B")
total = total + 3;
else if ( nota.equals("C")
total = total + 2;
else if ( nota.equals("D")
total = total + 1;
else if ( nota.equals("F")
total = total + 0;

)
)
)
)

contador = contador + 1;
}
media = total / 10;
System.out.println("\n\nEl promedio del grupo es: " + media);
}
}

2.1

Ejercicios sobre la aplicacin Media:


1. Inicializar las variables contador y total en su declaracin.
2. Sustituir la sentencia contador = contador + 1 por contador += 1 y las sentencias
total = total + x por total += x.
3. Utilizar un bucle for en vez del bucle while.
4. Hacer que el resultado de la media de las calificaciones se muestre con decimales (double o
float) en vez de enteros.
5

5. Capturar la entrada de las calificaciones siempre en maysculas.


6. Hacer que el programa lea notas hasta que el usuario introduzca una Z. Utilizar un bucle
while y un do-while.
7. Hacer que el programa solo lea las letras correspondientes a las calificaciones A, B, C, D y F
o Z para finalizar. En caso de que el usuario introduzca otra letra se le avisar del error y no
ser tomada en cuenta.

3. Ejercicios propuestos
1. Construir un programa en Java que sume los nmeros del 1 al 100.
2. Construir un programa en Java que sume los nmeros pares del 1 al 100.
3. Construir un programa en Java que sume los nmeros de 1 al 100, pero solo aquellos que
acaben en 2 o en 3.
4. Construir un programa en Java que sume los nmeros de 1 al n, siendo n un nmero
introducido por teclado mayor que 0.
5. Construir un programa en Java que muestre la tabla de multiplicar de la forma tradicional (Ej.
2x4=8).
6. Crear un programa que imprime el mayor de tres enteros.
7. Crear un programa que dados dos enteros imprime su suma, resta, producto y divisin.
8. Crear un programa que dados cuatro enteros imprime la suma y la media.
9. Crear un programa que dado un entero imprima un valor lgico que indica si el nmero es par
o impar.
10. Realizar un programa que dados un entero y una cadena repita tantas veces la cadena como
indique el entero.
11. Realizar un programa que pida dos cadenas al usuario que deben ser V o F para ser
convertidas en valores lgicos y presente el resultado de las tres operaciones lgicas (y, o, no)
sobre dichos valores.
12. Codificar el programa que dado un nmero devuelva el nmero de cifras que lo componen.
Considerar que el nmero 0 tiene 1 cifra.
13. Realizar un programa que pida los datos de altura y sexo de personas y calcule la media de
altura para hombres y la media para mujeres.
14. Realizar un programa que pida datos de altura, sexo y edad y realice la media de altura para
cada uno de los siguientes grupos:
mujeres, menores de 20 aos no incluidas las de 20
hombres, menores de 20 aos no incluidos los de 20
mujeres, entre 20 y 40 aos ambos inclusive
mujeres, de ms de 40 aos
hombres de ms de 20 aos
personas entre 15 y 35 aos ambos inclusive
15. Codificar un programa que, dados tres nmeros enteros que recogen la informacin del da,
mes y ao de una fecha, determine si es una fecha vlida, considerando el 29 de febrero para
los aos bisiestos.
16. Hacer un programa que dadas dos fechas diga la diferencia en das entre ellas.
17. Escribir un programa que determine si un nmero es primo.
Notas: Un nmero es primo si slo es divisible por s mismo y por 1.
Si un nmero no es primo diremos que es compuesto.
El 0 y el 1 son nmeros especiales que no se consideran primos ni compuestos.

4. Solucin de los ejercicios


4.1

Solucin ejercicios sobre la aplicacin Media:


1. Inicializar las variables contador y total en su declaracin.
2. Sustituir la sentencia contador = contador + 1 por contador += 1 y las sentencias
total = total + x por total += x.
3. Utilizar un bucle for en vez del bucle while.
4. Hacer que el resultado de la media de las calificaciones se muestre con decimales (double o
float) en vez de enteros.
5. Capturar la entrada de las calificaciones siempre en maysculas.
Solucin:
import java.io.*;
public class Media2
{
public static void main( String args[] ) throws IOException
{
int contador=1, total=0;
double media;
String nota;
//Objeto para leer una cadena del teclado
BufferedReader entrada=
new BufferedReader(new InputStreamReader(System.in));
for ( contador=1; contador <= 10; contador++ )
{
System.out.println( "\nTeclee calificacin (A,B,C,D,F): " );
nota = entrada.readLine().toUpperCase();
if ( nota.equals("A") )
total += 4;
else if ( nota.equals("B")
total += 3;
else if ( nota.equals("C")
total += 2;
else if ( nota.equals("D")
total += 1;
else if ( nota.equals("F")
total += 0;

)
)
)
)

}
media = (double) total / 10;
System.out.println( "\n\nEl promedio del grupo es: " + media );
}
}

6. Hacer que el programa lea notas hasta que el usuario introduzca una Z. Utilizar un bucle
while y un do-while.

Solucin:
import java.io.*;
public class MediaWhile {
public static void main( String args[] ) throws IOException
{
double media;
int contador=0, total=0;
String nota;
BufferedReader entrada=
new BufferedReader(new InputStreamReader(System.in));
System.out.println( "Teclee calificacin (A,B,C,D,F), Z para terminar: " );
nota = entrada.readLine();
nota = nota.toUpperCase();
while ( ! nota.equals("Z") ) {
if ( nota.equals("A") )
total = total + 4;
else if ( nota.equals("B") )
total = total + 3;
else if ( nota.equals("C") )
total = total + 2;
else if ( nota.equals("D") )
total = total + 1;
else if ( nota.equals("F") )
total = total + 0;
contador = contador + 1;
System.out.println("\nTeclee calificacin (A,B,C,D,F),
Z para terminar:");
nota = entrada.readLine().toUpperCase();
}
if ( contador != 0 ) {
media = (double) total / contador;
System.out.println( "\nEl promedio del grupo es: " + media );
}
else
System.out.println( "\nNo se introdujeron calificaciones." );
}
}

7. Hacer que el programa solo lea las letras correspondientes a las calificaciones A, B, C, D y F
o Z para finalizar. En caso de que el usuario introduzca otra letra se le avisar del error y no
ser tomada en cuenta.
Solucin:
import java.io.*;
public class MediaDoWhile2
{
public static void main( String args[] ) throws IOException
{
double media;
int contador, total;
String nota;
BufferedReader entrada=
new BufferedReader(new InputStreamReader(System.in));

total = 0;
contador = 0;
do
{
do
{
System.out.println("Teclee calificacin (A,B,C,D,F),
Z para terminar: ");
nota = entrada.readLine().toUpperCase();
if (!nota.equals("A") && !nota.equals("B")
&& !nota.equals("C") && !nota.equals("D")
&& !nota.equals("F") && !nota.equals("Z"))
System.out.println("Nota erronea");
} while(!nota.equals("A") && !nota.equals("B")
&& !nota.equals("C") && !nota.equals("D")
&& !nota.equals("F") && !nota.equals("Z"));
if ( nota.equals("A") )
{
total = total + 4;
contador = contador + 1;
}
else if ( nota.equals("B") )
{
total = total + 3;
contador = contador + 1;
}
else if ( nota.equals("C") )
{
total = total + 2;
contador = contador + 1;
}
else if ( nota.equals("D") )
{
total = total + 1;
contador = contador + 1;
}
else if ( nota.equals("F") )
{
total = total + 0;
contador = contador + 1;
}
} while ( ! nota.equals("Z") );
if ( contador != 0 )
{
media = (double) total / contador;
System.out.println( "\nEl promedio del grupo es: " + media );
}
else
System.out.println( "\nNo se introdujeron calificaciones." );
}
}

4.2

Solucin ejercicios propuestos:


1. Construir un programa en Java que sume los nmeros del 1 al 100.
public class Ej1 {
public static void main (String args[])
{
int i=0, suma100=0;
for (i=1; i<=100; i++)
{
suma100 += i;
}
System.out.println ("\nSuma del 1 al 100: " + suma100);
}
}

2. Construir un programa en Java que sume los nmeros pares del 1 al 100.
public class Ej2 {
public static void main (String args[])
{
int i=0, suma100pares=0;
for (i=1; i<=100; i++)
{
if (i%2 == 0)
{
suma100pares += i;
}
}
System.out.println ("\nSuma de los pares del 1 al 100: "
+ suma100pares);
}
}

3. Construir un programa en Java que sume los nmeros del 1 al 100, pero solo aquellos que
acaben en 2 o en 3.
public class Ej3 {
public static void main (String args[])
{
int i=0, suma10023=0;
for (i=1; i<=100; i++)
{
if (((i-2)%10 == 0) || ((i-3)%10 == 0))
{
suma10023 += i;
}
}
System.out.println ("\nSuma de los nmeros que terminan
en 2 o 3 del 1 al 100: " + suma10023);
}
}

10

4. Construir un programa en Java que sume los nmeros de 1 al n, siendo n un nmero


introducido por teclado mayor que 0.
import java.io.*;
public class Ej4 {
public static void main (String args[]) throws IOException
{
int i=0, suma=0, num;
BufferedReader entrada=
new BufferedReader(new InputStreamReader(System.in));
System.out.println("Introduzca el nmero>=0: ");
num=Integer.parseInt(entrada.readLine());
for (i=1; i<=num; i++)
{
suma += i;
}
System.out.println ("\nSuma del 1 al "+num+": " + suma);
}
}

5. Construir un programa en Java que muestre la tabla de multiplicar de la forma tradicional (Ej.
2x4=8).
public class Ej5 {
public static void main (String args[])
{
int i=0, j=0, res=0;
for (i=1; i<=10; i++)
{
for (j=1; j<=9; j++)
{
res = i*j;
System.out.println (i+"x"+j+"="+res);
}
}
}
}

6. Crear un programa que imprime el mayor de tres enteros.


public class Ej6
{
public static void main (String[] args)
{
//defino los enteros con valor
int e1=5, e2=4, e3=3, tmp;
if (e1 > e2)
{
tmp=e1;
}
else
{
tmp=e2;
}
if (tmp > e3)
{
System.out.println ("el mayor es: "+tmp);

11

}
else
{
System.out.println ("el mayor es: "+e3);
}
}
}

7. Crear un programa que dados dos enteros imprime su suma, resta, producto y divisin.
public class Ej7
{
public static void main (String[] args)
{
// dos enteros
int ent1=23, ent2=3;
System.out.println ("suma: "+(ent1+ent2));
System.out.println ("resta: "+(ent1-ent2));
System.out.println ("multi: "+(ent1*ent2));
System.out.println ("divi: "+(ent1/ent2));
}
}

8. Crear un programa que dados cuatro enteros imprime la suma y la media.


public class Ej8
{
public static void main (String[] args)
{
// cuatro enteros
int ent1=23, ent2=3, ent3=123, ent4=0;
System.out.println ("suma: "+(ent1+ent2+ent3+ent4));
System.out.println ("media: "+((ent1+ent2+ent3+ent4) / 4));
}
}

9. Crear un programa que dado un entero imprima un valor lgico que indica si el nmero es par

o impar.
public class Ej9
{
public static void main (String[] args)
{
// entero
int ent1=23;
System.out.println("par: "+ (ent1 % 2 == 0));
}
}

10. Realizar un programa que dados un entero y una cadena repita tantas veces la cadena como

indique el entero.
public class Ej10
{
public static void main (String[] args)
{
int entero=3;
String cadena="Java";
// si el entero no es positivo no hacemos nada

12

// si la cadena es "" no hacemos nada


if (entero>0 && !cadena.equals(""))
{
for (int i = 0; i < entero; i++)
{
System.out.println (cadena);
}
}
}
}

11. Realizar un programa que pida dos cadenas al usuario que deben ser V o F para ser
convertidas en valores lgicos y presente el resultado de las tres operaciones lgicas (y, o, no)
sobre dichos valores.
import java.io.*;
public class Ej11
{
public static void main (String[] args) throws IOException
{
BufferedReader entrada=
new BufferedReader(new InputStreamReader(System.in));
String cad1,cad2;
boolean log1,log2;
System.out.println ("Introduce cadena 1 (V/F): ");
cad1=entrada.readLine().toUpperCase();
System.out.println ("Introduce cadena 2 (V/F): ");
cad2=entrada.readLine().toUpperCase();
log1=cad1.equals("V");
log2=cad2.equals("V");
System.out.println("Operacin
System.out.println("Operacin
System.out.println("Operacin
System.out.println("Operacin

OR: "+(log1 || log2));


AND: "+(log1 && log2));
NOT 1: "+(!log1));
NOT 2: "+(!log2));

}
}

12. Codificar el programa que dado un nmero devuelva el nmero de cifras que lo componen.
Considerar que el nmero 0 tiene 1 cifra.
public class Ej12
{
public static void main (String[] args)
{
int entero=4560;
int cifras=0;
if (entero==0)
{
cifras=1;
}
else
{
for (int ent=entero; ent>0; cifras++)
{
ent/=10;
System.out.println(ent);
}
}

13

System.out.println("Cifras del nmero " + entero


+ ": "+cifras);
}
}

13. Realizar un programa que pida los datos de altura y sexo de personas y calcule la media de
altura para hombres y la media para mujeres.
import java.io.*;
public class Ej13
{
public static void main (String[] args) throws IOException
{
BufferedReader entrada =
new BufferedReader(new InputStreamReader(System.in));
String leido;
int alturasMas=0, numMas=0, alturasFem=0, numFem=0;
for (int i = 0; i < 10; i++)
{
do
{
System.out.println ("Introduzca sexo (M/F): ");
leido=entrada.readLine().toUpperCase();
} while (!leido.equals("M") && !leido.equals ("F"));
System.out.println("Introduzca altura:");
if (leido.equals("M"))
{
alturasMas += Integer.parseInt(entrada.readLine());
numMas++;
}
else
{
alturasFem += Integer.parseInt(entrada.readLine());
numFem++;
}
}
System.out.println ("\n\nMedia de alturas
Masc.="+(alturasMas/numMas));
System.out.println ("\n\nMedia de alturas
Fem.="+(alturasFem/numFem));
}
}

14

14. Realizar un programa que pida datos de altura, sexo y edad y realice la media de altura para
cada uno de los siguientes grupos:
mujeres, menores de 20 aos no incluidas las de 20
hombres, menores de 20 aos no incluidos los de 20
mujeres, entre 20 y 40 aos ambos inclusive
mujeres, de ms de 40 aos
hombres de ms de 20 aos
personas entre 15 y 35 aos ambos inclusive
import java.io.*;
public class Ej14
{
public static void main (String[] args) throws IOException
{
BufferedReader entrada =
new BufferedReader(new InputStreamReader(System.in));
String leido;
int enteroLeido=0;
int alturasMujeresMenores=0, numMujeresMenores=0;
int alturasHombresMenores=0, numHombresMenores=0;
int alturasMujeresMedia =0, numMujeresMedia =0;
int alturasMujeresMayores=0, numMujeresMayores=0;
int alturasHombresMedia =0, numHombresMedia =0;
int alturasGrupoSuelto
=0, numGrupoSuelto
=0;
for (int i = 0; i < 10; i++)
{
do
{
System.out.println ("Introduzca sexo (M/F): ");
leido=entrada.readLine().toUpperCase();
} while (!leido.equals("M") && !leido.equals("F"));
do
{
System.out.println ("Introduzca edad (1-100): ");
enteroLeido=Integer.parseInt(entrada.readLine());
} while (enteroLeido<1 || enteroLeido>100);
System.out.println ("Introduzca altura:");
enteroLeido=Integer.parseInt (entrada.readLine ());
if (leido.equals("M"))
{
//hombres
if (enteroLeido<20)
{
alturasHombresMenores+=enteroLeido;
numHombresMenores+=1;
}
else
{
alturasHombresMedia+=enteroLeido;
numHombresMedia+=1;
}
}
else
{
// mujeres
if (enteroLeido<20)
{

15

alturasMujeresMenores+=enteroLeido;
numMujeresMenores+=1;
}
else
{
if (enteroLeido>40)
{
alturasMujeresMayores+=enteroLeido;
numMujeresMayores+=1;
}
else
{
alturasMujeresMedia+=enteroLeido;
numMujeresMedia+=1;
}
}
}
// el grupo de 15 a 35 de cualquier sexo
if (enteroLeido>=15 && enteroLeido<=35)
{
alturasGrupoSuelto+=enteroLeido;
numGrupoSuelto+=1;
}
}
System.out.println ("\n\nMedia de alturas:");
if (numMujeresMenores>0)
System.out.println ("Mujeres <20 aos:
"+(alturasMujeresMenores/numMujeresMenores));
if (numMujeresMedia>0)
System.out.println ("Mujeres >20 y <40 aos:
"+(alturasMujeresMedia/numMujeresMedia));
if (numMujeresMayores>0)
System.out.println ("Mujeres >40 aos:
"+(alturasMujeresMayores/numMujeresMayores));
if (numHombresMenores>0)
System.out.println ("Hombres <20 aos:
"+(alturasHombresMenores/numHombresMenores));
if (numHombresMedia>0)
System.out.println ("Hombres >20 aos:
"+(alturasHombresMedia/numHombresMedia));
if (numGrupoSuelto>0)
System.out.println ("General 15-35 aos:
"+(alturasGrupoSuelto/numGrupoSuelto));
}
}

15. Codificar un programa que, dados tres nmeros enteros que recogen la informacin del da,
mes y ao de una fecha, determine si es una fecha vlida, considerando el 29 de febrero para
los aos bisiestos.
import java.io.*;
public class Ej15
{
public static void main (String[] args) throws IOException
{
BufferedReader entrada =
new BufferedReader(new InputStreamReader(System.in));
// valores de fecha
int dia, mes, ao;
boolean correcta=true;

16

System.out.println ("Introduzca da: ");


dia=Integer.parseInt(entrada.readLine());
System.out.println ("Introduzca mes: ");
mes=Integer.parseInt(entrada.readLine());
System.out.println ("Introduzca ao: ");
ao=Integer.parseInt(entrada.readLine());
// rangos base
if (ao<1 || ao>2008 || mes<1 || mes>12 || dia<1 || dia>31)
{
correcta=false;
}
else // seguimos comprobando los das del mes
{
if (mes==2 ) // veamos febrero
{
if ((ao%4==0) && !((ao%100==0) && (ao%400!=0) ))
{// bisiesto
if (dia>29)
{
correcta=false;
}
}
else
{ // no bisiesto
if (dia>28)
{
correcta=false;
}
}
}
else // resto de meses
{
if ((mes<8 && mes%2==0 && dia>30) ||
(mes<8 && mes%2!=0 && dia>31) ||
(mes>7 && mes%2==0 && dia>31) ||
(mes>7 && mes%2!=0 && dia>30) )
{
correcta=false;
}
}
}
System.out.println("Fecha correcta: "+ correcta);
}
}

16. Hacer un programa que dadas dos fechas diga la diferencia en das entre ellas.
public class Ej16
{
public static void main (String[] args)
{
// valores de fecha1
int dia1=29, mes1=7, ao1=2006;
// valores de fecha2
int dia2=2, mes2=3, ao2=2004;
// restamos fecha1 - fecha2
int fecha1=ao1*365+mes1*30+dia1;
int fecha2=ao2*365+mes2*30+dia2;

17

System.out.println("La diferencia es de "+(fecha1-fecha2)


+" das");
}
}

17. Escribir un programa que determine si un nmero es primo.


Notas: Un nmero es primo si slo es divisible por s mismo y por 1.
Si un nmero no es primo diremos que es compuesto.
El 0 y el 1 son nmeros especiales que no se consideran primos ni compuestos.
import java.io.*;
public class Ej17
{
public static void main( String args[] ) throws IOException
{
BufferedReader entrada =
new BufferedReader(new InputStreamReader(System.in));
int num, resto=1, n=2;
System.out.println( "\nIntroduce un nmero:" );
num = Integer.parseInt(entrada.readLine());
while ((n<num/2) && (resto!=0))
{
resto = (int) (num%n);
n++;
}
if (resto!=0) System.out.println( "\nEl nmero "
+ num + " es primo.");
else System.out.println( "\nEl nmero "
+ num + " no es primo.");
}
}

18

Vous aimerez peut-être aussi