- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
void two(string str, int *mstr,int l) //Замена цифр в строке
{
string base[10] = { "ноль","один","два","три","четыре","пять","шесть","семь","восемь","девять" }; //Строки для замены
int i,j,t;
for (i = 0;i < l;i++)
{
str.insert(mstr[i]+1, base[atoi(&str[mstr[i]])]); //Вставка после числа в строку
t = base[atoi(&str[mstr[i]])].length(); //Смещение последующих чисел в строке
str.erase(mstr[i], 1); //Удаление цифры в строке
for (j = i; j < l;j++) //Новые позиции чисел в строке
{
mstr[j] += t-1;
}
}
cout << "Изменённая строка: " << str << endl;
}
По заданию требовалось обработать символьную строку так, чтобы цифры записывались числительными. В этой функции идет замена цифр в строке. Массив str - строка символов, mstr - int массив, куда записывается позиция числа в строке (т.е в строке aaaa1aaa mstr[0]=4), а l - количество чисел в строке.
Код не мой. Это ад. Неработающий.
Сидел, ржал.
rotoeb 07.11.2020 09:25 # +2
rotoeb 07.11.2020 17:38 # −3
bormand 07.11.2020 12:23 # −1
Если там 2 цифры подряд, к примеру "11", то atoi вернёт 11 и будет вылет за границу массива base. Не надо так.
Можно просто base[str[mstr[i]] - '0'] раз мы уже знаем что там цифра
ShadowCat 07.11.2020 13:11 # −1
rotoeb 07.11.2020 13:12 # −1
Вообще не понимаю тех, кто упорно сидит на C/C++ - откровенно НЕДОРАБОТАННОМ языке.
ShadowCat 07.11.2020 13:24 # −1
rotoeb 07.11.2020 13:27 # −1
ShadowCat 07.11.2020 13:34 # −1
guest6 07.11.2020 16:52 # 0
ShadowCat 07.11.2020 17:07 # −1
bormand 07.11.2020 17:21 # −1
Там только по координатам замена, емнип.
j123123 07.11.2020 23:52 # −1
А что, разве бывает специальность "программист на C++" ? Это ж примерно как специальность "откручиватель гаек".
bootcamp_dropout 07.11.2020 23:56 # +3
Fike 07.11.2020 23:59 # −1
guest6 08.11.2020 00:07 # −1
* по языку
* по шаблонам
* по изучению стандарта.
j123123 08.11.2020 00:27 # −1
guest6 08.11.2020 00:30 # −1
bootcamp_dropout 08.11.2020 02:53 # −1
какой сленг )))
guest6 08.11.2020 00:06 # −1
Fike 08.11.2020 00:07 # −1
Xepyc_DJIuHyc 08.11.2020 06:44 # −1
guest6 07.11.2020 13:32 # 0
ShadowCat 07.11.2020 13:36 # 0
rotoeb 07.11.2020 13:44 # −4
guest6 07.11.2020 17:28 # −1
rotoeb 07.11.2020 15:41 # −3
MAKAKA 07.11.2020 17:29 # −1
bormand 08.11.2020 00:05 # −1
guest6 08.11.2020 00:07 # −1
нельзя завязываться
MAKAKA 07.11.2020 17:29 # −1
я за
rotoeb 07.11.2020 17:37 # −1
bormand 07.11.2020 18:06 # −1
Fike 08.11.2020 00:03 # −1