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

Какие буквы встречаются чаще - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.92
GHOST12
0 / 0 / 0
Регистрация: 16.11.2011
Сообщений: 86
21.12.2011, 14:35     Какие буквы встречаются чаще #1
Помогите решить задачи. Ни чего не получается.

Дана строка. состоящая из маленьких латинских букв и пробелов, не более 100 символов. Определить. какие буквы встречается в тексте наиболее часто.
B выходной файл необходимо записать самые часто встречающиеся буквы без пробелов в алфавитном порядке.

Другая задача. Имеется 3 вазы: две круглые и одна квадратная. Требуется определить можно ли их составить друг в друга, и если можно, то в каком порядке.
Входной файл содержит три положительных числа:радиусы круглых ваз R1 и R2 и сторону квадратной вазы.Стенки ваз считать бесконечно тонкими.
В выходной файл необходимо записать строку, описывающую в каком порядке вазы ставятся друг в друга или ошибку, если вазы не возможно поставить.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.12.2011, 14:35     Какие буквы встречаются чаще
Посмотрите здесь:

Определить, какие из этих имен встречаются во всех классах, какие есть хотя бы в двух классах, и какие - только в одном классе C++
C++ Сформировать третий массив, в который перенести из массива X те элементы, которые встречаются в нём чаще, чем в массиве Y.
Найти цифры, которые чаще всего встречаются в заданном натуральном числе N. C++
C++ Какие буквы и сколько раз встречаются в этом тексте.
Нужно выяснить, какие символы встречаются в обеих строках, так же и те, которые встречаются только в одной C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
-=ЮрА=-
Заблокирован
Автор FAQ
21.12.2011, 15:24     Какие буквы встречаются чаще #2
Цитата Сообщение от GHOST12 Посмотреть сообщение
Дана строка. состоящая из маленьких латинских букв и пробелов, не более 100 символов. Определить. какие буквы встречается в тексте наиболее часто.
- далее дорабатываем сами под свои нужды
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
#include <iostream>
#include <string>
using namespace std;
 
int main()
{
    char str[101];
    cout<<"Enter string(less than 100 chars) :\n";
    cin.getline(str,100);
    long len = strlen(str);
    int i,j,imax  = 0;
    int nCount    = 0;
    int nMaxChar = 0;
    for(i = 0; i < len; i++)
    {
        nCount = 0;
        for(j = 0; j < len; j++)
        {
            if(str[i] == str[j])
                nCount++;
        }
        if(nMaxChar < nCount)
        {
            nMaxChar = nCount;
            imax = i;
        }
    }
    if(nMaxChar < 2)
        cout<<"All elemnts in array is different!\n";
    else
        cout<<"Most frequely char in string is : ["<<str[imax]<<"]"<<endl
            <<"Text contain it : "<<nMaxChar<<" times"<<endl;
    system("pause");
    return 0;
}
Enter string(less than 100 chars) :
This is the test
Most frequely char in string is : [s]
Text contain it : 3 times
Для продолжения нажмите любую клавишу . . .
xAtom
 Аватар для xAtom
910 / 735 / 60
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
21.12.2011, 15:58     Какие буквы встречаются чаще #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
#include <iostream>
#include <cctype>
#include <algorithm>
using namespace std;
 
struct func {
   int* ptr;
   func(int* arr) {
      ptr = arr;
   }
   void operator () (char ch) {
      if(isalpha(ch))
         ptr[tolower(ch) - 'a']++;
   }
};
 
int  main(void) {
  char str[101] = "ada, apl , asp, ALPEN";
//  cout << "enter str: ";
//  cin.getline(str, sizeof(str)-1);
 
  int signs[26] = {0};
  for_each(str, str + strlen(str), func(signs));
  int* val = max_element(signs, signs + sizeof(signs)/sizeof(int));
  
  cout << *val << "(" << char((val - signs) + 'a') << ")" << endl;
  return 0;
}
GHOST12
0 / 0 / 0
Регистрация: 16.11.2011
Сообщений: 86
21.12.2011, 23:14  [ТС]     Какие буквы встречаются чаще #4
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
- далее дорабатываем сами под свои нужды
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
#include <iostream>
#include <string>
using namespace std;
 
int main()
{
    char str[101];
    cout<<"Enter string(less than 100 chars) :\n";
    cin.getline(str,100);
    long len = strlen(str);
    int i,j,imax  = 0;
    int nCount    = 0;
    int nMaxChar = 0;
    for(i = 0; i < len; i++)
    {
        nCount = 0;
        for(j = 0; j < len; j++)
        {
            if(str[i] == str[j])
                nCount++;
        }
        if(nMaxChar < nCount)
        {
            nMaxChar = nCount;
            imax = i;
        }
    }
    if(nMaxChar < 2)
        cout<<"All elemnts in array is different!\n";
    else
        cout<<"Most frequely char in string is : ["<<str[imax]<<"]"<<endl
            <<"Text contain it : "<<nMaxChar<<" times"<<endl;
    system("pause");
    return 0;
}
Enter string(less than 100 chars) :
This is the test
Most frequely char in string is : [s]
Text contain it : 3 times
Для продолжения нажмите любую клавишу . . .
Может кто нибудь перевести это в СИ?
-=ЮрА=-
Заблокирован
Автор FAQ
21.12.2011, 23:20     Какие буквы встречаются чаще #5
Цитата Сообщение от GHOST12 Посмотреть сообщение
Может кто нибудь перевести это в СИ?
- конечно может
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
#include <stdio.h> //printf scanf
#include <string.h>//strlen
#include <stdlib.h>//system
 
int main()
{
        char str[101];
        printf("Enter string(less than 100 chars) :\n");
        scanf("%[^\n]",str);
        long len = strlen(str);
        int i,j,imax  = 0;
        int nCount    = 0;
        int nMaxChar = 0;
        for(i = 0; i < len; i++)
        {
                nCount = 0;
                for(j = 0; j < len; j++)
                {
                        if(str[i] == str[j])
                                nCount++;
                }
                if(nMaxChar < nCount)
                {
                        nMaxChar = nCount;
                        imax = i;
                }
        }
        if(nMaxChar < 2)
                printf("All elemnts in array is different!\n");
        else
    {
                printf("Most frequely char in string is : [ %c ]\n",str[imax]);
                printf("Text contain it : %d times\n",nMaxChar);
    }
    system("pause");
    return 0;
}
GHOST12
0 / 0 / 0
Регистрация: 16.11.2011
Сообщений: 86
21.12.2011, 23:38  [ТС]     Какие буквы встречаются чаще #6
-=ЮрА=- помоги ещё не много. Если есть несколько букв с равным количеством повторений, что изменить чтобы выводились они все?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.12.2011, 10:19     Какие буквы встречаются чаще
Еще ссылки по теме:

C++ Определить, какие буквы слов совпадают чаще: первые, последние или средние (Pascal -> C++)
C++ Выяснить, какие числа встречаются в файле чаще - положительные или отрицательные
Определить, какие буквы алфавита не встречаются ни разу в заданном текстовом файле C++

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

Или воспользуйтесь поиском по форуму:
-=ЮрА=-
Заблокирован
Автор FAQ
22.12.2011, 10:19     Какие буквы встречаются чаще #7
Цитата Сообщение от GHOST12 Посмотреть сообщение
Если есть несколько букв с равным количеством повторений, что изменить чтобы выводились они все?
- тогда для них нужен массив + подсчитать число таких букв
Yandex
Объявления
22.12.2011, 10:19     Какие буквы встречаются чаще
Ответ Создать тему
Опции темы

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