#include <iostream>
#include <string>
using namespace std;
wstring more_often(const wstring&, const wchar_t, const wchar_t);
int main() {
wcout.imbue(locale(".866"));
wcin.imbue(locale(".866"));
wcout << L"Введите строку: ";
wstring str;
getline(wcin, str);
wcout << L"Введите первую букву: ";
wchar_t a = wcin.get();
wcin.sync();
wcout << L"Введите вторую букву: ";
wchar_t b = wcin.get();
wcin.sync();
wcout << more_often(str, a, b) << endl;
wcin.get();
}
wstring more_often(const wstring& src, const wchar_t a, const wchar_t b) {
long n = 0;
wstring::size_type size = src.size();
for (wstring::size_type i = 0; i < size; ++i) {
if (src.at(i) == a) ++n;
else if (src.at(i) == b) --n;
}
wstring result = L"Чаще встречается: ";
if (n > 0) result += a;
else if (n < 0) result += b;
else result = L"В равном количестве";
return result;
}
Другие языки программирования и технологии
Подскажите пожалуйста новичку в C++)
Арт Азия Артазия
спасибо)
#include "string.h"
#include "stdafx.h"
#include < iostream >
using namespace std;
int main()
{
int a = 0, b = 0;
char ac, bc, c[];
cout << "Введите строку: ";
gets(c);
for (int i = 0; i < strlen(c); i++)
{
if (i == 0) ac = c[i];
if (c[i] == ac) a++;
else
{
if (i - a - b == 0) bc = c[i];
b++;
}
}
cout << (a > b) ? ac : bc;
return 0;
}
#include "stdafx.h"
#include < iostream >
using namespace std;
int main()
{
int a = 0, b = 0;
char ac, bc, c[];
cout << "Введите строку: ";
gets(c);
for (int i = 0; i < strlen(c); i++)
{
if (i == 0) ac = c[i];
if (c[i] == ac) a++;
else
{
if (i - a - b == 0) bc = c[i];
b++;
}
}
cout << (a > b) ? ac : bc;
return 0;
}
Абдувахоб Алимбаев
За точность не отвечаю, т. к. делал прямо здесь с телефона, без компилятора.
Арт Азия Артазия
Вылетают две ошибки, но все равно спасибо)
можно сортирнуть и просмотреть. (O(n*log(n)))
Глеб Теньков
хотя если символ кодируется 1 байтом, можно сразу создать массивчик из нулей на каждый символ (256-немного) и решить все за O(n)
Создаёшь массив из строки, проходишься по нему циклом, создавая массив букв и кол-во встречающихся, потом выводишь две самые большие по кол-ву))
Сергей Горошко
И да, я почти не знаком с С++, просто алгоритм составил)))
Похожие вопросы
- подскажите пожалуйста новичку что такое MySQL база данных как она используется для сайтах? спасибо заранее
- Подскажите пожалуйста С ++ и C# это один язык программирования, или они совершенно разные?
- Подскажите, пожалуйста. Язык C++
- Подскажите пожалуйста, почему уменьшается память на дисках C и D
- Подскажите пожалуйста самые лучшие учебники и программы для изучения C,C++.
- помогите новичку в c#. не понимаю
- Нужна помощь новичку по C++
- Подскажите пожалуйста хорошую книгу по програмированию (для новичка)
- подскажите пожалуйста литературу по изучению програмирования для новичков
- Подскажите стоящий учебник по C++