1.- Realizar un programa que lea una frase por teclado y después muestre los caracteres 'a' que contiene dicha frase, junto a la posición que ocupa (las posiciones se comienzan a contar desde 0).
public class Ejer1 { public static void main(String[] args) { Scanner entrada = new Scanner(System.in); String frase; int pos; //para ir indicando la posición de cada caracter System.out.println("A continuación escriba una frase (que contenga alguna 'a'):"); frase = entrada.nextLine(); if (frase.indexOf('a') == -1) System.out.println("La frase introducida no contiene ninguna 'a'."); else for (pos=0; pos < frase.length(); pos++) if (frase.charAt(pos) == 'a') System.out.println("a - " + pos); } }
2.- El mismo ejercicio anterior, pero que busque los caracteres 'a' desde el final hasta el principio.
public class Ejer2 { public static void main(String[] args) { Scanner entrada = new Scanner(System.in); String frase; int pos; //para ir indicando la posición de cada caracter System.out.println("A continuación escriba una frase (que contenga alguna 'a'):"); frase = entrada.nextLine(); if (frase.indexOf('a') == -1) System.out.println("La frase introducida no contiene ninguna 'a'."); else for (pos= (frase.length()-1); pos >= 0; pos--) if (frase.charAt(pos) == 'a') System.out.println("a - " + pos); } }
3.- El mismo programa, pero ahora debe mostrar sólo las 'a' que estén al principio de una palabra.
DIAGRAMA DE NASSI-SHNEIDERMAN
PROGRAMA EN JAVA
public class Ejer3 { public static void main(String[] args) { Scanner entrada = new Scanner(System.in); String frase; int pos; //para ir indicando la posición de cada caracter pos = 0; System.out.println("A continuación escriba una frase (que contenga alguna 'a'):"); frase = entrada.nextLine(); if (frase.indexOf('a') == -1) System.out.println("La frase introducida no contiene ninguna 'a'."); else{ if (frase.charAt(pos) == 'a') System.out.println("a - " + (pos)); for (pos=0; pos < (frase.length()-1); pos++) if (Character.isLetter(frase.charAt(pos)) == false) if (frase.charAt(pos + 1) == 'a') System.out.println("a - " + (pos + 1)); } } }
No hay comentarios:
Publicar un comentario