fork download
  1. import java.util.Scanner;
  2. import java.util.ArrayList;
  3.  
  4. public class Main {
  5. public static void main(String[] args) {
  6. Scanner scanner = new Scanner(System.in);
  7. System.out.print("Введіть рядок S (до 70 символів): ");
  8. String sInput = scanner.nextLine();
  9.  
  10. if (sInput.length() > 70) {
  11. sInput = sInput.substring(0, 70);
  12. }
  13.  
  14. ArrayList<Character> s = new ArrayList<>();
  15. for (char c : sInput.toCharArray()) {
  16. s.add(c);
  17. }
  18. s.add(' ');
  19.  
  20. ArrayList<Character> s3 = new ArrayList<>();
  21. ArrayList<Character> currentWord = new ArrayList<>();
  22.  
  23. for (int i = 0; i < s.size(); i++) {
  24. if (s.get(i) != ' ') {
  25. currentWord.add(s.get(i));
  26. } else {
  27. int wordLen = currentWord.size();
  28. if (wordLen > 0 && wordLen % 3 == 0) {
  29. for (int j = 0; j < wordLen; j++) {
  30. s3.add(currentWord.get(j));
  31. }
  32. s3.add(' ');
  33. }
  34. currentWord.clear();
  35. }
  36. }
  37.  
  38. if (!s3.isEmpty() && s3.get(s3.size() - 1) == ' ') {
  39. s3.remove(s3.size() - 1);
  40. }
  41.  
  42. StringBuilder resultS3 = new StringBuilder();
  43. for (char c : s3) {
  44. resultS3.append(c);
  45. }
  46.  
  47. StringBuilder originalS = new StringBuilder();
  48. for (int i = 0; i < s.size() - 1; i++) {
  49. originalS.append(s.get(i));
  50. }
  51.  
  52. System.out.println("\n--- Результати ---");
  53. System.out.println("Початковий рядок S: " + originalS.toString());
  54. System.out.println("Рядок S3 (слова, кратні 3): " + resultS3.toString());
  55.  
  56. scanner.close();
  57. }
  58. }
Success #stdin #stdout 0.15s 60920KB
stdin
Стівен Кінг пише крутий трилер
stdout
Введіть рядок S (до 70 символів): 
--- Результати ---
Початковий рядок S: Стівен Кінг пише крутий трилер
Рядок S3 (слова, кратні 3): Стівен крутий трилер