Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 5.00
zoluxa
1 / 1 / 0
Регистрация: 13.12.2009
Сообщений: 18
#1

Для каждого символа заданного текста указать, сколько раз встречается в тексте - C++

14.12.2009, 10:14. Просмотров 1966. Ответов 21
Метки нет (Все метки)

Для каждого символа заданного текста указать, сколько раз встречается в тексте. Сообщение об одном символе не должно встречаться больше, чем один раз. только напишите пожалуйста в языке си и в консоль апликейшн

Буду очень благодарним!!!!!
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.12.2009, 10:14
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Для каждого символа заданного текста указать, сколько раз встречается в тексте (C++):

Для каждого символа заданного текста указать сколько раз он встречается в тексте - C++
Для каждого символа заданного текста указать сколько раз он встречается в тексте на С++

Для каждого символа заданного текста указать, сколько раз он встречается в тексте - C++
Доброго времени суток , прошу помочь с решением задачи : Для каждого символа заданного текста указать, сколько раз он встречается в...

Для каждого из слов указать, сколько раз оно встречается в заданном тексте - C++
Дан текст, содержащий n строк. Для каждого из слов указать, сколько раз оно встречается.

Для каждого из слов данного текста указать, сколько раз оно встречается в предложении - C++
Для каждого из слов данного текста указать, сколько раз оно встречается в предложении.С чего начать и как попроще решить эту задачу?

Для каждого из слов данного текста указать, сколько раз оно встречается в предложении - C++
Для каждого из слов данного текста указать, сколько раз оно встречается в предложении

Для каждого из слов предложения указать, сколько раз оно встречается в предложении - C++
Добрый день! Не могу решить две задачи в с++ , поскажите пожалуйста: 1. Для каждого из слов предложения указать, сколько раз оно...

21
ISergey
Maniac
Эксперт С++
1395 / 906 / 56
Регистрация: 02.01.2009
Сообщений: 2,706
Записей в блоге: 1
21.12.2009, 21:25 #16
Цитата Сообщение от Bloomfield Посмотреть сообщение
как там происходит
что происходит?
Неужели так тяжело конкретизировать свой вопрос? На форуме нету людей которые могут читать мысли (иногда попадаются..).
0
Bloomfield
2 / 2 / 1
Регистрация: 16.11.2009
Сообщений: 51
21.12.2009, 21:34 #17
как происходит обработка символов
и почему какой бы текст не был, буквы выводятся в алфавитном порядке (в результате работы проги)
0
MR_Andrew
12 / 12 / 2
Регистрация: 19.12.2009
Сообщений: 115
27.12.2009, 00:46 #18
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
В общем, побороли
Очень прошу, у кого будет немного свободного времени, проверьте, пожалуйста, правильность написания комментариев (при условии владения украинским языком):
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
 
int myfunc (char* strtemp)      // Оголошення власної фунцкії та її коду.
  {                     // Ціль - окрема підпрограмма для пошуку
  char *pTmp = strtemp;         // голосних літер в окремих словах та
  int k = 0;                // підрахування їх кількості
 
 
  while( *pTmp != '\0' )        // Пошук голосних літер у циклі та
    {                   // знаходження їх кількості
    switch( *pTmp )
      {
      case 'a': case 'e': case 'i': case 'j':
      case 'o': case 'u': case 'y': k++;
      }
 
    pTmp++;
    }
 
  return k;
  }
 
 
 
 
 
 
int main ()
 
{
 
   int i;                // Оголошуємо змінні
   int M[100];
   int max;
 
 
char str[]="testing text jkjhkhj";   // Текст для тестування
char str2[100];              // Оголошення змінної str2, максимальна довжина
                         // якої 100 символів
strcpy (str2,str);           // Копіювання тексту з str до str2
int n=0;
 
char *words[100];            // Оголощенная нової знінної з вказівником *words
char *ps=str2;               // Присвоєння значення str2 вказівнику *ps
 
    words[0]=str2;           // У циклі розбиваємо задане речення на окремі
                     // слова, заповнюємо ними одновтмірний масив.
    n=1;                 // Слова відокремлюємо за допомогою пошуку
                     // пробілів. Цикл перебирає символи, доходить
    while (*ps !='\0')       // до " ", і заповнює масив відокремленими
      {              // елементами, нарощує їх кількість.
      if(*ps==' ')
        {
        words[n]=(ps+1);         // Массив words буде заповнений словами з 
        *ps='\0';            // тестового речення
        n++;             // n - лічільник елементів. Знаходимо к-ть слів.
        }
 
      ps++;
      }
 
 
 
 
 
 
int k;
 
for (i=0; i<n; i++)          // Застосовуємо цикл для всіх елементів масиву
     {
 
     ps = words[i];              // ps по черзі присвоюєно значення кожного 
                     // елемента масиву
     k=myfunc(ps);           // застосовуємо створену раніше функцію
                     // myfunc для обчислення кількості голосних
                     // у кожному елементі масиву
     M[i] =k;                // Створюємо ще один одновимірний масив М, 
                     // присвоюємо йому значення кількості голосних
                     // елеметнів масиву слів words
  
     printf ("%s\n", words[i]);      // Виводимо окремо слова і кількість голосних
     printf ("%d\n", k);         // у кожному слові
     }
             // Виконуємо пошук слова з найбільшою кількістю голосних букв.
 
    max = 0;                 // Змінній max присвоюємо значення "0".
 
    for (i=1; i<k; i++)          // Для всіх елементів масиву перевіряємо умову:
       {                 // якщо елемент масиву M[i] більший за значення
       if(M[i]>M[max])           // M[max], то зманній max присвоюємо нове 
     max=i;              // значення більшого елементу.  
       }
 
     printf ("Vivedenn9 informacii pro slovo z naib. kil'kistu golosnih\n");
     printf ("---\n%d\n", M[max]);   // Виводимо на екран слово з найб. к-тю голосних
     printf ("%s\n", words[max]);    // та саме значення
 
 
     getchar ();
     return 0;
 
}
А так же, если вас не затруднит - блок схема. Для меня это каторга, я вечно хоть где-то, но ошебусь. Хоть просто карандашом на бумаге и прислать мне, и перерисую в ворд

