0 / 0 / 0
Регистрация: 20.05.2018
Сообщений: 19

Подсчитать количество слов в файле, начинающихся и заканчивающихся на одну и ту же букву

17.05.2019, 23:00. Показов 2904. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Нужно разработать программу, которая читает файл, содержащий текст на русском языке, подсчитывает количество слов, начинающихся и заканчивающихся на одну и ту же букву, и выводит их. Имя читаемого файла запрашивается с клавиатуры.

Моя программа выводит такие слова,если первая и последняя буквы строчные.Так например слово "Анапа" не будет засчитано.Помогите пожалуйста доработать,что нужно дописать?

Вот код:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
import java.util.*;
import java.io.*;
 
 
public class Class1 {
    
        public static void main(String[] args) throws FileNotFoundException, IOException
        { 
        int j=0;
            int a=0;
            String str2="";
            System.out.println("Введите название файла: ");
            Scanner scn = new Scanner(System.in);
            String text = "";
            String str=scn.nextLine();
            while (str.isEmpty())
            { 
             System.out.println("Ошибка при открытии файла!Введите имя текстового файла или путь к текстовову файлу с расширением 'txt' :");
             str=scn.nextLine();
            }
 
            System.out.println("Содержимое файла: ");
        try(FileReader reader = new FileReader(str))
        {
                int c;
                while((c=reader.read())!=-1){
                     
                    System.out.print((char)c);
                    text = text + (char)c;
                }
                }
                if (text.isEmpty()) 
                System.out.println("Файл пустой!");
                else
                {
                System.out.println("\nФайл считан!");
                System.out.println("Слова начинающиеся на одну и ту же  букву:");
                for ( String buff : text.split(" ")) 
                 {
                  a=buff.length();
                  if ((buff.charAt(0)==(buff.charAt(a-1)) & (buff.length()>1)  & ('А'<=buff.charAt(0)) &  (buff.charAt(0)<='я')))
                  {
                      System.out.println(buff);
                      j=j+1;
                  }
                 }
                 if (j==0)
                 System.out.println("Слов начинающихся и заканчивающихся на одну и ту же букву нет!\n\n");
                   else
                System.out.println("Количество слов начинающихся и заканчивающихся на одну и ту же букву = " + j);// Вывод кол-ва слов начинающихся и заканчивающихся на одну и ту же букву
                }
            }   
        }
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.05.2019, 23:00
Ответы с готовыми решениями:

Подсчитать количество слов, начинающихся и заканчивающихся на одну и ту же букву
Мне нужно написать эту программу используя методы классов char и array. Добавлено через 3 минуты Мои попытки : using System; ...

Подсчитать количество слов, начинающихся и заканчивающихся на одну и ту же букву.
Дан файл , содержащий текст на русском языке. Подсчитать количество слов, начинающихся и заканчивающихся на одну и ту же букву. Реализовать...

Подсчитать количество слов, начинающихся и заканчивающихся на одну и ту же букву
Дан файл, содержащий текст на русском языке. Подсчитать количество слов, начинающихся и заканчивающихся на одну и ту же букву и выдать эти...

3
Эксперт PythonЭксперт Java
19522 / 11059 / 2931
Регистрация: 21.10.2017
Сообщений: 23,296
18.05.2019, 23:18
Лучший ответ Сообщение было отмечено Lubovvvv как решение

Решение

Java
1
2
3
4
5
6
7
for (String buff : text.trim().split(" ")) {
                a = buff.length();
                if ((Character.toLowerCase(buff.charAt(0)) == Character.toLowerCase(buff.charAt(a - 1)) && (a > 1))) {
                    System.out.println(buff);
                    j += 1;
                }
            }
1
0 / 0 / 0
Регистрация: 20.05.2018
Сообщений: 19
20.05.2019, 21:08  [ТС]
Спасибо огромное
0
 Аватар для Aviz__
2722 / 2033 / 505
Регистрация: 17.02.2014
Сообщений: 9,434
21.05.2019, 09:50
Lubovvvv, думается мне, код ниже более тебя обрадует, если тебе не просто спихнуть преподу...
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
public static void main(String[] args) {
        String text = "1sss1, sgggs? dddp. aa p ww!";
        for (String word : text.toLowerCase().split("\\s")) {
            word = word.trim();
            if (word.length() < 2)
                continue;
            if (!Character.isAlphabetic(word.charAt(word.length() - 1)))
                word = word.substring(0, word.length() - 1);
            if (word.charAt(0) == word.charAt(word.length() - 1)) {
                System.out.println(word);
            }
        }
    }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.05.2019, 09:50
