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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
zorge
Сообщений: n/a
#1

Количество заглавных букв в тексте - C++

01.12.2012, 00:00. Просмотров 952. Ответов 1
Метки нет (Все метки)

Помогите исправить ошибку, которую не знаю) Все подпрограммы работают, но когда они не в одной программе, а если в одной то некорректно работают!

C++
1
2
3
С клавиатуры вводится строка. Составить программу, которая подсчитывает количество
заглавных букв в тексте; выводит на экран слова, имеющие наименьшее количество
букв удаляет все слова, начинающиеся со строчной буквы.
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#include <iostream>
#include <string.h>
#include <conio.h>
 
const int n=100;
 
using namespace std;
 
void inp(char []);
void Big_S(char []);
void Small_S(char []);
void Big_B(char []);
 
int main()
{
    char str[n];
    inp(str);
    char *p=str;
    Big_S(str);
    Small_S(str);
    Big_B(str);
    getch();
    return 0;
}
 
void inp(char str[n]){
     cout<<"Enter string:"<<endl;
     gets(str);
     }
 
void Big_S(char str[n]){
     char* ptr=strtok(str," ");
     char s[100]="";
     do
     {
          if(!islower(ptr[0]))
          {
               strcat(s,ptr);
               strcat(s," ");
               }
     }
     while(ptr = strtok(NULL," "));
     cout<<"\nModified string:\n"<<s;
     }
 
void Small_S(char str[n]){
     char* x=strtok(str," ");
     char* min=x;
     do
     {
           if(strlen(x)<strlen(min))
           min=x;
     }
     while(x=strtok(NULL," "));
     cout<<endl<<"Min = "<<min;
     }
 
void Big_B(char str[n]){
     int k=0;
     char st[]="QWERTYUIOPLKJHGFDSAZXCVBNM";
     for(int i=0;i<strlen(str);i++)
        for(int j=0;j<strlen(st);j++)
          if(str[i]==st[j])
           k++;
     cout<<endl<<"Number letters: "<<k;
     }
Добавлено через 28 минут
Сформулирую вопрос по другому!
Как эти подпрограммы объединить в одну, чтобы все корректно работали?

выводит на экран слова, имеющие наименьшее количество букв
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
#include <iostream>
#include <string.h>
#include <conio.h>
 
const int n=100;
 
using namespace std;
 
int main()
{
    char str[n];
    cout<<"Enter string:"<<endl;
     gets(str);
    char* x=strtok(str," ");
     char* min=x;
     do
     {
           if(strlen(x)<strlen(min))
           min=x;
     }
     while(x=strtok(NULL," "));
     cout<<endl<<"Min = "<<min;
    getch();
    return 0;
}
удаляет все слова, начинающиеся со строчной буквы.
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
#include <iostream>
#include <string.h>
#include <conio.h>
 
const int n=100;
 
using namespace std;
 
int main()
{
    char str[n];
    cout<<"Enter string:"<<endl;
     gets(str);
    char* ptr=strtok(str," ");
     char s[100]="";
     do
     {
          if(!islower(ptr[0]))
          {
               strcat(s,ptr);
               strcat(s," ");
               }
     }
     while(ptr = strtok(NULL," "));
     cout<<"\nModified string:\n"<<s;
    getch();
    return 0;
}
подсчитывает количество заглавных букв в тексте
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>
#include <string.h>
#include <conio.h>
 
const int n=100;
 
using namespace std;
 
int main()
{
    char str[n];
    cout<<"Enter string:"<<endl;
     gets(str);
    int k=0;
     char st[]="QWERTYUIOPLKJHGFDSAZXCVBNM";
     for(int i=0;i<strlen(str);i++)
        for(int j=0;j<strlen(st);j++)
          if(str[i]==st[j])
           k++;
     cout<<endl<<"Number letters: "<<k;
    getch();
    return 0;
}
Добавлено через 1 час 57 минут
Да помогите народ)))
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.12.2012, 00:00     Количество заглавных букв в тексте
Посмотрите здесь:
C++ Подсчет количества заглавных букв в тексте
Количество заглавных букв в строке C++
Найти количество заглавных букв в словах C++
Сосчитать количество заглавных букв в предложении C++
C++ Подсчитать количество символов отличных от заглавных латинских букв во всех словах массива
C++ Подсчитать количество букв "А" в предложении и общее количество букв. В тексте несколько строк.
26. Подсчитать количество букв "А" в предложении и общее количество букв. В тексте несколько строк. C++
Количество гласных букв в тексте C++
Посчитать в тексте количество удвоенных букв n C++
Посчитать количество букв в заданном тексте C++
C++ Подсчитать количество слов, букв в тексте
C++ Подсчитать общее количество букв в заданном тексте

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
no_wearines
52 / 48 / 2
Регистрация: 01.01.2012
Сообщений: 324
01.12.2012, 05:10     Количество заглавных букв в тексте #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
35
36
37
38
39
40
41
42
43
#include <iostream>
#include <cstring>
#include <cctype>
#include <conio.h>
using namespace std;
 
int main()
{
char array_1[250], array_2[250], *ptr_1, *ptr_2;
int i_n = 0;
 
cin.getline(array_1, 250);
 
//ïðîâåðêГ* ñëó÷Г*ГҐГў
 
//ïîäñ÷åò ñèìâîëîâ Гў âåðõГ*ГҐГ¬ ðåãèñòðå
for(int i_1 = 0, i_2 = strlen(array_1); i_1 < i_2; ++i_1)
if(isupper(array_1[i_1]))
++i_n;
 
//Г*Г*õîæäåГ*ГЁГҐ Г*Г*èìåГ*ГјГёГҐГЈГ® ñëîâГ* + ГіГ¤Г*ëåГ*ГЁГҐ ñëîâ Г± ïåðâîé Г§Г*ГЈГ«Г*ГўГ*îé áóêâîé
ptr_1 = ptr_2 = strtok(array_1, " ");
do
{
if(strlen(ptr_1) < strlen(ptr_2))
ptr_2 = ptr_1;
 
if(!isupper(ptr_1[0]))
{
strcat(array_2, ptr_1);
strcat(array_2, " ");
}
}
while(ptr_1 = strtok(NULL, " "));
 
//Âûâîä ðåçóëüòГ*ГІГ*
cout<<"array: "<<array_2<<endl<<"small word: "<<ptr_2<<endl
<<"amount of the caps: "<<i_n<<endl;
 
getch();
 
return 0;
}
Yandex
Объявления
01.12.2012, 05:10     Количество заглавных букв в тексте
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru