ADVERTENCIA: LOS SIGUIENTES ALGORITMO SE ENTREGA "COMO SON" ("AS IS") SiN GARANTIA DE NINGUN TIPO. DEBE REALIZAR LAS VERIFICACIONES CORRESPONDIENTES ANTES DE EMPLEARLOS PARA CUALQUIER FIN. SOLO TIENEN UNA FINALIDAD EDUCATIVA.

martes, 30 de octubre de 2012

Ejemplo de Algoritmo en PseInt para calcular el Producto de Matrices



Proceso ProductoMatrices
Definir i como entero;
Definir j como entero;
Definir m como entero;
Definir n como entero;
Definir columnasA como entero;
Definir columnasB como entero;
Definir filasA como entero;
Definir A como real;
Definir B como real;
Definir C como real;

Escribir "Ingrese numero de columnas en la matriz A (debe ser igual al numero de filas de B):";
Leer columnasA;

Escribir "Ingrese el numero de filas en la matriz A:";
Leer filasA;

Escribir "Ingrese el numero de columans en la matriz B:";
Leer columnasB;

Dimension A [filasA,columnasA];
Dimension B [columnasa,columnasA];

Para i<-0 Hasta filasA - 1 Con Paso 1 Hacer
Para j<- 0 Hasta columnasA - 1 Con Paso 1 Hacer
Escribir "Ingrese elemento A[",i,",",j,"]";
Leer A [i,j];
FinPara
FinPara

Para i<-0 Hasta columnasA - 1 Con Paso 1 Hacer
Para j<- 0 Hasta columnasB - 1 Con Paso 1 Hacer
Escribir "Ingrese elemento B [",i,",",j,"]";
Leer B [i,j];
FinPara
FinPara

Dimension C [columnasA,columnasB];

Para n<-0 Hasta columnasB - 1 Con Paso 1 Hacer
Para m<-0 Hasta columnasA - 1 Con Paso 1 Hacer
C[m,n] <- 0;
Para i<-0 Hasta columnasA - 1 Con Paso 1 Hacer
C[m,n] <- C[m,n]+A[m,i]*B[i,n];
FinPara
FinPara
FinPara

Para n<-0 Hasta columnasB - 1 Con Paso 1 Hacer
Para m<-0 Hasta columnasA  - 1 Con Paso 1 Hacer
Escribir "C[",m,",",n,"] = ",C[m,n];
FinPara
FinPara


FinProceso

Ejemplo de Algoritmo de Euclides en PseInt


Proceso AlgoritmoEuclides

Definir a como entero;
Definir b como entero;
Definir tb como entero;

Escribir "Ingrese el valor de uno de los numeros a los que sacara el MCD";
Leer a;

Escribir "Ingrese el valor del otro numero: ";
Leer b;

Mientras b <> 0 Hacer
tb <- b;
b <- a % b;
a <- tb;
FinMientras

Escribir "El MCD es :", a;

FinProceso

viernes, 26 de octubre de 2012

Ejemplo de Algoritmo para convertir un numero decimal en romano



Proceso DecimalARomanoHastaMil
Definir unidad como entero;
Definir decena como entero;
Definir centena como entero;
Definir miles como entero;
Definir decimal como entero;
Definir romano como cadena;

Escribir "Ingrese un numero entro entre 0 y 2021: ";
Leer decimal;



unidad <- decimal % 10;
decimal <- decimal - unidad;
decimal <- decimal / 10;

decena <- decimal % 10;
decimal <- decimal - decena;
decimal <- decimal / 10;

centena <- decimal % 10;
decimal <- decimal - centena;
decimal <- decimal / 10;

miles <- decimal % 10;
decimal <- decimal - miles;
decimal <- decimal / 10;

romano <- "";

Segun unidad Hacer
1:
romano <- "I";
2:
romano <- "II";
3:
romano <- "III";
4:
romano <- "IV";
5:
romano <- "V";
6:
romano <- "VI";
7:
romano <- "VII";
8:
romano <- "VIII";
9:
romano <- "IX";
FinSegun

Segun decena Hacer
1:
romano <- "X" + romano ;
2:
romano <- "XX" + romano;
3:
romano <- "XXX" + romano;
4:
romano <-  "XL"  + romano;
5:
romano <-  "L" + romano;
6:
romano <- "LX"  + romano;
7:
romano <- "LXX"  + romano;
8:
romano <- "LXXX" + romano;
9:
romano <- "XC" + romano;
FinSegun

Segun centena Hacer
1:
romano <- "C" + romano;
2:
romano <- "CC" + romano;
3:
romano <- "CCC" + romano;
4:
romano <- "CD" + romano;
5:
romano <- "D" + romano;
6:
romano <- "DC" + romano;
7:
romano <- "DCC" + romano;
8:
romano <- "DCCC" + romano;
9:
romano <- "CM" + romano;
FinSegun

Segun miles Hacer
1:
romano <- "M" + romano;
2:
romano <- "MM" + romano;
FinSegun

Escribir "El numero en romano es; ", romano;



FinProceso

Calculo del área de un triángulo cualquiera por sus lados


Proceso CalculoAreaTrinaguloLados
Definir lado como real;
Definir lado2 como real;
Definir lado3 como real;
Definir semisuma como real;
Definir area como real;


Escribir "Este programa calcula el area usando la formula de Heron";

Escribir "Ingrese la longitud de uno de los lados del triangulo: ";
Leer lado;

Escribir "Ingrese la longitud de otro de los lados del triangulo: ";
Leer lado2;

Escribir "Ingrese la longitud del lado del triangulo que falta: ";
Leer lado3;

semisuma <- lado + lado2 + lado3;
semisuma <- semisuma / 2;

    area <- semisuma*(semisuma-lado)*(semisuma-lado2)*(semisuma-lado3);
area <- raiz (area);

Escribir "El area del triangulo es: ", area;

FinProceso

Ejemplo de Algoritmo para determinar la cantidad de cuadrados que hay adentro de un cuadrado


Proceso CuentaCuadradosDentroCuadrado
Definir divisiones como entero;
Definir i como entero;
Definir suma como entero;

Escribir "Ingrese la cantidad de segmentos en los que se divide un cuadrado";
Leer divisiones;
suma <- 0;
Para i<-1 Hasta divisiones Con Paso 1 Hacer
suma <- suma + i*i;
FinPara
Escribir "La cantidad de cuadrados adentro del cuadrado es: ",suma;

FinProceso

Pseudocodigo para calcular la edad de una persona a partir de las fechas actual y de nacimiento


Proceso EdadPersona

Definir dia_actual como entero;
Definir mes_actual como entero;
Definir anio_actual como entero;
Definir dia como entero;
Definir mes como entero;
Definir anio como entero;
Definir edad_base como entero;
Definir edad como entero;

Escribir "Ingrese el dia actual [1-31] y presione Entrar";
Leer dia_actual;

Escribir "Ingrese el mes actual [1-12] y presione Entrar";
Leer mes_actual;

Escribir "Ingrese el año y presione Entrar";
Leer anio_actual;



Escribir "Ingrese el dia en que nacio la persona [1-31] y presione Entrar";
Leer dia;

Escribir "Ingrese el mes en que nacio la persona [1-12] y presione Entrar";
Leer mes;

Escribir "Ingrese el año en que nacio la persona [1-12] y presione Entrar";
Leer anio;




edad_base <- anio_actual - anio;


Si (mes_actual < mes) Entonces
edad_base <- edad_base - 1;
FinSi

Si mes_actual = mes Entonces


Si (dia_actual < dia) Entonces
edad_base <- edad_base - 1;
FinSi

FinSi

edad <- edad_base;
Escribir "La edad actual de la persona es de: ",edad_base," años";

FinProceso

Ejemplo de Algoritmo para convertir una cadena en un numero telefonico



Proceso ConversionCadenaANumeroTelfenico

Definir nombre como cadena;
Definir len como entero;
Definir subcad como cadena;
Definir retorno Como cadena;
Definir i Como entero;

Escribir "Ingrese el nombre: ";
Leer nombre;
retorno <- "";
nombre <- " " + nombre;
len <- longitud (nombre);

Escribir subcadena (nombre,1,1);

Para i<-1 Hasta len Con Paso 1 Hacer
subcad <- subcadena (nombre,i,i);
Si subcad = "A" | subcad = "B" | subcad = "C" | subcad = "2" Entonces
retorno <- concatenar (retorno,"2");
FinSi
Si subcad = "D" | subcad = "E" | subcad = "F" | subcad = "3" Entonces
retorno <- concatenar (retorno,"3");
FinSi
Si subcad = "G" | subcad = "H" | subcad = "I" | subcad = "4" Entonces
retorno <- concatenar (retorno,"4");
FinSi
Si subcad = "J" | subcad = "K" | subcad = "L" | subcad = "5" Entonces
retorno <- concatenar (retorno,"5");
FinSi
Si subcad = "M" | subcad = "N" | subcad = "O" | subcad = "6" Entonces
retorno <- concatenar (retorno,"6");
FinSi
Si subcad = "P" | subcad = "Q" | subcad = "R" | subcad = "S" | subcad = "7" Entonces
retorno <- concatenar (retorno,"7");
FinSi
Si subcad = "T" | subcad = "U" | subcad = "V" | subcad = "8" Entonces
retorno <- concatenar (retorno,"8");
FinSi
Si subcad = "W" | subcad = "X" | subcad = "Y" | subcad = "Z" | subcad = "9" Entonces
retorno <- concatenar (retorno,"9");
FinSi
Si subcad = "1" Entonces
retorno <- concatenar (retorno,"1");
FinSi
Si subcad = "*" Entonces
retorno <- concatenar (retorno,"*");
FinSi
Si subcad = "#" Entonces
retorno <- concatenar (retorno,"#");
FinSi
Si subcad = "0" Entonces
retorno <- concatenar (retorno,"0");
FinSi
FinPara

Escribir "El numero telefonico a marcar es: ", retorno;



FinProceso

Ejemplo de Algoritmo para convertir minutos a dia, hora y minutos



Proceso ConversionMinutoADiaHoraMinuto
Definir minutos Como Entero;
Definir min como entero;
Definir hora como entero;
Definir  dia como entero;

Escribir "Ingrese la cantidad de minutos";
Leer minutos;

min <- minutos % 60;
minutos <- minutos - min;
minutos <- minutos / 60;
hora <- minutos % 24;
minutos <- minutos - hora;
minutos <- minutos / 24;
dia <- minutos;


Escribir "La cantidad de ",minutos," minutos corresponde a ",dia," dias con ",hora," horas y ",min," minutos";

FinProceso

Ejemplo de Algoritmo que computa los segundos necesarios para que una cantidad en segundos se convierta en solo minutos


Proceso CalculoSegundosFaltantesMinuto
Definir segundosTranscurridos como entero;
Definir segundosFaltantes como entero;

Escribir "Ingrese la cantidad de segundos transcurridos";
Leer segundosTranscurridos;

segundosFaltantes <- 60 - segundosTranscurridos % 60;

Si segundosFaltantes = 60 Entonces
Escribir "La cantidad de segundos que faltan para convertirse en minutos el tiempo transcurrido sin segundos restantes es cero seg";
Sino

Escribir "La cantidad de segundos que faltan para convertirse en minutos el tiempo transcurrido sin segundos restantes es ",segundosFaltantes," seg";
FinSi



FinProceso

Ejemplo de Algoritmo para calcular combinaciones y factoriales (PseInt)


Proceso FactorialyCombinacion
Definir tipo como entero;
Definir elementos como entero;
Definir grupo como entero;
Definir combinacion como real;
Definir factorial como entero;
Definir i como entero;

Escribir "Ingrese el tipo de computo";
Escribir "1.- Calculo de Combinaciones";
Escribir "2.- Calculo de Factorial";

Leer tipo;

Si tipo = 1 Entonces
Escribir "Ingrese la cantidad de elementos";
Leer elementos;
Escribir "Ingrese el tamaño de los grupo (de 2 en 2, 3 en 3):";
Leer grupo;
combinacion <- 1;
Para i <- 0 Hasta grupo - 1 Con Paso 1 Hacer
combinacion <- combinacion * ((elementos - i)/(grupo- i));
FinPara
Escribir "La cantidad de combinaciones es: ", combinacion;
Sino
Escribir "Ingrese la cantidad de elemntos";
Leer elementos;
factorial <- 1;
Para i <- 1 Hasta elementos Con Paso 1 Hacer
factorial <- factorial * i;
FinPara
Escribir "El Factorial ",elementos,"! es: ", factorial;
FinSi

FinProceso


El enlace al algoritmo es el siguiente: http://dengee.net/a6y9c

Ejemplo de Algoritmo Promedio Calificacion (PseInt)


Proceso PromedioNotas
Definir continuar como entero;
Definir calificacion como real;
Definir cantidad como entero;
Definir calificaciones como real;
Definir promedio como real;


continuar <- 1;
cantidad <- 0;
calificaciones <- 0;
Mientras continuar = 1 Hacer
Escribir "Ingrese calificacion: ";
Leer calificacion;

calificaciones <- calificaciones + calificacion;
cantidad <- cantidad + 1;

Escribir "Continuar ingresando calificaciones: ";
Escribir "1 .- Si";
Escribir "2 .- No";
Leer continuar;

FinMientras

Si cantidad = 0 Entonces
Escribir "No se puede mostrar el promedio porque no se ingresaron calificaciones";
Sino
promedio <- calificaciones / cantidad;
Escribir "El promedio de calificaciones es: ", promedio;
FinSi



FinProceso


jueves, 25 de octubre de 2012

Ejemplo de Algorimo para convertir Fahrenheit en Centigrados y viceversa (PseInt)


Proceso CelciusFahrenheit
Definir tipo como entero;
Definir temperatura como real;
Definir temperatura_dest como real;


Escribir "Desea efectuar la conversion de: ";

Escribir "1.- Fahrenheit a Centigrados";
Escribir "2.- Centigrados a Fahrenheit";
Leer tipo;

Si tipo = 1 Entonces
Escribir "ingrese temperatura en Fahrenheit: ";
Leer temperatura;
temperatura_dest <- (temperatura -32)*5/9;
Escribir "La temperatura en centigrados es: ",temperatura_dest;
Sino
Escribir "ingrese temperatura en Centigrados: ";
Leer temperatura;
temperatura_dest <- temperatura*9/5 + 32;
Escribir "La temperatura en fahrenheit es: ",temperatura_dest;

FinSi


FinProceso

Ejemplo de Algoritmo para determinar la hipotenusa de un triangulo (PseInt)


Proceso ComputaHipotenusa

Definir co como real;
Definir ca Como real;
Definir hipotenusa_cuadrada como real;
Definir hipotenusa como real;

Escribir "Ingrese longitud del cateto opuesto en cm: ";
Leer co;

Escribir "Ingrese longitud del cateto adyacente en cm: ";
Leer ca;

hipotenusa_cuadrada <- co*co + ca*ca;

hipotenusa <- raiz (hipotenusa_cuadrada);

Escribir "La hipotenusa del triangulo es: ",hipotenusa," cm";

FinProceso

Ejemplo de Algoritmo para calcular area y volumen del cilindro (PseInt)



Proceso DeterminaAreaVolumenCilindro
Definir altura como real;
Definir radio como real;
Definir volumen como real;
Definir area como real;
Definir pi como real;

pi <- 3.141592655;

Escribir "ingrese altura del cilindro en cm: ";
Leer altura;

Escribir "Ingrese radio del cilindro en cm";
Leer radio;


volumen <- pi*radio*radio*altura;
area <- pi*(radio*radio + 2*radio*altura);



Escribir "El volumen del cilindro es ", volumen, " cm3";
Escribir "El area del cilindro es ", area, "cm2";



FinProceso

Ejemplo de Algoritmo para invertir un número entero en Pseint (Pseudocodigo)


Proceso InversionCifras
Definir n como entero;
Definir retorno como entero;
Definir digito como entero;

Escribir "Ingrese un numero sin ceros no significativos";
Leer n;
retorno <- 0;
Si n = 0 Entonces
Escribir "El numero invertido sin ceros no significativos es 0";
FinSi

Si n < 10 Entonces
Escribir "El numero invertido sin ceros no significativos es",n;
FinSi

Mientras n > 0 Hacer
digito <- n%10;
n <- n - digito;
n <- n / 10;
retorno <- retorno*10 + digito;
FinMientras

