Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > C/C++/С#


Ответ
 
Опции темы Опции просмотра
Старый 09.12.2020, 10:56   #1 (permalink)
allliiin
Новичок
 
Регистрация: 09.12.2020
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Решение задач c ++

Написать функцию, получающую строку и возвращающую
массив сумм кодов букв каждого слова. Решение задачи есть, но нужно переписать его с использованием класса string. Заранее спасибо за помощь!

Код:
#include <iostream>

int * countSumCodes(const char * s, int &n)
{
n = 0;
int inWord = 0;
int * arr = new int[strlen(s)]{0};
while (*s)
{
if (('A' <= *s && *s <= 'Z') ||
('a' <= *s && *s <= 'z') ||
('0' <= *s && *s <= '9'))
{
if (!inWord)
n++;
inWord = 1;
arr[n - 1] += *s;
}
else
{
inWord = 0;
}
s++;
}
return arr;
}

int main()
{
char str[255] = { 0 };
std::cin.getline(str, 255);
int n = 0;
int *arr = countSumCodes(str, n);
for (int i = 0; i < n; i++)
{
std::cout.width(5);
std::cout << arr[i];
}
std::cout<<std::endl;
delete [] arr;
return 0;
}
allliiin вне форума   Ответить с цитированием

Старый 09.12.2020, 10:56
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

На форуме уже встречались схожие проблемы, посмотрите

Решение задач по Pascal
Заплачу за решение задач
Решение задач в Делфи
Как найти решение задач?

Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 17:19.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.