Пробелы

  • 10
  • Недоступна
В метод main первым параметром приходит путь к файлу. Вывести на экран соотношение количества пробелов к количеству всех символов. Например, 10.45. 1. Посчитать количество всех символов. 2. Посчитать количество пробелов. 3. Вывести на экран п2/п1*100, округлив до 2 знаков после запятой до ближайшего.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (304)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
BlackGrizzli Team
Уровень 30
19 ноября, 12:22
Прикольно, оказывается надо было пробел тоже считать в общее количество символов, я же пробелы отдельно, символы отдельно, хотя пробел вроде бы тоже символ у которого есть свой код)
if (ch ==32){
countSpace++;
}if (Character.isDefined(ch){ //Определяет, определен ли символ (кодовая точка Unicode) в Unicode.
countChar++;
}
nikinou
Уровень 25
16 ноября, 10:22
ОБЯЗАТЕЛЬНО К ПРОЧТЕНИЮ! Ставит мозги на место - советую всем прочитать про форматирование строк, чисел, дат)
Luerox
Уровень 30
11 ноября, 07:57
Узнала благодаря этой задачке про DecimalFormat. Хотя можно и без него тут)
Grock
Уровень 25
2 ноября, 16:32
Pattern, matcher, 2 инкремента и формат вывода. P.S. Посчитать нужно пробелы отдельно и отдельно все символы, включая пробелы.
Julia
Уровень 32
18 октября, 18:06
Сижу и думаю почему валидатор не принимает, оказалось что перепутала местами что на что поделить надо🤦‍♀️😅
Anonymous #3119894
Уровень 36
9 октября, 08:32
Почему у пустого файла есть 4 char?
Роман мастер-энергетик
26 сентября, 09:10
Давно не решал задчаки с первой попытки, ну это далась как-то легко, за счет предыдущей, которая казалось сложнее. Даже прилив снова мотивации слегка поднялся. Так что решайте господа и всё получится, хоть и в не простое сейчас время. Кодинг помогает отвлечься от текущей ситуации. Вот подсказка, для тех кто спустился сюда найти лайтовую наводку на верное решение, а полный код можно взглянуть у меня на гх
// считаем пробелы
for (char ch : builder.toString().toCharArray())  {
    if (ch == ' ') {
        countSpace++;
    }
}
// округление
DecimalFormat format = new DecimalFormat("#.00");
LE_Anonymous #3029647
Уровень 29
25 сентября, 16:58
Регулярные выражения + 2 листа+ Стрингформат)
OHHHBABY
Уровень 33
16 сентября, 07:46
Как альтернатива, вместо DecimalFormat можно использовать давно знакомый Math:
double scale = Math.pow(10, 2);
double res = Math.ceil(result * scale) / scale;
переменная result здесь - это первоначальное соотношение количества пробелов к количеству всех символов
Влад
Уровень 30
31 августа, 09:32
компилятор не считывает пробел с текстового документа (
hint1k
Уровень 32
5 сентября, 11:27
попробуй создать вручную файл с расширением txt. впиши туда cтандартной прогой блокнот любой текст с пробелами. У меня все посчитало вот с таким кодом (где 32 это пробел в десятиричной системе): int countChar =0; int countSpace =0; FileInputStream fis = new FileInputStream(args[0]); while (fis.available() > 0) { char par = (char)fis.read(); countChar++; if (par == 32) { countSpace++; } }
Влад
Уровень 30
5 сентября, 11:40
уже решил эту проблему этим же способом, всё равно спасибо
18 октября, 12:51
Интересный момент: Для компилятора две эти строки эквивалентны:
if (par == 32)
if (par == ' ')
nikinou
Уровень 25
16 ноября, 09:55
Еще более интересный факт: if (par == U+0020) Потому что это ' ' (пробел), написанный на Unicode.