Статистический анализ текста

6648
знаков
2
таблицы
1
изображение

ОГЛАВЛЕНИЕ

Введение

1.    Постановка задачи

2.    Алгоритм решения задачи

2.1 Алгоритм решения задачи

2.2 Конструирование алгоритма

2.3 Описание программной реализации

3. Описание программы

3.1 Назначение программы

3.2 Системные требования

4. Заключение

5. Список используемой литературы

6. Приложение 1


Введение

Всем известно, что вычислительная техника облегчает жизнь человеку и её применение в различных сферах жизни и деятельности людей уже не новинка. Заданием для данной курсовой работы я выбрал программу «Статистический анализ текста». Для создания программы я использовал язык программирования «Си». Для работы программы подходит любой компьютер, поддерживающий операционную систему DOS, либо её эмуляцию (как в ОС Windows).

Язык «Cи» - это универсальный язык программирования, для которого характерны экономичность выражения, современный поток управления и структуры данных, богатый набор операторов. Язык «Cи» не является ни языком "очень высокого уровня", ни "большим" языком, и не предназначается для некоторой специальной области применения, но отсутствие ограничений и общность языка делают его более удобным и эффективным для многих задач, чем языки, предположительно более мощные. Операционная система, компилятор с языка «Cи» и по существу все прикладные программы системы «UNIX» написаны на «Cи». Коммерческие компиляторы с языка «Cи» существуют также на некоторых других ЭВМ. Язык «C»не связан с какими-либо определенными аппаратными средствами или системами, и на нем легко писать программы, которые можно пропускать без изменений на любой ЭВМ, имеющей «Cи»-компилятор.


1. Постановка задачи

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


2. Алгоритм решения задачи

2.1 Алгоритм решения задачи

Программа считывает построчно информацию из файла, находит всю информацию о нем, затем по нажатию на соответствующую клавишу, выдает ответ.

2.2 Конструирование алгоритма

Рис. 1. Общая структурная схема программы


2.3 Описание программной реализации

Таб.1 Описание глобальных переменных

Название переменной Тип Описание переменной
p[255] Массив int Используется для хранения количества пробелов в строке
i,j,qw,ks int Счетчик
x, y,x2,y2 int Координаты по x и по y
s[255][255] Массив char Массив для хранения информации из файла
ss[255] Массив int Используются для хранения количества спецзнаков в строке
q char Нажатая клавиша
f1 FILE Файловая переменная
*pf char Используется для записи с клавиатуры пути к файлу
len int Для хранения длины введенного слова
slovo[20] Массив char Для хранения введенного слова

Табл. 2. Описание функций

№ п/п Наименование функции Назначение
1 kolvoslov() Находит количество слов в тексте
2 menu() Выводит на экран меню

3. Описание программы

3.1 Назначение программы

Данная программа может использоваться для анализа текстовых файлов, поиска слов и т.п.

3.2 Системные требования

Минимальный набор технических средств:

- процессор, начиная с 486XT;

-оперативная память не менее 2 Мбайт:

-монитор VGA, SVGA;

-видеоадаптер VGA,SVGA с памятью не менее 512 Кбайт;

-наличие НЖМД или НГМД;

-наличие ОС MS-DOS или Windows 95/98/XP/Vista

-стандартная клавиатура.


4. Заключение

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

В этой работе я попытался учесть все возможные ситуации и возможные ошибки. Полученная задача и цель были выполнены. Но все возможности языка еще предстоит изучить и понять.


5. Список используемой литературы

Зуев В.А. Лекции I курса по предмету «Программирование интегрированных системах».

1.  Б. Керниган, Д. Ритчи «Язык программирования Си ++»

2.  Т.А. Павловловская «С/С++ Программирование на языке высокого уровня».

3.  В.В. Подбельский «Язык С++».


ПРИЛОЖЕНИЯ

Приложение 1.

Листинг программы

#include <iostream.h>

#include <stdio.h>

#include <conio.h>

#include <string.h>

#include <stdlib.h>

int i,j,p[225],k,ss[225];

char s[225][225],*pf,q;

FILE *f1;

void menu()

{

clrscr();

cout<<"viberite punkt menu\n";

cout<<"1 -> vivesti vsu informaciyu\n";

cout<<"2 -> vivesti informaciyu ob odnoy stroke\n";

cout<<"3 -> vivesti vsu informaciyu o probelah\n";

cout<<"4 -> vivesti vsu informaciyu o specznakah\n";

cout<<"5 -> vivesti sodergimoe fayla\n";

cout<<"6 -> nayti kolvo povtoreniy slova\n";

cout<<"7 -> vihod\n";

}

int kolvoslov()

{

int fs=1,nc=0;

char ch[2]={0};

f1=fopen(pf,"r");

while(!feof(f1))

{

fgets(ch,2,f1);

if(ch[0]>32)

fs=0;

else if(0==fs)

{

nc++;

fs=1;

}

ch[0]=0;

}

fclose(f1);

return nc;

}

void main()

{

clrscr();

cout<<"vvedite nazvanie fayla-> ";

cin>>pf;

for(i=0;i<225;i++)

{

p[i]=0;ss[i]=0;

}

 if ((f1=fopen(pf,"r"))

 == NULL)

{

 cout<<"takogo fayla net";

 getche();

 abort();

}

f1=fopen(pf,"r");

i=0;

while(!feof(f1))

{

fgets(s[i],225,f1);

i++;

}

for(j=0;j<i;j++)

for(k=0;k<225;k++)

{

if(s[j][k]=='\0')break;

switch(s[j][k])

{

case ',':

case '!' :

case '#' :

case '$' :

case '%' :

case '^' :

case '&' :

case '*' :

case '(' :

case ')' :

case '-' :

case '_' :

case '=' :

case '+' :

case ';' :

case ':' :

case '"' :

case '>' :

case '<' :

case '/' :

case '.' :

case '}' :

case '{' :

case '[' :

case ']' :

ss[j]++;

break;

case ' ': p[j]++; break;

}

}

while(q!='7')

{

menu();

cin>>q;

if(q=='1')

{

for(j=0;j<i;j++)

{

cout<<"kolvo probelov v "<<j+1<<" stroke="<<p[j]<<"\n";

cout<<"kolvo specznakov v "<<j+1<<" stroke="<<ss[j]<<"\n";

}

cout<<"kolvo slov v fayle="<<kolvoslov();

getche();

}

if(q=='2')

{

cout<<"vvedite nomer stroki";

cin>>j;

cout<<"kolvo probelov v "<<j<<" stroke="<<p[j-1]<<"\n";

cout<<"kolvo specznakov v "<<j<<" stroke="<<ss[j-1]<<"\n";

getche();

}

if(q=='3')

{

for(j=0;j<i;j++)

cout<<"kolvo probelov v "<<j+1<<" stroke="<<p[j]<<"\n";

getche();

}

if(q=='4')

{

for(j=0;j<i;j++)

cout<<"kolvo specznakov v "<<j+1<<" stroke="<<ss[j]<<"\n";

getche();

}

if(q=='5')

{

for(j=0;j<i;j++)

cout<<s[j];

getche();

}

if(q=='6')

{

int len,qw=0,ks=0;

char slovo[20];

cout<<"vvedite iskomoe slovo ";

cin>>slovo;

len=strlen(slovo);

for(int i1=0;i1<i;i1++)

for(int i2=0;i2<55;i2++)

{

if(s[i1][i2]==slovo[qw])

qw++;

else qw=0;

if((qw+1)==len)

ks++;

}

cout<<"sovpadayushih slov -> "<<ks;

getche();

}

}

}


Информация о работе «Статистический анализ текста»
Раздел: Информатика, программирование
Количество знаков с пробелами: 6648
Количество таблиц: 2
Количество изображений: 1

Похожие работы

Скачать
46708
0
1

... В таком словаре для всех глаголов (около 20 тыс. в русском языке) должно быть указано, какими падежами и с какими предлогами производится это управление. Вершиной компьютерного анализа текста является автоматическое реферирование. Наличие семантической сети понятий, соединенных глаголами, позволяет сформулировать основные идеи текста документа, отраженные в часто встречающихся понятиях и связях, ...

Скачать
35051
10
7

... статистических методов; описана методика оценки удовлетворенности студентов преподаванием дисциплин, применяемых в КурскГТУ; проведен статистический анализ оценки удовлетворенности студентов преподаванием дисциплин на кафедре «Управление качеством». Для оценки удовлетворенности студентов были использованы столбчатый, круговой, линейный, радиационный и ленточный графики. После проведения ...

Скачать
27063
9
17

... по стажу x-y 0-2 2-4 4-6 6-8 8-10 10-12 17-19 2 4 1 1 - - 19-21 1 6 8 1 - - 21-23 - 2 7 6 2 1 23-25 - - 3 18 16 2 25-27 - 2 3 - 6 8 На основании этой таблицы: Задание №1 Построить интервальный и дискретный вариационные ряды для x и y. Статистическим аналогом ряда распределения называется вариационный ряд, то есть таблица, в верхней строке которой ...

Скачать
222933
87
0

... технологических цепочек; применения общестатистических методов (корреляции, индексного, табличного, графического и др.) к новому объекту исследования — ФПГ. 2. Методика статистического анализа функционирования финансово-промышленной группы и ее технологических цепочек, включающая, разработанные на основе аддитивных, мультипликативных и смешанных моделей, алгоритмы статистического анализа ...

0 комментариев


Наверх