Заранее спасибо
0
Bloomfield
2 / 2 / 1
Регистрация: 16.11.2009
Сообщений: 51
14.03.2010, 20:08 #19
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Привет! Написал прогу. Суть её в том, что она должна выводить сколько раз встречается та или иная буква в строке текста (текст заглавными буквами)

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
int main ()
{
    SetConsoleCP(1251);
        SetConsoleOutputCP(1251);
    int K[32] = {0}, i, j, n;
    char str[101], Alf[] = {'А','Б','В','Г','Д','Е','Ё','Ж','З','И','Й','К','Л','М','Н'\
        'О','П','Р','С','Т','У','Ф','Х','Ц','Ч','Ш','Щ','Ъ','Ы','Ь','Э','Ю','Я'};
    n1 = strlen(Alf);
    printf ("Введите строку:\n");
    gets(str);
    n = strlen(str);
    for (j=0; j < n; j++)
        for (i=0; i != strlen(Alf); i++)
            if (str[j] == Alf[i]) {K[i]++; break; }
    for (i=0; i<=33; i++)
        if (K[i] != 0) printf ("%c: %i\n", Alf[i], K[i]);
    printf ("\n");
    system("PAUSE");
}
Но почему то кроме букв текста выводит ещё букву Я (даже если её нет в тексте) с мусорными значениями. В чём проблема? Спасибо!

Добавлено через 8 часов 54 минуты
Там кстати забыл удалить 12-ю строку, она там лишняя. Я думаю проблема в циклах, но немогу понять где именно

Добавлено через 23 часа 54 минуты
Сделал масиву К 34 элемента, и вроде заработало как надо, то есть буква 'Я' больше не показывается. Но незнаю правильно это или нет всё таки
1
accept
4828 / 3249 / 165
Регистрация: 10.12.2008
Сообщений: 10,569
15.03.2010, 10:17 #20
C
1
    for (i=0; i != strlen(Alf); i++)
неправильное условие
должно быть i < strlen(Alf)

C
1
    for (i = 0; i < strlen(Alf); i++)
K[33] ?

Добавлено через 55 секунд
C
1
for (i=0; i<=33; i++)
то же самое (ошибка)

C
1
for (i = 0; i < 33; i++)
Добавлено через 1 минуту
чтобы вспоминать как работает цикл
рассмотри
C
1
for (i = 0; i <= 0; i++)
1
Александра1
0 / 0 / 0
Регистрация: 17.03.2010
Сообщений: 3
17.03.2010, 02:00 #21
а как тоже самое сделать, но только, чтобы считал цифры в произвольной строке?
0
accept
4828 / 3249 / 165
Регистрация: 10.12.2008
Сообщений: 10,569
17.03.2010, 04:54 #22
Цитата Сообщение от Александра1
а как тоже самое сделать, но только, чтобы считал цифры в произвольной строке?
надо читать строку, пока она не закончилась
если символ определяется через isdigit(c), прибавить счётчик
тип счётчика size_t
0
17.03.2010, 04:54
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.03.2010, 04:54
Привет! Вот еще темы с ответами:

Для встречающихся в заданном тексте пар расположенных символов указать, сколько раз встречается каждое из таких пар. - C++
Для встречающихся в заданном тексте пар расположенных символов указать, сколько раз встречается каждое из таких пар. #include&lt;stdio.h&gt; ...

Для встречающихся в заданном тексте пар расположенных символов указать, сколько раз встречается каждое из таких пар - C++
помогите пожалуйста решить Для встречающихся в заданном тексте пар расположенных символов указать, сколько раз встречается каждое...

Задачка на указатели. Указать, сколько раз встречается в тексте каждое из двухбуквенных сочетаний - C++
Для встречающихся в заданном тексте пар рядом расположенных символов указать,сколько раз встречается в тексте каждое из таких двухбуквенных...

Для каждого элемента вектора определить, сколько раз он встречается в матрице - C++
Дана целочисленная матрица A(N,M) и целочисленный вектор D(K). Для каждого элемента вектора определить, сколько раз он встречается в...


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

Или воспользуйтесь поиском по форуму:
22
Ответ Создать тему
Опции темы

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