java

traducción a piglatin

import java.util.Scanner;
import java.util.ArrayList;

public class App {

    public static String vocales(String str) {

        str = str + " ";
        String otra = "";
        String traducida = "";
        String nuevafrase = "";
        for (int i = 0; i < str.length() - 1; i++) {
            otra += str.charAt(i);
            if (str.charAt(i) == ' ') {
                traducida += otra;
                otra = "";
                continue;
            } // if espacio
            if (str.charAt(i + 1) == ' ') {
                if (otra.charAt(0) == 'a' || otra.charAt(0) == 'e' || otra.charAt(0) == 'i' || otra.charAt(0) == 'o'
                        || otra.charAt(0) == 'u' || otra.charAt(0) == 'h') {

                    traducida += otra;
                    traducida += "ay";
                } // if es vocal
                else {
                    traducida += otra;
                } // if no es vocal

                otra = "";
            } // if la siguiente es un espacio

            nuevafrase += traducida;
            traducida = "";

        } // for i

        return nuevafrase;
    }
    // metodo vocales

    public static String consonantes(String str) {

        String otra = "";
        String traducida = "";
        String nuevafrase = "";
        String consonantes = "";
        int cont = 0;
        for (int i = 0; i < str.length() - 1; i++) {
            otra += str.charAt(i);
            if (str.charAt(i + 1) == ' ') {
                for (int k = 0; k < otra.length(); k++) {
                    if (otra.charAt(k) == ' ') {
                        traducida += otra.charAt(k);
                        continue;
                    } // if es espacio
                    if (cont > 0) {
                        traducida += otra.charAt(k);
                    } // if ha encontrado alguna vocal
                    else {
                        if (otra.charAt(k) == 'a' || otra.charAt(k) == 'e' || otra.charAt(k) == 'i'
                                || otra.charAt(k) == 'o'
                                || otra.charAt(k) == 'u') {
                            traducida += otra.charAt(k);
                            cont++;
                        } // if es vocal
                        else {
                            consonantes += otra.charAt(k);
                        } // if no es vocal
                    } // else aun no hay vocales
                } // for k

                otra = "";
                traducida += consonantes;
                consonantes = "";
                cont = 0;

            } // for i

            nuevafrase += traducida;
            traducida = "";

        }

        return nuevafrase;

    }
    // metodo consonantes

    public static String traducir(String str) {
        String consonantes = consonantes(str);
        String traducida = vocales(consonantes);
        return traducida;
    }
    // metodo para traducir

    public static void main(String[] args) {
        Scanner read = new Scanner(System.in);
        System.out.print("Introduzca el texto a ser traducido: ");
        String str = read.nextLine() + " ";

        System.out.println("Texto traducido: " + traducir(str));

    } // main

}
Was this helpful?