dÚvidas em funÇÕes de algorÍtmos no jcreator urgente!

Ola galera sou iniciante aqui como podem ver, e estou com dúvidas para fazer algumas funções abaixo no JCreator, gostaria muito que vcs pudessem dar as soluções para o seguintes problemas:

A primeira dúvida e no algoritmo naterciano:

20 - Um número é chamado naterciano quando a soma dos seus dígitos é maior do que a soma do seu maior dígito com o seu menor dígito.Além disso, essas duas somas têm que produzir números pares como resultado, desde que o dígito menos significativo do número seja ímpar; se isso não for verdade, então, não há esta obrigatoriedade sobre as duas somas. Escreva uma função para determinar se um número é naterciano.

Bom, eu comecei fazendo uma função de soma dos dígitos (sd) , dígito menos significativo (ds) e números pares (par):

// soma dos dígitos// 
static int sd( int x ) { 
int soma = 0; 
while ( x > 0 ) 
{ 
soma = soma + ( x % 10 ); 
x = x / 10; 
} 
// dígito menos significativo// 

static int dms( int x ) { 
return ( x % 10 ); 
} 
// número par// 

static boolean par( int x ) { 
return ( x % 2 == 0 ); 
} 

A maior dúvida e como calcular o dígito mais significativo. Exemplo se o numero for 452, o dígito mais significativo e 4, se o numero for 7250, o dígito mais significativo e 7. Bom esse número naterciano e á minha primeira dúvida.

A segunda duvida e no algoritmo cascagrossa:

23 - Um número é cascaGrossa se for da forma 2n, para n um inteiro positivo e, além disso, se for um quadrado perfeito e a soma de todos os seus dígitos quando elevada ao número obtido pela soma de todos os seus dígitos também for da forma 2n. Por exemplo, 32 é da forma 2n pois podemos tomar n como sendo 5 de tal forma que 2 elevadoa 5 é 32.

A terceira dúvida é no algoritmo maluco:

26 - Um número é maluco se o seu dígito mais significativo for igual ao seu dígito menos significativo e, além disso, o total de seus dígitos é igual ao seu dígito menos significativo.
E a quarta dúvida é no algoritmo analfabeto:

29 - Um número é analfabeto se o total de dígitos pares for igual ao total de dígitos ímpares. Escreva uma função para determinar se um número é analfabeto.

No algoritmo analfabeto eu comecei criando uma função para contar os dígitos:

static int td( int x ) { 
int cont = 0; 
while ( x > 0 ) 
{ 
cont = cont + 1; 
x = x / 10; 
} 
return cont; 
} 

Mas como irei saber quando será digito impar ou par ?

Bom essas são minhas 4 dúvidas, peço que se puderem me ajudar, ficarei muito agradecido. Não precisa fazer o programa principal, só apenas funções no JCreator.
Estou realmente precisando.

Qualquer coisa: meu MSN e : crynusdrum@hotmail.com

Obrigado

[size=“11”][color=“red”]* Editado: Lembre-se de utilizar BBCode em seus códigos - Reifel[/color][/size] :joia: