Exercicio que é um misterio pra resolver!

8 respostas
F

Amigos…

Meu professor passou um exercicio que diz assim

Faça um programa que receba 5 caracteres estranhos…tem que receber todos na mesma variavel… depois imprimir eles separadamente…
EXEMPLO: 45678
impresso: 4 5 6 7 8
Obs: não poderá usar matriz, ccomandos de laço, nem de seleção…

por favor me ajudem…

Vlw :wink: [color=darkblue]

8 Respostas

L

vc pode usar o método charAt, length e substring de String?!
Se sim, vc cria um método que recebe uma string, ele imprime o primeiro caracter usando o método charAt e um espaço em branco, depois, se a string tiver mais de 1 caracter (método length), vc chama o método novamente (recursivo) passando a string sem o caracter que vc imprimiu anteriormente, para isso usa o método substring.
Dessa forma funciona, mas não vou te passar o código prontinho… tenta fazer para ver se vc consegue

Valeu!

S

Use o método lenght() para pegar a quantidade de caracteres da String e em seguida crie uma estrutura de repetição for para imprimir os valores de cada caracter com a ajuda do método charAt().

/**
 *
     * @author SHADOWMAN http://www.portaljava.com.br
 */
public class ExercicioAjuda {
    
    /** Creates a new instance of ExercicioAjuda */
    public ExercicioAjuda() {}
    
    private static String shadowMan = new String("66666");
        
    public static void main(String[] args){
        for(int count = 0; count <= shadowMan.length()-1; count++){
            System.out.println(shadowMan.charAt(count));
        }
    }
}

O que esse código exibe na tela é exatamente todos os 5 caracteres da variável shadowMan, um em cada linha.

6
6
6
6
6

Abraços!

L

“shadowman”:
Use o método lenght() para pegar a quantidade de caracteres da String e em seguida crie uma estrutura de repetição for para imprimir os valores de cada caracter com a ajuda do método charAt().

Comando de laço é uma estrutura de repetição…

:wink:

F

gente o problema é que eu naum posso usar esses tipos de comando… ele quer que a gente use no mmaximo IF … ele quer que façamos que imprima com funções de calculos matematicos…
mas vlw bastante o esforço de vcs,

ainda aguardo a ajuda srsrs

R

Não me peça códigos, pois estou muito newbie em java.

Pegue uma variável string, pegue seu tamanho. Se maior que zero (tem algo na variável):
Pegue o primeiro digito dessa variável e imprima na tela. Delete esse primeiro digito.
Calcule o tamanho da variável. Se o tamanho for maior que zero:
Pegue seu primeiro digito, o imprima na tela. Delete-o.

Uma gambiarra pra tentar explicar.

String var ="";
var = System.in.read();
if (var>0) 
{ 
                  System.out.print(var.lenght.1 + " "); // Algum comando que pegue o primeiro digito da string e o imprima, junto com um espaço, eu coloquei um comando nada a ver  para me referir, esse comando não existe, eu acho. Me refiro ao var.lenght.1
                  var.lenght.1=""; //Outro comando inventado, no sentido de deletar esse digito.
};
else {  }

Espero ter ajudado em algo. ;]

R

Wtf, double post. Enviei o post duas vezes.

Deletem isso, e aceitem meu pedido de desculpa.

S

Não é necessário utilizar uma estrutura de repitição uma vez que você sabe o número de caracteres a serem impressos (5).
Tudo o que você tem a fazer é simplesmente isso:

/**
 *
 * @author SHADOWMAN http://www.portaljava.com.br
 */
public class Main {
    
    /** Creates a new instance of Main */
    public Main() {}
    
    private static String shadowMan = "66666";
    
    public static void main(String[] args){
        int count = 0;
        System.out.println(shadowMan.charAt(count++));
        System.out.println(shadowMan.charAt(count++));
        System.out.println(shadowMan.charAt(count++));
        System.out.println(shadowMan.charAt(count++));
        System.out.println(shadowMan.charAt(count++));
    }
    
}

Acho que o código acima atende aos requisitos do seu professor ja que não utiliza estruturas de repetição nem matrizes!

Abraços!

F

bom gente…

tudo que eu posso fazer é agradeçer…vlw terem deixado seus afazeres para me ajudar…

obrigado :slight_smile: !!!

Criado 5 de julho de 2007
Ultima resposta 6 de jul. de 2007
Respostas 8
Participantes 4