Programa que calcula idade JCreator

Sou iniciante em java e to com um problema pra desenvolver um programa que calcula a idade de uma pessoa sem usar o Date ou Calendar
tem que ter as variáveis para o dia, mês e ano de nascimento e dia, mês e ano da data atual.
não adianta só pegar o ano atual e subtrai pelo ano de nascimento, tem que contar com o mês e os dias.

Ex:
Data de nascimento: 10/03/1980
Data atual: 09/03/2012
Idade desta pessoa: 31 anos

ja tentei de várias maneiras e até agora nd

[code]
import java.util.Scanner;
public class exercicio5 {
public static void main (String args[]){
Scanner e= new Scanner (System.in);
float dia,mes,ano,diaat,mesat,anoat,idade;
System.out.print ("Digite o dia de nascimento: ");
dia = e.nextFloat();
System.out.print ("Digite o mês de nascimento: ");
mes = e.nextFloat();
System.out.print ("Digite o ano de nascimento: ");
ano = e.nextFloat();
System.out.print ("Digite o dia atual: ");
diaat = e.nextFloat();
System.out.print ("Digite o mês atual: ");
mesat = e.nextFloat();
System.out.print ("Digite o ano atual: ");
anoat = e.nextFloat();
idade = (anoat-ano)+(diaat-dia)%(mesat-mes);
System.out.println ("Idade desta pessoa: "+idade);

}
}[/code]

Questão de lógica pura, Primeiro modifique as variaveis para int e depois tudo de nextFloat para nextInt.
Segundo, remova essas duas linhas:

idade = (anoat-ano)+(diaat-dia)%(mesat-mes);  
System.out.println ("Idade desta pessoa: "+idade); 

E acrescente essas:

idade = anot - ano; // idade temporaria para depois verificarmos se é isso mesmo

if( mesat >= mes && diaat >= dia ) {
    return;
}
else if( (mesat >= mes && diaat <= dia) || ( mesat <= mes ) ) {
    idade -= 1;
}

System.out.println ("Idade desta pessoa: "+idade);   

Agora vê se funciona, estou sem IDE aqui, então fiz aqui na janela de resposta do forum mesmo. Abraços

vlww agora deu certo aki eu tinha tentado faze +/- assim tbm mais n tinha conseguido :stuck_out_tongue:
sou pessimo com esse if e else