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

Подсчет количества слов в предложении - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.89
zidans
0 / 0 / 0
Регистрация: 30.10.2010
Сообщений: 45
17.01.2011, 19:58     Подсчет количества слов в предложении #1
Здравствуйте. Помогите, пожалуйста, с лабой.
1. Дана строка символов. Распечатать слова, отличные от последнего, оставив в каждом слове только первые вхождения каждой буквы.
например:
"Ptici preleteli vesna prichla"
на экран он должен вывести
"Ptic prelti vesna"

2. Подсчитать количество слов в получившемся предложении.

Вот код программы на 1 вопрос.

# include<iostream.h>
# include<math.h>
# include<string.h>
# include<stdio.h>
# include<ctype.h>

void main(void)
{
M:
int n, i, j=0, t, k=0, p, q=0, z=0, w=0,x=0, b=0, m=0, g=0;
int r[100][2];
char *s;
s=new char[100];
char *c;
c=new char[100];
char *a;
a=new char[100];
char *y;
y=new char[100];
cout <<"vvod texta:"<<endl;
cout <<""<<endl;
gets(s);
//gets(c);
cout <<""<<endl;
n=strlen(s);
cout <<"kolichestvo simvolov n="<<n<<endl;
for (i=0;i<n;i++)
{
t=isalnum(s[i]);
if (t==0)
{
r[k][1]=i;
k++;
}
}
t=(r[k-1][1])+1;
cout <<"kolichestvo slov k="<<k+1<<endl;
if (k==0)
t=0;
cout <<"index poslednego slova i="<<t<<endl;
cout <<""<<endl;


cout <<"..........................."<<endl;
cout <<"otvet:"<<endl;



// posledn slovo zapishem v "c"
cout <<"poslednego slovo"<<endl;
for (p=t;p<n;p++)
{
c[z]=s[p];
z++;
}


for (i=0;i<z;i++)
cout<<""<<c[i];
cout <<""<<endl;


cout <<"konecny text"<<endl;
for (i=0;i<k;i++)

{
w=r[i][1]-q;
//cout<<"w="<<w<<endl;
if (w==z)
{
j=0;
for (p=q;p<r[i][1];p++)
{
a[j]=s[p];
j++;
}

for (j=0;j<z;j++)
{
if(a[j]!=c[j])
x++;
}


if (x>0)
{
b=0;
y[b]=s[q];
// ubiraet povtoryaushiesya bukvy
for (p=q+1;p<=r[i][1];p++)
{
g=0;
for (m=0;m<=b;m++)
if (y[m]!=s[p])
{
g++;
if (m==b)
if (m==g-1)
{
b++;
y[b]=s[p];
}
}
}


for (p=0;p<b;p++)
cout<<""<<y[p];
}

cout <<" ";
x=0;




}
else
{
b=0;
y[b]=s[q];
// ubiraet povtoryaushiesya bukvy
for (p=q+1;p<=r[i][1];p++)
{
g=0;
for (m=0;m<=b;m++)
if (y[m]!=s[p])
{
g++;
if (m==b)
if (m==g-1)
{
b++;
y[b]=s[p];
}
}
}


for (p=0;p<b;p++)
cout<<""<<y[p];
}
cout <<" ";
q=r[i][1]+1;


}

cout <<""<<endl;
cout <<"=========================="<<endl;
cout <<""<<endl;
cout <<""<<endl;
cout <<"vihod ('yes'=1)"<<endl;
cout <<"yes=";
cin>>i;
if (i==1)
goto K;
else
goto M;

K:;
}


--------------------------------------------------------------------------------
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.01.2011, 19:58     Подсчет количества слов в предложении
Посмотрите здесь:

Подсчет количества слов C++
C++ Подсчёт количества слов в предложении
Подсчет количества слов C++
Подсчет слов в предложении C++
C++ Подсчет числа слов в предложении с использованием перечислений. Найти ошибку в коде
C++ Подсчет количества предложений и слов в предложении
Подсчет количества слов в файле C++
C++ Подсчет количества слов

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
18.01.2011, 10:04     Подсчет количества слов в предложении #2
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
#include <iostream>
#include<vector>
using namespace std;
 
void un(string& s){
    string::size_type ind;
    for(int i=0; i<s.size()-1; ++i){
        while((ind=s.find(s[i], i+1))!=string::npos)
            s.erase(ind, 1);
    }
    cout<<s<<" ";
}
 
int main(){
    string word;
    int meter=0;
    cout<<"input text(0 for continue)\n";
    vector<string> v;
    while(cin>>word){
        if(word=="0")break;
        v.push_back(word);
    }
    for(int i=0; i<v.size(); ++i){
        if(v[i]==*(v.end()-1)) {
            v.erase(v.begin()+i);
            --i;
            }
        else{
            un(v[i]);
            ++meter;
        }
    }
    cout<<"\n\n"<<meter;
}
Yandex
Объявления
18.01.2011, 10:04     Подсчет количества слов в предложении
Ответ Создать тему
Опции темы

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