Resolución de ejercicios de métodos
a)
import java.io.*;
public class PrimoPar {
public static boolean par(int num)
{
if (num % 2 == 0)
{
return true;
}
else
{
return false;
}
}
public static boolean perfecto(int num) {
int sum = 0;
for(int i = 1; i < num; i++)
{
if(num % i == 0)
{
sum += i;
}
}
if (sum == num)
{
return true;
}
else
{
return false;
}
}
public static void main(String[] args) throws IOException {
int a,b,cont = 0;
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
System.out.print("a : ");
a = Integer.parseInt(in.readLine());
System.out.print("b : ");
b = Integer.parseInt(in.readLine());
for(int i = a; i <= b; i++)
{
if ( par(i) && perfecto(i) )
{
System.out.print(i + "\t");
cont++;
}
}
System.out.println("\n\nExisten " + cont + " numeros que cumplen la condicion");
}
}Bajar archivo
b)
import java.io.*;
public class SumatoriaEsp {
public static boolean primo(int num) {
int cont = 0;
for(int i =1; i < num; i++)
{
if (num % i == 0) { cont++; }
}
if (cont < 2) { return true; }
else { return false; }
}
public static boolean multiploEspecial(int num) {
boolean aux = false;
if (num % 5 == 0 || num % 7 == 0) { aux = !aux; }
return aux;
}
/* un metodo puede ser llamado desde otro método */
public static int sumatoria(int a, int b) {
int sum = 0;
for(int i = a; i <= b; i++)
{
if ( primo(i) ) { sum += i*i; }
if ( multiploEspecial(i) ) { sum -= i;}
/* System.out.println("i : " + i + " sum : " + sum); */
}
return sum;
}
public static void main(String[] args) throws IOException {
int a , b , s = 0;
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
System.out.print("a : ");
a = Integer.parseInt(in.readLine());
System.out.print("b : ");
b = Integer.parseInt(in.readLine());
s = sumatoria(a,b);
System.out.print("\n\nEl valor de la sumatoria de " + a + " hasta " + b + " es : " + s );
}
}Bajar archivo