Подсчитать сумму мест, на которых в словах текста стоит заданная буква.С++

Помогите пожалуйста с написанием программы на c++, второй день мучаюсь.

Подсчитать сумму мест, на которых в словах текста стоит заданная буква. Ввод предложения и символа должны быть с клавиатуры.

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

К примеру: съешь ещё этих мягких французских булок, да ещё выпей чаю

если выбрать е то:
е упоминается:
на позиции 0 2 раза
на позиции 2 1 раз
на позиции 3 1 раз
и оформить это так:

[0]:2
[2]:1
[3]:1

Пробовал разные варианты, но каждый раз что-то не получается. Сейчас остановился на этом, но и тут есть проблемы (хотя по сути тут ещё ничего и нет):

#include <iostream>
#include <string>

using namespace std;

int main() {
    setlocale(LC_ALL, "ru");

    string x;
    string c;
    cin »x;
    (cin »x).get();
    cin »c;
    (cin »c).get();

    for (int i = 0; i < x.length(); i++) {
        cout «x.find(c);
    }
}

В общем ступор, плиз хелп.


Ответы (1 шт):

Автор решения: SmellyNS
int s = 0;
for (int i = 0; i < x.length(); i++) if (x[i] == c) s += i;
// s - ответ на вопрос задачи
→ Ссылка