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

Самый редко встречаемый символ - C++

Восстановить пароль Регистрация
 
CppBeginner
1 / 1 / 0
Регистрация: 11.10.2009
Сообщений: 23
29.04.2010, 22:32     Самый редко встречаемый символ #1
Задан массив A[30]. Найти самый редко встречаемый символ.

Может быть пригодится кому, но вот исходник задачи обратной - самый часто встречаемый символ.
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.h>
int main()
{
int i,j,S,SPred=0;
char a[32],sim1,sim2;
for(i=0;i<32;i++)
    cin>>a[i];
 
for(i=0;i<32;i++)
{
    for(j=1;j<32;j++)
        if(a[i]==a[j])
        {
            S++;
            sim1=a[i];
        }
    if(S>SPred)
    {
        SPred=S;
        sim2=sim1;
    }
    S=0;
}
 
cout << SPred << "\t" << sim2 << endl;
system("pause");
        return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.04.2010, 22:32     Самый редко встречаемый символ
Посмотрите здесь:

Найти наиболее редко встрещающую цифру C++
C++ Самый часто встречаемый символ в массиве
Самый самый самый простой пример рекурсии C++
самый, самый большой )) C++
Найти самую часто встречаемую и самую редко встречаемую буквы во фрагменте произвольного текста C++
C++ Определить, какой символ наиболее редко встречается в заданном массиве(шаблоны)
C++ Составить файл об информаций студентов в группе. Найти самый высокий и самый низкий уровень успеваемости студентов в группе
C++ Самый редко встречающийся элемент в массиве
C++ Определить, какой сначала был день самый тёплый или самый холодный?
C++ Найти самый часто встречающийся символ в тексте
C++ Определить сколько стоит самый дешевый и самый дорогой обед
C++ Как переставить местами самый маленький и самый большой элементы массива?

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9382 / 5432 / 916
Регистрация: 25.07.2009
Сообщений: 10,428
30.04.2010, 04:08     Самый редко встречаемый символ #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
#include <iostream>
#include <string>
#include <map>
#include <algorithm>
#include <functional>
 
class LessCnt : public std::binary_function<std::pair<char, int>, std::pair<char, int>, bool>  {
public:
    bool operator ()(const std::pair<char, int>& a, const std::pair<char, int>& b){
        return ( a.second < b.second );
    }
};
 
int main(){
    std::string buf;
    std::cout << "String: ";
    std::getline(std::cin, buf);
    if ( buf.empty() )
        return 1;
 
    std::map<char, int> map;
    for ( std::string::const_iterator i = buf.begin(); i != buf.end(); ++i )
        map[*i]++;
 
    std::cout << "The first most seldom met character is '" << (*(std::min_element(map.begin(), map.end(), LessCnt()))).first << "'" << std::endl;
 
    return 0;
}
Добавлено через 5 минут
Цитата Сообщение от CppBeginner Посмотреть сообщение
C++
1
2
3
4
for(i=0;i<32;i++) 
{ 
  for(j=1;j<32;j++) 
    if(a[i]==a[j])
Ошибка. На последней итерации получится ( a[31] == a[31] ). Или так и задумано?
Yandex
Объявления
30.04.2010, 04:08     Самый редко встречаемый символ
Ответ Создать тему
Опции темы

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