Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 14.06.2010
Сообщений: 21
1

Работа с текстовыми файлами

20.06.2010, 17:07. Показов 1017. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем доброго дня!
Нужна помощь в решении следующей работы:
Нужно создать файл, содержащий текст, набранный заглавными английскими буквами. Провести частотный анализ текста, т.е. указать (в %), сколько раз встречается та или иная буква.

Может быть, кто-нибудь поможет? Заранее спасибо.

Добавлено через 1 час 46 минут
Вот кое-как написал:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
void main()
{   int b[256],j,n;
    char c;
    FILE *f;
    clrscr();
    for (j=0;j<n;j++) b[j]=0;
    f=fopen("18.txt","w+");
    puts("Vvedite simv. Konec - *");
    while ((c=getchar())!='*')
    putc(c,f);
    printf("\n");
    fclose(f);
    f=fopen("18.txt","r");
    while ((c=fgetc(f))!=EOF) b[c]++;
    fclose(f);
    for (c='A'; c<='Z'; c++)
    printf("%c-%d raz \n", c, b[c]);
    getch();
    }
Как перевести в проценты кол-во букв, которые встречаются в тексте?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.06.2010, 17:07
Ответы с готовыми решениями:

Работа с текстовыми файлами
Мне нужно разработать программу, выводит на экран по желанию пользователя: 1) N первых строк файла;...

Работа с текстовыми файлами
Дан текстовый файл F. Добавить в его конец символы E,N,D (если необходимо, использовать файл Q)....

Работа с текстовыми файлами
Задача: написать программу, которая считывает слова из текстового файла. Слова разделены символом...

Работа с текстовыми файлами
Есть программа, которая считывает массив структур с текстового файла, выполняет сортировку и...

5
102 / 102 / 23
Регистрация: 12.05.2010
Сообщений: 232
20.06.2010, 17:10 2
Цитата Сообщение от grisha770 Посмотреть сообщение
Как перевести в проценты кол-во букв, которые встречаются в тексте?
разделить на общее количество букв в файле и умножить на 100
0
0 / 0 / 0
Регистрация: 14.06.2010
Сообщений: 21
20.06.2010, 17:16  [ТС] 3
Mur3ik, я попробовал. Теперь по нулям все.
0
3564 / 2711 / 347
Регистрация: 11.03.2009
Сообщений: 6,240
20.06.2010, 17:34 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
#include <stdio.h>
#include <conio.h>
 
int main(int argc, char* argv[])
{
   int alph[26] = {0};
   int buf, count = 0, offset, i;
   FILE *file;
 
   file = fopen("D:\\progexp\\in.txt", "w");
   offset = 'a' - 'A';
   while ((buf = fgetc(stdin)) != EOF)
   {
      if (buf >= 'a' && buf <= 'z')
      {
         buf -= offset;
         alph[buf-'A']++;
      }
      count++;
      fputc(buf, file);
   }
   fclose(file);
   for (i = 0; i < 26; i++)
   {
      printf("%c - %2.2f%\n", (i+'A'), alph[i]*100./count);
   }
   getch();
   return 0;
}
Добавлено через 31 секунду
Цитата Сообщение от grisha770 Посмотреть сообщение
Mur3ik, я попробовал. Теперь по нулям все.
Про приведение типов не забываем?
1
0 / 0 / 0
Регистрация: 14.06.2010
Сообщений: 21
20.06.2010, 17:42  [ТС] 5
kazak, мне б лучше в моем коде расчет в % сделать...
0
3564 / 2711 / 347
Регистрация: 11.03.2009
Сообщений: 6,240
20.06.2010, 17:52 6
Вот товой код исправленный
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <conio.h>
#include <stdio.h>
 
void main()
{   int b[256],j,n =0;
    char c;
    FILE *f;
    clrscr();
    for (j=0;j<256;j++) b[j]=0;/*сдесь вместо 256 была n, причем неинициализированная, как работало - хз*/
    f=fopen("18.txt","w+");
    puts("Vvedite simv. Konec - *");
    while ((c=getchar())!='*')
    {
       putc(c,f);
       b[c]++;
       n++; /*переделаем n под счетчик символов*/
    }
    printf("\n");
    fclose(f);
    for (c='A'; c<='Z'; c++)
    printf("%c - %d raz, budet %3.2f% \n", c, b[c], b[c]*100./n);
    getch();
    }
1
20.06.2010, 17:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.06.2010, 17:52
Помогаю со студенческими работами здесь

Работа с текстовыми файлами
Функция копирует с одного файла в другой, не подскажите как улучшить ее? И есть недостаток нужно...

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

Работа с текстовыми файлами
Дай текстовы файл F. Группы символов, розделены пропусками (одним или нескольками) или вообще их не...

Работа с текстовыми файлами
Помоготи , пожалуйста : Создать текстовый файл и выполнить обработку текста в файле ... Пример :...

C++ работа с текстовыми файлами
Доброго времени суток. Делал программу, но столкнулся с некоторыми трудностями. у меня в текстовом...

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


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru