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

Подсчитать количество слов, начинающихся с буквы “a” - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 25, средняя оценка - 4.92
RAMON@
0 / 0 / 0
Регистрация: 07.11.2009
Сообщений: 67
08.02.2010, 07:31     Подсчитать количество слов, начинающихся с буквы “a” #1
Подсчитать количество слов, начинающихся с буквы “a”.?? помогите с решением..
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.02.2010, 07:31     Подсчитать количество слов, начинающихся с буквы “a”
Посмотрите здесь:

Подсчитать колличество слов начинающихся с первой буквы первого слова C++
Найти количество слов, начинающихся с заданной буквы С. C++
Найти количество слов, начинающихся на гласные буквы C++
C++ Дан текст. а) Найти количество слов, начинающихся с буквы б
Подсчитать количество слов, начинающихся с буквы 'а' C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
08.02.2010, 08:59     Подсчитать количество слов, начинающихся с буквы “a” #2
А в чём проблема? Ищи " а", "\nа" и "\tа" и при каждом нахождении инкременть счетчик найденных.
yanyk1n
 Аватар для yanyk1n
4324 / 1455 / 152
Регистрация: 12.03.2009
Сообщений: 5,310
01.04.2010, 15:02     Подсчитать количество слов, начинающихся с буквы “a” #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream> //стандартная библиотека ввода-вывода
#include <cstring> //стандартная библиотека строк
using namespace std;
int main()
{
    char st[] = "Alpha beta gamma defhf agiof go;gi agiofa goigio gl8tqjxi zgoaa  aka";
    char * p = strtok(st," ");
    while (p)
    {
        if (p[0]=='A'||p[0]=='a') cout << p << endl;
        p = strtok(NULL," ");
    }
    return 0;
}
P.S. Компилируется при помощи G++
RAMON@
0 / 0 / 0
Регистрация: 07.11.2009
Сообщений: 67
01.04.2010, 15:04  [ТС]     Подсчитать количество слов, начинающихся с буквы “a” #4
а более подробно можно написать? начиная с первой библиотеки, и последней!!
Олег@tor
9 / 9 / 1
Регистрация: 22.10.2009
Сообщений: 24
16.04.2010, 09:13     Подсчитать количество слов, начинающихся с буквы “a” #5
Вот прога, выделяющая и выводящая на экран все слова произвольной строки, тебе по ходу остаётся только поставить условие про "а" и ввести счётчик для количества слов.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
char st[100], sl[100]; 
int k=0, i; 
 gets(st); 
 strcat(st," "); 
  int n=strlen(st); 
        if (n<2) return 1; 
   sl[0]='\0'; 
   for (i=0; i<n; i++) 
     if (st[i] != ' ')  
     { 
       sl[k]=st[i]; 
         sl[k+1]='\0'; 
         k++; 
     } 
     else 
     { 
     if (strlen(sl)>0) puts(sl); 
           sl[0]='\0';  
       k=0; 
     }
NNN777
299 / 157 / 19
Регистрация: 27.02.2010
Сообщений: 317
16.04.2010, 09:36     Подсчитать количество слов, начинающихся с буквы “a” #6
Можно так сделать:
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
#include <iostream>
#include <stdlib.h>
#include <stdio.h>
using namespace std;
 
const int SIZE =80;
 
int form (char*, char*);
char *probel2 (char *in);
char *probel1 (char *in);
 
void main()
{
    char buf[SIZE], outbuf[SIZE]={' '};
 
    while(cout<<"Vvedite stroky: ",
    cin.getline(buf, SIZE))
    {   
        int z= form (buf, outbuf);
 
        cout<<"Kolichastvo slov: "<<z;
        cout<<endl<<endl;
    }
}
int form (char *a,char *out)
{   
    char *first=a; 
    int k=0;
 
    while (*(first=probel1(a)))
    {
        a=probel2(first);
        
        if (*first=='a')
            k+=1;   
    }
    return k;
}
char *probel1(char *in)
{ 
    while (*in&&((*in==' ')||(*in=='\t')))
        in++;
    return in;
}
char *probel2 (char *in)
{
    while (*in&&*in!=' '&&*in!='\t')
        in++;
return in;
}
RAMON@
0 / 0 / 0
Регистрация: 07.11.2009
Сообщений: 67
23.04.2010, 18:27  [ТС]     Подсчитать количество слов, начинающихся с буквы “a” #7
Подсчитать количество слов, начинающихся с буквы “a”.
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream.h>
#include <string.h>
#include <stdio.h>
int main()
{
char st[100], tmp[100];
int n = 0;
char *ch = NULL;
 
tmp[0] = '\0';
puts("Vvedite stroku: ");
gets(st);
вот а дальше незнаю помогите плиз!!
salvafion
10 / 10 / 1
Регистрация: 16.06.2009
Сообщений: 193
23.04.2010, 20:25     Подсчитать количество слов, начинающихся с буквы “a” #8
ну а дальше организовывай цикл проходи до пробела(ispace(str) помоему) после чего до первого встречного символа(isalpha(str) тож не точно) а там просто ставь условия если этот символ равен "a" то count++

Добавлено через 2 минуты
тем более что у тя массив там вообще без этих функций просто по циклу просмотри каждый элемент и как только прбел встретился смотри букву первую встречную..но если чесно лучше там сделать динамический массив а потом двигаться по нему st++;
RAMON@
0 / 0 / 0
Регистрация: 07.11.2009
Сообщений: 67
23.04.2010, 20:37  [ТС]     Подсчитать количество слов, начинающихся с буквы “a” #9
напиши приблизительбно как!!
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
23.04.2010, 20:39     Подсчитать количество слов, начинающихся с буквы “a” #10
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int main(void){
    char buf[BUFSIZ], *p;
    size_t cnt;
 
    printf("String: ");
    if ( !fgets(buf, BUFSIZ, stdin) || *buf == '\n' )
        exit(1);
    for ( cnt = 0, p = strtok(buf, " \t\n"); p; p = strtok(NULL, " \t\n") )
        if ( *p == 'a' )
            ++cnt;
    printf("%d word(s) starts by 'a'.\n", cnt);
 
    exit(0);
}
salvafion
10 / 10 / 1
Регистрация: 16.06.2009
Сообщений: 193
23.04.2010, 20:45     Подсчитать количество слов, начинающихся с буквы “a” #11
ну сделай сначало так
C++
1
char *st=new char;
потом те надо после ввода по всей строке пройтись через цикл..
C++
1
2
3
4
5
6
7
while(st!='\0')
{
 while(!isalpha(st)) st++;
 if (st=='a') count++;
while(!isspace(st)) st++;
 
}
вот что то в этом роде.на счет функций изальфа и изспейс точно не помню как они пишуться находятся они в string.h

Добавлено через 2 минуты
ну и кстати надо смотреть когда он заканчиваться будет может возникнуть такая ситуюция что он порйдет '\0' и зациклиться
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.05.2010, 16:42     Подсчитать количество слов, начинающихся с буквы “a”
Еще ссылки по теме:

Подсчитать количество слов, начинающихся и заканчивающихся на одну и ту же букву C++
C++ Найти количество слов, начинающихся с буквы b
Найти в массиве символов количество слов, начинающихся с буквы b C++

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

Или воспользуйтесь поиском по форуму:
Genius Ignat
1233 / 771 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
08.05.2010, 16:42     Подсчитать количество слов, начинающихся с буквы “a” #12
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
#define S_BUF 255
 
int main(){
char str[S_BUF];
printf("input text: "); gets(str);
unsigned int len = strlen(str);   
unsigned int i;
int count = 0;
if(str[0]=='a')count++;
for(i = 0 ; i < len; i++ )if(str[i]==' '&&str[i+1]=='a')count++;
printf("count words on (a) %d", count );
getch();
return 0;
}
Yandex
Объявления
08.05.2010, 16:42     Подсчитать количество слов, начинающихся с буквы “a”
Ответ Создать тему
Опции темы

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