Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Схемы алгоритмов






 

Главная функция main:

 

Функция void analysis();

 

Функция void custom();

 

 

Функция void FileRead();

 

Функция void SaveTo();

 

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

 

#include < iostream>

#include < conio.h>

#include < fstream>

#include < Windows.h>

 

using namespace std;

 

char MenuPointer;

char fileName[255], Buff[1000], FileString[16000];

int WordQuant=0, SentQuant;

 

char FirstWord[30][255], znak[40];

int Col[40];

 

int N, J, K, Z, count, Z1=0;;

 

void FileRead()

{

cout< < " Enter a name for the file format name.txt\n(file must be located in the same directory with the program): \n";

gets(fileName);

 

ifstream fin(fileName, ios_base:: in);

 

 

fin.getline(FileString, 1000); //для очистки старой строчки считываем сперва первую строку в строку документа

 

while (! fin.eof())

{

strcat(FileString, " ");

fin.getline(Buff, 1000);

strncat(FileString, Buff, strlen(Buff));

}

strcat(FileString, " ");

cout< < FileString; //Текстовая строка

fin.close();

}

 

void Custom()

{

cout< < " Enter the text for analysis: \n";

gets(FileString);

//cout< < FileString; //Текстовая строка

}

 

void Analysis()

{

N=strlen(FileString);

 

WordQuant=0; //количество слов

SentQuant=0; //количество предложений

 

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

{

if (i==0)//Первое слово первого предложения

{

while (FileString[J]! =' ' & & FileString[J]! =', ' & & FileString[J]! ='.' & & FileString[J]! ='! ' & & FileString[J]! ='? ')

{

FirstWord[K][J]=FileString[J];

//cout< < FileString[J]< < endl;

//cout< < FirstWord[0][J]< < endl;

J++;

}

 

FirstWord[K][J]='\0';

cout< < FirstWord[K]< < endl;

K++;

}

 

if (i> 1 & & FileString[i-1]==' ' & & (FileString[i-2]=='.' || FileString[i-2]=='! ' || FileString[i-2]=='? '))//поиск первого слова

{

J=i;

int U=0;

 

while (FileString[J]! =' ' & & FileString[J]! =', ' & & FileString[J]! ='.' & & FileString[J]! ='! ' & & FileString[J]! ='? ')

{

 

FirstWord[K][U]=FileString[J];

//cout< < FirstWord[K][U];

J++;

U++;

}

 

FirstWord[K][U]='\0';

cout< < FirstWord[K]< < endl;

K++;

}

 

if (FileString[i]==' ')//Количество слов в предложениях

{

WordQuant++; //количество слов общее

count++; //количество слов в текущем предложении

 

if (FileString[i-1]=='! ' || FileString[i-1]=='? ' || FileString[i-1]=='.')

{

Col[Z]=count;

Z++;

count=0;

}

}

 

 

if (i> 1 & & FileString[i]==' ' & & (FileString[i-1]=='! ' || FileString[i-1]=='? ' || FileString[i-1]=='.')) SentQuant++; //количество предложений

 

if (i> 1 & & FileString[i]==' ' & & (FileString[i-1]=='! ' || FileString[i-1]=='.' || FileString[i-1]=='? ')) //завещающий знак

{

znak[Z1]=FileString[i-1];

Z1++;

}

}

 

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

{

cout< < " Number of words in " < < i+1< < " offer equal" < < Col[i]< < endl;

cout< < " The final mark in" < < i+1< < " sentence: " < < znak[i]< < endl;

cout< < " The first word in " < < i+1< < " sentence: " < < FirstWord[i]< < endl;

}

 

cout< < " Word Count is: " < < WordQuant< < endl;

cout< < " Number of offers is: " < < SentQuant< < endl;

 

}

 

void SaveTo()

{

ofstream fout(" answer.txt");

 

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

{

fout< < " Number of words in " < < i+1< < " offer equal " < < Col[i]< < endl;

fout< < " The final mark in " < < i+1< < " sentence: " < < znak[i]< < endl;

fout< < " The first word in " < < i+1< < " sentence: " < < FirstWord[i]< < endl;;

}

 

fout< < " Word Count is: " < < WordQuant< < endl;

fout< < " Number of offers is: " < < SentQuant< < endl;

 

fout.close();

 

cout< < " The data is stored in a file in the program directory answer.txt." < < endl;

}

 

main()

{

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

Col[0]=0;

 

while (MenuPointer! ='0')

{

system(" cls");

 

cout< < " Select an action: \n";

cout< < " 1 - Data input from file\n";

cout< < " 2 - Manual data input\n";

cout< < " 3 - Text Analysis\n";

cout< < " 4 - Save the file to the report\n";

cout< < " 0 - Exit\n";

 

MenuPointer=getch();

 

switch(MenuPointer)

{

case '1': {

system(" cls");

FileRead();

cout< < endl;

system(" pause");

break;

}

 

case '2': {

system(" cls");

Custom();

cout< < endl;

system(" pause");

break;

}

 

case '3': {

system(" cls");

Analysis();

cout< < endl;

system(" pause");

break;

}

 

case '4': {

system(" cls");

SaveTo();

cout< < endl;

system(" pause");

break;

}

}

}

 

}

 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.016 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал