Ajuda

7 respostas
B

Olá pessoal quero a ajuda de vc´s, não sei nada de java eu estou estudando o mesmo no momento.

tirem minha duvida, aqui tem pedindo pra eu.

[size=9]Fazer um programa que receba do teclado uma frase e depois apresente apenas a última palavra digitada:[/size]

não sei nem por onde começar gostaria de uns exemplos para q eu possa analizar e eu ir interpretanto pouco a pouco.

vc´s podem me ajudar por favor : P

7 Respostas

WendersonLP

Olha já que você está iniciando, procure enteder a lógicas dos algorítmos que você pega, porque não adianta muito decorá-lo e sim entender como funcionou, isso te ajudará bastante.

Esse é um exemplo bem simples e prático:

String str = JOptionPane.showInputDialog("Type the word");
int index = -1;

// aqui é procurado um último espaço contido na "String" e o índice desse espaço 
// é armazenado na variável "index" 		
for (int i = 0; i < str.length(); i++) {
      if (str.charAt(i) == ' ')
 	 index = i;
}

// imprime a "String" original 		
System.out.println(str);

// imprime letra por letra só que começando do (índice + 1) que levará
// na última palavra
for (int i = index + 1; i < str.length(); i++)
     System.out.print(str.charAt(i));
B

obrigado, pq nao consegui rodar ele no eclipse ?

vc pode me indicar algum material pratico e sem muito complicado pra eu aprender esta lógica ?

Vini_Fernandes

La vai!!!

import java.util.Scanner;

public class UltimaPalavra {
	public static void main(String [] args){
		//criando o leitor do teclado
		Scanner leitor = new Scanner(System.in);
		
		System.out.println("Digite uma frase qualquer:");
		
		//o leito le uma frase completa
		String frase = leitor.nextLine();
		
		//se a frase for diferente de null e nao for em branco entra no if
		if(frase != null && frase.trim().length() > 0){
			/*
			 * metodo que retira os espacos em branco dos extremos da frase
			 * eh um erro muito comum dos programadores
			 */
			frase = frase.trim();
			
			/*
			 * utilizando expressao regular para quebrar a frase nos espacaos em branco
			 * assim pegamos palabra por palavra
			 */
			String [] palavras = frase.split("\b+");
			
			//pegando a ultima palavra do "vetor" de palavras
			System.out.println("a ultima palavra eh: "+palavras[palavras.length - 1]);
		}
		else{
			System.out.println("Voce nao digitou uma frase!");
		}
	}
}

t+

ViniGodoy

Outra forma de resolver o problema:

import java.util.Scanner;

public class UltimaPalavra {
   public static void main(String [] args){
      //criando o leitor do teclado
      Scanner leitor = new Scanner(System.in);
		
      System.out.println("Digite uma frase qualquer:");
		
      //o leitor le uma frase completa e nunca retorna null. 
      //Então removemos os espaços no início e no fim usando o trim(). 
      String frase = leitor.nextLine().trim();
		
      //A frase pode ser vazia, caso seja, vamos dar um erro e cair fora.
      //como estamos dando return, podemos evitar o o else e a identação.
      if(frase.sEmpty()){
         System.out.println("Voce nao digitou uma frase!");
         return;
      }

      /*
      * vamos pegar o índice do último espaço.
      * em seguida tiramos o substring de tudo que vier após ele
      */
      int ultimoEspaco = frase.lastIndexOf(' ');
      String palavra = frase.substring(ultimoEspaco+1);
			
      //impressão da última palavra
      System.out.println("a ultima palavra eh: "+palavra);
   }
}

Perdoem se não funcionar 100%, não tenho Java e nem Eclipse aqui no trabalho.

tRuNkSnEt

Basicamente você vai precisar de tres classes básicas (sabe pelo menos o que é uma classe?).
A classe String que, a grosso modo, vai representar um texto e as ações possiveis de se realizar nesse texto. Exemplo: pegar a quantidade de caracteres do texto, passar o texto todo para maiusculo, formatar o texto e etc.
http://java.sun.com/javase/6/docs/api/java/lang/String.html

A classe Scanner que neste caso vai te permitir capturar entradas digitadas pelo usuário através do console.
http://java.sun.com/javase/6/docs/api/java/util/Scanner.html

E a classe System que contem o objeto estatico out que vai permitir escrever uma saida no console.
http://java.sun.com/javase/6/docs/api/java/lang/System.html

É isso, só para te dar um pouco mais de informação.

B

Muito obrigado pela ajuda pessoal, é só assim que crescemos, um ajudando o outro. vlw mesmo

G

Bom dia a todos !!

estou para me formar na facul e estou de Dp em java , tenho q fazer um programa em java, nem sei pro onde começar se puderem me ajudar fico muito grato segue o exercicio

[b]Escreva um programa que leia uma frase digitada pelo usuário (use JOptionPane) e faça sua
quebra em palavras. As palavras devem ser impressa no console uma por linha.
Uma palavra é definido como uma sequencia de letras, qualquer caractere fornecido que não for uma letra, deve ser
descartado.

Por exemplo, se o usuário entrar com o texto:

Ele disse, “Isso 999 não foi 999 uma boa ideia.”

O programa deve imprimir no console:

Ele
disse
Isso
não
foi
uma
boa
ideia

Dica: Para testar se um caractere é uma letra, você pode usar:
( seu_caracter >= ‘a’ && seu_caracter <= ‘z’)

No entanto isso pode não funcionar corretamente para alguns caracteres
acentuados. A melhor maneira então é voce pesquisar como usar a classe: Character.isLetter(caractere)[/b]

Criado 27 de outubro de 2009
Ultima resposta 24 de mar. de 2011
Respostas 7
Participantes 6