Escribir "El numero invertido sin ceros no significativos es: ",retorno;

FinProceso

martes, 23 de octubre de 2012

Geometría Analítica: Ecuación de la Recta

La ecuación de la recta es aquella que permite modelar la gráfica de una recta en una plano cartesiano. Estas   rectas se caracterizan porque se extienden de manera infinita en el plano, y cortan al eje de las Y u ordenada y el eje de las X u abscisa en un punto. Siendo estos puntos, junto a la pendiente, los parámetros que permiten crear el modelo analítico de la recta,. Su forma es la siguiente:

              y = ax  +  b

En esta ecuación la a representa la pendiente de la recta y la b es el punto en que la recta corta al eje de las ordenadas. Adicionalmente, existe una ecuación alternativa que permite el cálculo de estos parámetros, cuando se poseen dos puntos diferentes de la recta. 

        a = y1 - y2
             ---------
              x1 - x2

Donde y1 es la coordenada y del primer punto y x1 es la coordenada x del primer punto, e igualmente, y2 es la coordenada y del segundo punto y x2 es la coordenada x del segundo punto. 

Ejemplo de Algoritmo para determinar la suma de los primeros N primos



Proceso SumaNPrimerosPrimos
Definir n como entero;
Definir suma como entero;
Definir numero_actual como entero;
Definir primo como entero;
Definir rt como real;
Definir div como entero;
Definir cantidad_primos como entero;

Escribir "Ingrese la cantidad de numeros Primos";
Leer n;
cantidad_primos <- n;
suma <- 0;
numero_actual <- 2;
Mientras n > 0 Hacer
primo <- 1;
rt <- raiz (numero_actual);

//Si el numero_actual es primo debe tener un divisor menor que su raíz
Para div<- 2 Hasta rt Con Paso 1 Hacer

//Un numero primo solo es divible entre el y 1 por ello si div divide al numero_actual entonces no es primo
Si numero_actual % div = 0 Entonces
primo <- 0;
div <- numero_actual;
FinSi
FinPara
Si primo = 1 Entonces
suma <- numero_actual + suma;
FinSi
numero_actual <- numero_actual + 1; //Avanzamos al siguiente numero
Si primo = 1 Entonces
n <- n - 1;
FinSi
FinMientras

Escribir "La suma de los primeros ",cantidad_primos," primos es:", suma;




FinProceso

Ejemplo de Algoritmo Para realizar Raiz Cuadrada, Suma, Multiplicacion, Resta,(PseInt) Psudocodigo


Proceso OperacionesAritmeticas
Definir seleccion como Caracter;
Definir numero como Real;
Definir mr como Real;
Definir Mr1 como Real;
Definir rt como Real;
Definir sumando1 como Real;
Definir sumando2 como Real;
Definir suma como Real;
Definir minuendo como Real;
Definir sustraendo como Real;
Definir resta Como Real;
Definir multiplicando como Real;
Definir multiplicador como Real;
Definir producto como Real;
Definir precision como Real;

Escribir "Introduzca la operacion que desea realizar";
Escribir "[S]uma";
Escribir "[M]ultiplicacion";
Escribir "[R]esta";
Escribir "Raiz [C]uadrada";
Escribir "Ingrese la letra resaltada que corresponda a su seleccion";
Leer seleccion;
Si seleccion = "C" Entonces

Escribir "Ingrese un numero positivo";
Leer numero;
Mientras numero < 0 Hacer
Escribir "Ingrese un numero positivo";
Leer numero;
FinMientras

mr <- 0;
Mr1 <- numero;

rt <- (mr + Mr1)/2;

Escribir "Ingrese precision";
Leer precision;

Mientras rt*rt < numero - precision | rt*rt > numero + precision Hacer
Si rt*rt < numero Entonces
mr <- rt;
rt <- (rt + Mr1)/2;
FinSi
Si rt*rt > numero Entonces
Mr1 <- rt;
rt <- (rt + mr)/2;
FinSi
FinMientras

Escribir "La raiz cuadrada del numero ",numero," es :",rt;

FinSi

