Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
 Аватар для Good_demon
21 / 21 / 0
Регистрация: 28.09.2011
Сообщений: 1,057
Записей в блоге: 1

Вывести на консоль те строки, в которых встречается слово cat или dog

12.06.2018, 17:39. Показов 1545. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Гайз, хэлпаните мне
Ввести n строк с консоли. Вывести на консоль те строки, в которых встречается слово cat или dog. Подсчитать длину этих строк. Вывести на экран количество строк, которые не соответствуют критерию.
1
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.06.2018, 17:39
Ответы с готовыми решениями:

Ввести слово и вывести элементы массивов, в которых слово встречается более одного раза
Написать программу, в которой требуется создать два массива строк.Ввести слово и вывести элементы массивов,в которых это слово встречается...

Create classes: Cat, Dog and Petshop
Попалась интересная задача, так как я начинающий и только начинаю изучать мне трудно с ней разобраться и выполнить все условия. Буду...

Получить строки, в которых встречается слово logout и записать эти строки в отдельный файл
Здравствуйте. Помогите пожалуйста решить задачку. Есть несколько файлов формата data.log. Из них надо вытащить строки, в которых...

9
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
12.06.2018, 18:00
Good_demon, в чем конкретно проблема-то?

Добавлено через 12 минут
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
package ru.ismoke;
 
import java.util.ArrayList;
import java.util.Scanner;
 
public class Cyber {
 
    public static void main(String[] args) {
        int n = 10;
        ArrayList<String> list = new ArrayList<>();
        Scanner scan = new Scanner(System.in);
        String temp;
        int linesLength = 0;
 
        for (int i = 0; i < n; i++) {
            temp = scan.nextLine();
            if (temp.contains("cat") || temp.contains("dog")) {
                list.add(temp);
                linesLength += temp.length();
            }
        }
        list.forEach(System.out::println);
        System.out.println("Общая длина: " + linesLength);
        System.out.println("Не соотв: " + (n - list.size()));
    }
}
2
 Аватар для vvm28
771 / 539 / 67
Регистрация: 22.12.2013
Сообщений: 2,497
Записей в блоге: 26
12.06.2018, 21:27
iSmokeJC,
run:
1222
dog cat klk sdds
got ndog vcat
sd
sd
dog cat klk sdds
got ndog vcat
dog cat klk sdds
got ndog vcat
Общая длина: 29
Не соотв: 3
BUILD SUCCESSFUL (total time: 10 seconds)

У вас программа считает слово ndog и vcat тоже как соответствующие.
Общая длинна чего?
Что то не так.
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
12.06.2018, 21:55
Цитата Сообщение от vvm28 Посмотреть сообщение
Общая длинна чего?
А по коду не видно?
Цитата Сообщение от vvm28 Посмотреть сообщение
тоже как соответствующие
Я и делал, чтобы считались строки, в которых есть не слова "cat" и "dog", а последовательность этих букв.
Поменять проверку именно на слова, я думаю, ума большого не надо...

Добавлено через 12 минут
На всякий случай...
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
package ru.ismoke;
 
import java.util.ArrayList;
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
 
public class Cyber {
 
    public static void main(String[] args) {
        int n = 5;
        ArrayList<String> list = new ArrayList<>();
        Scanner scan = new Scanner(System.in);
        String temp;
        Pattern p = Pattern.compile("\\b(cat|dog)\\b");
        int linesLength = 0;
 
        for (int i = 0; i < n; i++) {
            temp = scan.nextLine();
            Matcher m = p.matcher(temp);
            if (m.find()) {
                list.add(temp);
                linesLength += temp.length();
            }
        }
        list.forEach(System.out::println);
        System.out.println("Общая длина: " + linesLength);
        System.out.println("Не соотв: " + (n - list.size()));
    }
}
1
 Аватар для vvm28
771 / 539 / 67
Регистрация: 22.12.2013
Сообщений: 2,497
Записей в блоге: 26
12.06.2018, 22:03
С первым пунктом согласен, можно разбивать на слова разделенные пробелом.
А вот насчет длины строк совсем не понятно.

Цитата Сообщение от iSmokeJC Посмотреть сообщение
А по коду не видно?
По коду видно, что мы вроде считаем прибавляем temp.length().
соответствующих критерию строк.
Но в реальности получается что-то не то.
Сами проверьте на небольшом примере.
Посмотрите что у меня получилось при выводе. Где тут 29?
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
12.06.2018, 22:10
Ввод:
Bash
1
2
3
4
5
cat dog
asdads cat dcsdas
catdog
dogcatdog
dog dog cat cat
Вывод:
Bash
1
2
3
4
5
cat dog
asdads cat dcsdas
dog dog cat cat
Общая длина: 39
Не соотв: 2
Что не так-то?
0
 Аватар для vvm28
771 / 539 / 67
Регистрация: 22.12.2013
Сообщений: 2,497
Записей в блоге: 26
12.06.2018, 22:32
iSmokeJC, Да всё верно. Это я сам запутался уже.
0
 Аватар для Good_demon
21 / 21 / 0
Регистрация: 28.09.2011
Сообщений: 1,057
Записей в блоге: 1
12.06.2018, 23:37  [ТС]
Цитата Сообщение от iSmokeJC Посмотреть сообщение
Good_demon, в чем конкретно проблема-то?
А как написать не через ArrayList?
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
13.06.2018, 07:58
Good_demon, ну поменяй на массив...
0
 Аватар для Aviz__
2739 / 2048 / 507
Регистрация: 17.02.2014
Сообщений: 9,468
13.06.2018, 18:39
Цитата Сообщение от Good_demon Посмотреть сообщение
не через ArrayList
если и без массива, то смысла в такой программе не будет...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.06.2018, 18:39
Помогаю со студенческими работами здесь

Вводится слово. Выяснить, какая из букв первая или последняя встречается в заданном слове чаще. Вывести слово в обратном порядке...
...и сколько букв &quot;у&quot; в слове стоит на четных местах? Заранее благодарен, кто откликнется на помощь.

Помощь с массивом char breed[4] = {'Dog ','Cat ', 'Rat ', 'Mouse '}
У меня вот тут проблемка, и я просто хочу понять как оно работает... Я так более менее понимаю работу ссылки (*) и то, что по идее само имя...

Вывести те из предложений, в которых встречается слово, введенное пользователем
Работа со строками и файлом Написать программу, которая считывает из текстового файла предложения и выводит те из них, в которых...

В каждой строке массива заменить все вхождения подстроки «cat» на «dog»
Дан массив, состоящий из n элементов строкового типа. В каждой строке заменить все вхождения подстроки «cat» на «dog». Вывести номера...

Как вывести номера страниц, на которых встречается определенное слово?
Здравствуйте! Подскажите, пожалуйста, каким макросом можно вывести все номера страниц, на которых встречается определённое слово. В...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru