Форум программистов, компьютерный форум CyberForum.ru

Частотный анализ - C++

Восстановить пароль Регистрация
 
Вася1q
 Аватар для Вася1q
21 / 21 / 0
Регистрация: 13.09.2011
Сообщений: 311
05.12.2013, 17:58     Частотный анализ #1
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
#include<stdio.h>
int Count(char *fname, int *count)
{
   FILE *f;
   char c;
   if ((f = fopen(fname, "r")) == NULL)
      return 1;
   while ((c = fgetc(f)) != EOF)
      ++count[c];
   fclose(f);
   return 0;
}
 
void IndSort(int *a, int *ind)
{
   int i, l, flag, buf;
   for(i = 0; i < 256; i++)
      ind[i] = i;
   l = 0;
   do
   {
      flag = 0;
      for(i = 255; i > l; i--)
         if (a[ind[i-1]] < a[ind[i]])
         {
             buf = ind[i-1]; ind[i-1] = ind[i]; ind[i] = buf;
             flag = 1;
         }
      l++;
   }while(flag);
}
 
int main()
{
   char *fname = "c:\\11.txt";
   int i, count[256] = {0}, ind[256];
   Count(fname, count);
   IndSort(count, ind);
   for(i = 0; i < 256 && count[ind[i]]; i++)
      if (ind[i] >= ' ')
         printf("%c  %d\n", ind[i], count[ind[i]]);
   return 0;
}
Добавлено через 34 секунды
Непонятно где будет сам анализ? в каком файле?

Добавлено через 1 минуту
Я создал текстовый файл в той же папке где и проект, с таким же именем как и в коде, всё компилится, но где результат?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
05.12.2013, 18:12     Частотный анализ #2
А разве на экран ничего не выводится?!
Вася1q
 Аватар для Вася1q
21 / 21 / 0
Регистрация: 13.09.2011
Сообщений: 311
05.12.2013, 18:16  [ТС]     Частотный анализ #3
появляется окно и быстро исчезает! Как сделать чтобы в файле было?))Помогите
rescr1pt
31 / 32 / 1
Регистрация: 03.10.2011
Сообщений: 61
05.12.2013, 18:20     Частотный анализ #4
Цитата Сообщение от Вася1q Посмотреть сообщение
Как сделать чтобы в файле было?))Помогите
в out.txt
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
#include <stdio.h>
#include <fstream>
 
int Count(char *fname, int *count)
{
   FILE *f;
   char c;
   if ((f = fopen(fname, "r")) == NULL)
      return 1;
   while ((c = fgetc(f)) != EOF)
      ++count[c];
   fclose(f);
   return 0;
}
 
void IndSort(int *a, int *ind)
{
   int i, l, flag, buf;
   for(i = 0; i < 256; i++)
      ind[i] = i;
   l = 0;
   do
   {
      flag = 0;
      for(i = 255; i > l; i--)
         if (a[ind[i-1]] < a[ind[i]])
         {
             buf = ind[i-1]; ind[i-1] = ind[i]; ind[i] = buf;
             flag = 1;
         }
      l++;
   }while(flag);
}
 
int main()
{
   char *fname = "c:\\11.txt";
   int i, count[256] = {0}, ind[256];
   Count(fname, count);
   IndSort(count, ind);
   std::ofstream fout("out.txt");
   for(i = 0; i < 256 && count[ind[i]]; i++)
      if (ind[i] >= ' ')
         fout << ind[i] << " " << count[indi] << std::endl;
   return 0;
}
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
05.12.2013, 18:26     Частотный анализ #5
Файл точно открылся? Я бы дополнительно выводил сообщение об ошибке, в случае неоткрытия файла!
Где лежит файл?

Добавлено через 4 минуты
Цитата Сообщение от Вася1q Посмотреть сообщение
появляется окно и быстро исчезает! Как сделать чтобы в файле было?))Помогите
эта проблема решается при написании твоей первой программы. Если ты до сих пор с этим не умеешь справляться, значит ты эту програму писал не сам!
Вася1q
 Аватар для Вася1q
21 / 21 / 0
Регистрация: 13.09.2011
Сообщений: 311
05.12.2013, 18:32  [ТС]     Частотный анализ #6
В файле только 4 числа)))хм... я в шоке)

Добавлено через 2 минуты
Файл лежит там где и проект))
Raali
572 / 276 / 12
Регистрация: 06.07.2013
Сообщений: 917
Завершенные тесты: 1
05.12.2013, 18:42     Частотный анализ #7
на экране консоли должен быть результат

Не по теме:

опоздал, не обновлял долго)

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.12.2013, 18:48     Частотный анализ
Еще ссылки по теме:

C++ Частотный анализ текста
C++ Частотный анализ байтов файла
Частотный анализ текста C++

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

Или воспользуйтесь поиском по форуму:
Вася1q
 Аватар для Вася1q
21 / 21 / 0
Регистрация: 13.09.2011
Сообщений: 311
05.12.2013, 18:48  [ТС]     Частотный анализ #8
Вот
вот там лежит мой проект, гляньте)))
Yandex
Объявления
05.12.2013, 18:48     Частотный анализ
Ответ Создать тему
Опции темы

Текущее время: 13:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru