написать программу, которая будет читать строку текста, которая заканчивается точкой, которая служит в качестве значения часового - PullRequest
0 голосов
/ 27 апреля 2020

вот мой код:

import java.util.Scanner;

public class LetterCounter {
   public static void main(String[] args)
   {
       int frequency = 0 ;
       char character = ' ' ;
       String linesOfText = " " ;
       int letterTotal = 0 ;
        char[] alphabet = new char[26] ;
               for(char ch = 'a'; ch <= 'z'; ++ch) {
           alphabet[ch-'a']=ch ;
       }
        System.out.println("Please enter some lines of text followed by a period.") ;
        Scanner keyboard = new Scanner(System.in);
       int count = 1;
        char sentinel = '.' ;
       char sentenceChar = ' ' ;
       String entry = " " ;
         while(sentenceChar != sentinel) 
       {
               System.out.print(count + ": ");
           entry = keyboard.nextLine();
           sentenceChar = entry.charAt(entry.length()-1);
           linesOfText = linesOfText + entry.toLowerCase() ; 
           count ++;
           if(linesOfText.contains("."))
           {
           break ;
           }
       }

           for (int i = 0; i < alphabet.length; i++)
            {
 frequency = 0 ;
               for (int j = 0; j < linesOfText.length(); j++)
                {

  character = linesOfText.charAt(j) ;

  if (character == alphabet[i])

   {


frequency++ ;

}
               }

 System.out.println(alphabet[i] + "\t\t" + frequency) ;
               letterTotal += frequency ;
           }
           System.out.println("Total Character(s):" + letterTotal);

       }
    } 

Вывод:

Пожалуйста, введите несколько строк текста, за которыми следует точка. 0: sdfldsfksjdfl. a 0 b 0 c 0 d 3 e 0 f 3 g 0 h 0 i 0 j 1 k 1 l 2 m 0 n 0 o 0 p 0 q 0 r 0 s 3 t 0 u 0 v 0 w 0 x 0 y 0 z 0 Всего символов: 13

Мне нужно, чтобы вывод выглядел следующим образом:

   a: 3 Character(s)
   c: 1 Character(s)
   h: 2 Character(s)
   s: 1 Character(s)
   u: 1 Character(s)

, и, пожалуйста, помогите удалить O, который находится на моей второй строке вывода под моим предложением с просьбой ввести строку текста.

...