Si seleccion = "S" Entonces
Escribir "Ingrese primer sumando";
Leer sumando1;
Leer sumando2;
suma <- sumando1+ sumando2;
Escribir "La suma de ",sumando1," + ",sumando2," es igual a ",suma;
FinSi

Si seleccion = "R" Entonces
Escribir "Ingrese minuendo";
Leer minuendo;
Escribir "Ingrese sustraendo";
Leer sustraendo;
resta <- minuendo - sustraendo;
Escribir "La resta de ",minuendo," - ",sustraendo," es igual a ",resta;
FinSi

Si seleccion = "M" Entonces
Escribir "Ingrese multiplicando";
Leer multiplicando;
Escribir "Ingrese multiplicador";
Leer multiplicador;
producto <- multiplicado - multiplicador;
Escribir "La multiplicacion de ",multiplicando," x ",multiplicado," es igual a ",producto;
FinSi

FinProceso

lunes, 22 de octubre de 2012

Ejemplo de Algoritmo en PseInt (Pseudocodigo) que escribe los numeros de tres digitos tales que la suma de los cubos de sus digitos es igual al número


Proceso CuboSumaIgualNumero
 Definir i como entero;
 Definir u como entero;
 Definir d como entero;
 Definir c como entero;
 Definir suma_cubo como entero;

 Escribir "Este programa escribe todos los numero de tres digitos que cumplen la condicion de que la sume de los cubos de sus digitos sea igual al numero";

 Para i&lt;-100 Hasta 999 Con Paso 1 Hacer
  u <- i % 10;
  d <- (i - u)%100;
  d <- d /10;
  c <- (i- u - 10*d);
  c <- c / 100;

  suma_cubo &lt;- u*u*u + d*d*d + c*c*c;
  Si suma_cubo = i Entonces
   Escribir "El numero ",i," cumple la condicion";
  FinSi
 FinPara

FinProceso

Ejemplo de Algoritmo para calcular Tabla de Datos con polinomio

Ejemplo de Algoritmo para imprimir la serie de Fibbonacci en Pseint (Pseudocodigo)



Proceso Fibbonaci_Serie
Definir a como entero;
Definir b como entero;
Definir n_fibo como entero;
Definir fin_ciclo como entero;
Definir i como entero;
Definir tmpa como entero;

Escribir "Ingrese la cantidad de numeros de Fibonacci a calcular";
Leer n_fibo;

a <- 1;
b <- 1;

Escribir "Fibonacci 1: ",a;
Escribir "Fibonacci 2: " ,b;
n_fibo <- n_fibo -1;

Para i<-2 Hasta n_fibo Con Paso 1 Hacer

tmpa <- a;
a <- b;
b <- b + tmpa;
Escribir "Fibonacci ",i+1,": ",b;

FinPara


FinProceso

Ejemplo de Algoritmo para la solución de Reglas de 3 Simple

Ejemplo de Pseudocodigo: Algoritmo Para Determinar Si dos Numeros Son amigos En Pseint (No optimizado)


SubProceso suma <- SumaDivisores (A)
Definir suma como entero;
Definir primo como entero;
Definir sumaDivA como entero;
Definir div como entero;
Definir divisor como entero;
Definir resto como entero;

sumaDivA <- 0;
Para divisor <- 2 Hasta A Con Paso 1 Hacer
resto <- A % divisor;
Si resto = 0 Entonces
sumaDivA <- sumaDivA + divisor;
FinSi
FinPara
suma <- sumaDivA - A +1;
FinSubProceso

Proceso PseintAmigos
Definir A Como Entero;;
Definir B Como Entero;
Definir sumaA Como Entero;
Definir sumaB Como Entero;
Definir resultanteLog Como Logico;

Leer A,B;
sumaA <- SumaDivisores (A);
sumaB <- SumaDivisores (B);
resultanteLog <- (sumaA = B) & (sumaB = A);
Si  resultanteLog = Verdadero Entonces
Escribir "Son Amigos";
Sino
Escribir "No son Amigos";
FinSi

FinProceso

Ejemplo de Algoritmo para Calcular la edad de una persona en Java

import java.io.*;

public class calculoedad {

    public static void main (String [] args) throws IOException {
        
        BufferedReader entrada = new BufferedReader (new InputStreamReader (System.in));
        
        System.out.println ("Ingrese el dia actual [1-31] y presione Entrar");
        String dia_actualcad = entrada.readLine();
        
        System.out.println ("Ingrese el mes actual [1-12] y presione Entrar");
        String mes_actualcad = entrada.readLine();
        
        System.out.println ("Ingrese el anio anio y presione Entrar");
        String anio_actualcad = entrada.readLine();
        
        
        
        System.out.println ("Ingrese el dia en que nacio la persona [1-31] y presione Entrar");
        String diacad = entrada.readLine();
        
        System.out.println ("Ingrese el mes en que nacio la persona [1-12] y presione Entrar");
        String mescad = entrada.readLine();
        
        System.out.println ("Ingrese el anio en que nacio la persona [1-12] y presione Entrar");
        String aniocad = entrada.readLine();
        
        int anio_actual = Integer.parseInt(anio_actualcad);
        int anio = Integer.parseInt(aniocad);
        
        int edad_base = anio_actual - anio;
        
        int mes_actual = Integer.parseInt(mes_actualcad);
        int mes = Integer.parseInt(mescad);
        
        if (mes_actual < mes) edad_base--;
        else if (mes_actual == mes) {
            
            int dia_actual = Integer.parseInt(dia_actualcad);
            int dia = Integer.parseInt(diacad);
            
             if (dia_actual < dia) edad_base--;        
            
        }
        
        int edad = edad_base;
        
        System.out.println ("La edad actual de la persona es de: "+edad_base+" anios");
        System.out.println ("Para salir presione entrar");
        
        
    }
}

Ejemplo de Algoritmo Para Calcular Areas En Java: Circulo, Triangulo y Cuadrado

import java.io.*;

public class area2d {
    
    
    public static void main (String [] args) throws IOException {
        
        BufferedReader entrada = new BufferedReader (new InputStreamReader(System.in));
        
        System.out.println ("Bienvenido al computador de area");
        System.out.println ("Seleccione la figura a la cual le calculara el area y luego presione Entrar");
        System.out.println ("1.-Pulse 1 para cuadrado");
        System.out.println ("2.-Pulse 2 para triangulo");
        System.out.println ("3.-Pulse 3 para circulo");
        
        String seleccion = entrada.readLine();
        
        if (seleccion.equals("1")) {
            
            calculacuadrado();
        }
        
        if (seleccion.equals("2")) {
            
            calculatriangulo ();
        }
        
        if (seleccion.equals("3")) {
            
            calculacirculo();
        }
        
        System.out.println("Haga click en entrar para Salir");
        entrada.readLine();
        
    }
    
    
    private static void calculatriangulo ()  throws IOException{
        
        BufferedReader entrada = new BufferedReader (new InputStreamReader(System.in));
        
        System.out.println ("Ingrese la longitud de la base en cm y haga click en entrar");
        String basecad = entrada.readLine();
        System.out.println ("Ingrese la longitud de la altura en cm y haga click en entrar");
        String altocad = entrada.readLine();
        
        double base = Double.parseDouble(basecad);
        double alto = Double.parseDouble(altocad);
        
        double area = (base*alto)/2;
        
        System.out.println ("El area del triangulo es igual a: "+area+" cm2");
        
    }
    
    
    private static void calculacuadrado () throws IOException {
        
        BufferedReader entrada = new BufferedReader (new InputStreamReader(System.in));
        
        System.out.println ("Ingrese la longitud de un lado en cm y haga click en entrar");
        String ladocad = entrada.readLine();
        
        double lado = Double.parseDouble(ladocad);
                
        double area = lado*lado;
        
        System.out.println ("El area del cuadrado es igual a: "+area+" cm2");
        
        
    }
    
    
    private static void calculacirculo () throws IOException {
        
        BufferedReader entrada = new BufferedReader (new InputStreamReader(System.in));
        
        System.out.println ("Ingrese la longitud del radio en cm y haga click en entrar");
        String radiocad = entrada.readLine();
        
        double radio = Double.parseDouble(radiocad);
                
        double area = radio*radio*Math.PI;
        
        System.out.println ("El area del circulo es igual a: "+area+" cm2");
        
        
    }

}