package vectores;
import java.util.Scanner;
/**
* Clase para separar palabras de una frase.
* @author Bryan Horna <[email protected]>
*
*/
public class Separar {
static Scanner sc = new Scanner(System.in); // El Scanner
/**
* Separa la frase en palabras.
* @param s La cadena a separar.
* @return Cadena en partes.
*/
public static String[] separarFrase(String s) {
int cp = 0; // Cantidad de palabras
// Recorremos en busca de espacios
for (int i = 0; i < s.length(); i++) {
if (s.charAt(i) == ' ') { // Si es un espacio
cp++; // Aumentamos en uno la cantidad de palabras
}
}
// "Este blog es genial" tiene 3 espacios y 3 + 1 palabras
String[] partes = new String[cp + 1];
for (int i = 0; i < partes.length; i++) {
partes[i] = ""; // Se inicializa en "" en lugar de null (defecto)
}
int ind = 0; // Creamos un �ndice para las palabras
for (int i = 0; i < s.length(); i++) {
if (s.charAt(i) == ' ') { // Si hay un espacio
ind++; // Pasamos a la siguiente palabra
continue; // Pr�ximo i
}
partes[ind] += s.charAt(i); // Sino, agregamos el car�cter a la palabra
actual
}
return partes; // Devolvemos las partes
}
public static void main(String[] args) {
System.out.print("Ingrese una frase: ");
String frase = sc.nextLine(); // Guardamos la frase o texto
String[] p = separarFrase(frase); // Separamos palabras
for (int i = 0; i < p.length; i++) {
System.out.println("Parte " + (i + 1) + ": " + p[i]); // Mostramos
}
}
}