Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Scanner;
- public class PartyInvitation {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- String input = scanner.nextLine();
- int numberOfNames = 0;
- int validNames = 0;
- int invalidNames = 0;
- while (!input.equals("Statistic")) {
- numberOfNames++;
- if (isValid(input)) {
- validNames++;
- String properName = input.substring(0, 1).toUpperCase() + input.substring(1).toLowerCase(); //https://stackoverflow.com/questions/3904579/how-to-capitalize-the-first-letter-of-a-string-in-java/44472200
- System.out.println(properName);
- } else {
- invalidNames++;
- System.out.println("Invalid name!");
- }
- input = scanner.nextLine();
- }
- System.out.printf("Valid names are %.2f%% from %d names.", (double) validNames / numberOfNames * 100, numberOfNames);
- System.out.println();
- System.out.printf("Invalid names are %.2f%% from %d names.", (double) invalidNames / numberOfNames * 100, numberOfNames);
- }
- private static boolean isValid(String name) {
- boolean isValid = true;
- for (int i = 0; i < name.length(); i++) {
- Character currentChar = name.charAt(i);
- if (!Character.isLetter(currentChar)) {
- isValid = false;
- break;
- }
- }
- return isValid;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement