Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 17.03.2022
Сообщений: 21

Реализуйте сбор статистики по всем встречающимся словам в произвольном текстовом файле

15.11.2022, 14:26. Показов 409. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Этот код не прокатил у препода, помогите пожалуйста)
Пример работы прикрепил
C#
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
namespace SymbolStatistic
{
    class Program
    {
        
        static void Main(string[] args)
        {
            string str = File.ReadAllText(@" D:\file.txt "); //путь
 
 
            string[] words = str.Split(' ');
 
            List<string> used = new List<string>();
 
            foreach (string s in words)
            {
                if (!used.Contains(s))
                {
                    used.Add(s);
 
                    int count = words.Count(c => c == s);
 
                    Console.WriteLine($"{s} - {count}");
                    File.AppendAllText(@"D:\res.txt", $"{s} - {count}\n");
                }
            }
            Console.ReadKey();
        }
    }
  }
}
Миниатюры
Реализуйте сбор статистики по всем встречающимся словам в произвольном текстовом файле  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.11.2022, 14:26
Ответы с готовыми решениями:

Реализуйте сбор статистики по всем встречающимся словам в произвольном текстовом файле
Реализуйте сбор статистики по всем встречающимся словам в произвольном текстовом файле. Помогите пожалуйста)

Поиск подстроки в произвольном текстовом файле
Мне нужно написать программу для поиска подстроки в произвольном текстовом файле. :confused: Я только учюсь програмировать, а в институте...

Сбор данных о текстовом файле
with open(f2, 'r', encoding='utf-8') as f_in: s2 = f_in.read() size = sum(1 for _ in f2) size1 = len() ...

4
 Аватар для iLinks
799 / 457 / 237
Регистрация: 03.01.2017
Сообщений: 1,338
15.11.2022, 14:55
Почему не "прокатил" то?
0
0 / 0 / 0
Регистрация: 17.03.2022
Сообщений: 21
15.11.2022, 15:11  [ТС]
iLinks, у всей группы одинаковый код, докопался только ко мне(

Добавлено через 13 минут
Реально код перефразировать?
0
 Аватар для Kazbek17
1484 / 939 / 454
Регистрация: 06.02.2012
Сообщений: 2,868
15.11.2022, 15:14
sainthuman1,
Ну тогда отнеси ему так, раз выше не катит.
C#
1
2
3
4
string[] words = File.ReadAllText(@" D:\file.txt ").Split(' ');
var result = words.ToLookup(x => x).Select(x => $"{x.Key}-{x.Count()}");
Console.WriteLine(string.Join("\n", result));
File.WriteAllLines(@"D:\res.txt", result);
1
 Аватар для iLinks
799 / 457 / 237
Регистрация: 03.01.2017
Сообщений: 1,338
15.11.2022, 15:27
sainthuman1, ну или громадный вариант можешь показать)
C#
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
54
55
56
public class Statistics
{
    public string Word { get; set; }
    public int Count { get; set; }
    public override string ToString() => $"{Word} - {Count}";
    public static bool ExistWord(Statistics[] statistics, string word)
    {
        for (int i = 0; i < statistics.Length; i++)
        {
            if (statistics[i].Word == word) { return true; }
        }
        return false;
    }
    public static int GetWordIndex(Statistics[] statistics, string word)
    {
        for (int i = 0; i < statistics.Length; i++)
        {
            if (statistics[i].Word == word) return i;
        }
        return -1;
    }
    public static void Print(Statistics[] statistics)
    {
        for (int i = 0; i < statistics.Length; i++)
        {
            Console.WriteLine(statistics[i].ToString());
        }
    }
}
static void Main(string[] args)
{
    string str = File.ReadAllText(@" D:\file.txt "); //путь
    string[] words = str.Split(new char[] { ' ', ',', ':', '-', '.', '?', '!' }, StringSplitOptions.RemoveEmptyEntries);
    Statistics[] statistics = new Statistics[0];
    for (int i = 0; i < words.Length; i++)
    {
        if (!Statistics.ExistWord(statistics, words[i]))
        {
            Array.Resize(ref statistics, statistics.Length + 1);
            statistics[statistics.Length - 1] = new Statistics() { Word = words[i], Count = 1 };
        }
        else
        {
            statistics[Statistics.GetWordIndex(statistics, words[i])].Count++;
        }
    }
    Statistics.Print(statistics);
    using (StreamWriter sw = new StreamWriter(@"D:\res.txt", false))
    {
        for (int i = 0; i < statistics.Length; i++)
        {
            sw.WriteLine(statistics[i].ToString());
        }
    }
    Console.ReadLine();
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.11.2022, 15:27
Помогаю со студенческими работами здесь

Поиск строки в текстовом файле по ключевым словам
private string getLine(string keywords) { string path = @&quot;D:\work\test.txt&quot;; string lines =...

В произвольном текстовом файле найти самую длинную строку
Всем доброго времени суток! Наконец-то дошли руки до изучения C#) Изучаю самостоятельно. Дошел до работы с файлами. Поставлена...

В произвольном текстовом файле исключить первое и последнее слова
Лабораторная работа №19 «Текстовые файлы» В произвольном текстовом файле исключить первое и последнее слова.

В произвольном текстовом файле исключить первое и последнее слова
Задание: В произвольном текстовом файле исключить первое и последнее слова. Использовать операторы &quot;классического&quot; Паскаля...

Найти все правильные идентификаторы Си в произвольном текстовом файле
Программа, которая отыскивает и выводит на печать все правильные идентификаторы языка С в произвольном текстовом файле.


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
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(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru