[ajuda] - caelum fj11 - 14

9 respostas
acidotherwise

bom galera, travei num exercicio da apostila fj11 da caelum: Como que eu tranformo uma String em um int sem usar metodos procurei na net, pensei pensei pensei e pensei exemplo

String x = "762";

teria que devolver um int = 762

desde ja grato

9 Respostas

T

Dica 1) Como é que se transforma um caracter ‘7’ em um número 7?

Dica 2) Se você for sucessivamente multiplicando os valores por 10 e somando, será que não chega ao valor desejado?

7
7 vezes 10 + 6 = 76
76 vezes 10 + 2 = 762

acidotherwise

char a = '7'; int c = a - '0';

isso eu sei mas tentei com int não obtive muito exito

eu tentei assim:

String x = "762"; int a = x + 0;

outra coisa em relação a ir multiplicando pelo que eu notei do exercio eles querem conversão mesmo, mas grato pelo auxilio

T

O exercício seria normalmente resolvido assim:

public static int converter (String valor) {
    int resultado = 0;
    for (int i = 0; i < valor.length(); ++i) {
        char ch = valor.charAt (i); // pegando o i-ésimo dígito
        int digito = ch - '0'; // aqui pegamos o valor do dígito
        resultado = resultado * 10 + digito;
    }
    return resultado;
}

Leia o programa acima e descubra por que é que funciona.

acidotherwise

eu axo que o problema foi no entendimento do exercio, com um for eu faria tranquilo, fiz exercicios parecidos, mas achei pelo enunciado que li que seri algo do tipo int a = x - 0; fomo disse anteriormente, não sei se alguem da caelum poderia dar sua opinião?

acidotherwise

alguem?

acidotherwise

ok, entendi o que tu quiz me passar desculpe ter demorado pra entender so gostaria de saber de alguem da Caelum se é realmente isso a resposta pra o exercicio, tbm esqueci de te perguntar se vc não trabalha la, rsss?

Desde ja grato

T

Não sou instrutor da Caelum nem da Globalcode.
Se fosse instrutor da Caelum provavelmente nem teria entrado neste tópico; a ideia é que você quebre um pouco a cabeça para fazer.

  1. Você realmente entendeu o que a minha rotina faz?
  2. Se eu passar um número com um sinal de “-” ou de “+” o que ocorre?
  3. Corrija o exercício para que funcione também se você passar um sinal de “-” (por exemplo, “-762”) ou de “+” (por exemplo, “+762”).
acidotherwise

sim eu entendi o que sua rotina faz, tentarei corrigir esse erro, mas não entendi o porque se vc fosse intrutor não entraria nesse topico? outra como te falei meu real problema é saber se esta certo a resposta eu tinha desenvolvido algo parecido mas gostaria de saber se é essa a questão da pergunto entente?

desde ja grato, aguardo resposta.

sergiolopes

Oi pessoal!

A ideia do exercício era fazer mesmo isso que o thingol postou. Usar estruturas básicas da linguagem (for, if, int, chars) para fazer a conversão.

[]'s
Sérgio

Criado 7 de abril de 2009
Ultima resposta 9 de abr. de 2009
Respostas 9
Participantes 3