Помогаю со студенческими работами здесь

Подсчитать количество слов, начинающихся и заканчивающихся на одну и ту же букву
Добрый день. Прошу помощи, понимаю, что нужно разобраться самому, но уже горит, надо срочно сделать курсовую, поэтому помогите, пож, на...

Подсчитать количество слов, начинающихся и заканчивающихся на одну и ту же букву
Написать программу на С++. Дана строка, содержащая текст. Подсчитать количество слов, начинающихся и заканчивающихся на одну и ту же...

Подсчитать количество слов, начинающихся и заканчивающихся на одну и ту же букву
Дана строка, содержащая текст на русском языке. Подсчитать количество слов, начинающихся и заканчивающихся на одну и ту же букву.

Подсчитать количество слов, начинающихся и заканчивающихся на одну и ту же букву
Выполнить задание следующим образом: 1. Текст ввести с помощью компонента Memo. 2. Вывести слова исходного текста в алфавитном...

Подсчитать количество слов, начинающихся и заканчивающихся на одну и ту же букву.
Помогите пожалуйста.Дан текст на русском языке. Определить сколько раз встречается в нем самое длинное слово.Дан текст на русском языке....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

Новые блоги и статьи
Согласованность транзакций в MongoDB
Codd 30.04.2025
MongoDB, начинавшая свой путь как классическая NoSQL система с акцентом на гибкость и масштабируемость, сильно спрогрессировала, включив в свой арсенал поддержку транзакционной согласованности. Это. . .
Продвинутый ввод-вывод в Java: NIO, NIO.2 и асинхронный I/O
Javaican 30.04.2025
Когда речь заходит о вводе-выводе в Java, классический пакет java. io долгие годы был единственным вариантом для разработчиков, но его ограничения становились всё очевиднее с ростом требований к. . .
Обнаружение объектов в реальном времени на Python с YOLO и OpenCV
AI_Generated 29.04.2025
Компьютерное зрение — одна из самых динамично развивающихся областей искусственного интеллекта. В нашем мире, где визуальная информация стала доминирующим способом коммуникации, способность машин. . .
Эффективные парсеры и токенизаторы строк на C#
UnmanagedCoder 29.04.2025
Обработка текстовых данных — частая задача в программировании, с которой сталкивается почти каждый разработчик. Парсеры и токенизаторы составляют основу множества современных приложений: от. . .
C++ в XXI веке - Эволюция языка и взгляд Бьярне Страуструпа
bytestream 29.04.2025
C++ существует уже более 45 лет с момента его первоначальной концепции. Как и было задумано, он эволюционировал, отвечая на новые вызовы, но многие разработчики продолжают использовать C++ так, будто. . .
Слабые указатели в Go: управление памятью и предотвращение утечек ресурсов
golander 29.04.2025
Управление памятью — один из краеугольных камней разработки высоконагруженных приложений. Го (Go) занимает уникальную нишу в этом вопросе, предоставляя разработчикам автоматическое управление памятью. . .
Разработка кастомных расширений для компилятора C++
NullReferenced 29.04.2025
Создание кастомных расширений для компиляторов C++ — инструмент оптимизации кода, внедрения новых языковых функций и автоматизации задач. Многие разработчики недооценивают гибкость современных. . .
Гайд по обработке исключений в C#
stackOverflow 29.04.2025
Разработка надёжного программного обеспечения невозможна без грамотной обработки исключительных ситуаций. Любая программа, независимо от её размера и сложности, может столкнуться с непредвиденными. . .
Создаем RESTful API с Laravel
Jason-Webb 28.04.2025
REST (Representational State Transfer) — это архитектурный стиль, который определяет набор принципов для создания веб-сервисов. Этот подход к построению API стал стандартом де-факто в современной. . .
Дженерики в C# - продвинутые техники
stackOverflow 28.04.2025
История дженериков началась с простой идеи — создать механизм для разработки типобезопасного кода без потери производительности. До их появления программисты использовали неуклюжие преобразования. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru