0 / 0 / 0
Регистрация: 07.12.2018
Сообщений: 7
|
|
Инверсия предложения в С++07.12.2018, 18:45. Показов 2436. Ответов 16
Добрый вечер!
Помогите, пожалуйста, решил для себя выучить язык С++. Выполняю следующее задание. (Не получается написать рабочий код): Вводим предложение из n-слов (количество слов и символов в них не ограничено - МАССИВ ДИНАМИЧЕСКИЙ!). На выводе нужно получить то же предложение, но со случайным порядком слов + То же задание, но порядок слов в предложении обратный ...................... Пробовал выполнить, но получалось только изменить порядок символов внутри предложения (привет - тевирп)
0
|
07.12.2018, 18:45 | |
Ответы с готовыми решениями:
16
Разделить текст на предложения, предложения на слова. (через двумерный массив строк)
|
![]() 1355 / 854 / 365
Регистрация: 26.02.2015
Сообщений: 3,806
|
|
07.12.2018, 18:48 | |
Зачем?
Добавлено через 1 минуту Уверен, что ты решил выучить C++? И вообще, что это ты решил, а не твой преподаватель. Для чего использовать динамическую память, когда есть хорошие абстракции в виде <string> и <algorithm>?
0
|
0 / 0 / 0
Регистрация: 07.12.2018
Сообщений: 7
|
|
07.12.2018, 18:56 [ТС] | |
Добавлено через 3 минуты
Ок, раскусил) Преподаватель захотел, чтобы я его выучил) Но я сам по себе парень не глупый, но с уклоном в инженерную сторону, с программированием проблемы есть Преподаватель хочет именно через решение задачи именно динамический массив . Но если есть любые другие предложения по решению - буду очень благодарен)
0
|
![]() 119 / 94 / 35
Регистрация: 18.12.2012
Сообщений: 654
|
|
07.12.2018, 19:13 | |
Если Ваш преподаватель хочет, чтобы Вы вводили слова в уже созданный динамический массив, то стоит у него уточнить один моментик - как он хочет, чтобы ему это реализовали, учитывая, что дин. массив создаётся с фиксированным размером, который ещё неизвестен заранее перед вводом слов ?
Можно, конечно, постоянно, с каждым словом, пересоздавать его и копировать туда-сюда все данные, но Вы же понимаете, что это некомильфо ?
0
|
![]() 119 / 94 / 35
Регистрация: 18.12.2012
Сообщений: 654
|
|
07.12.2018, 19:17 | |
Вообще, к слову, тот-же string основан на принципе динамического выделения памяти под строки. При манипуляциях с ним, память всегда перевыделяется, а данные копируются.
Так что, можете делать на string и смело преподу заявлять, что у Вас используется динамическое выделение памяти ![]()
0
|
![]() 1355 / 854 / 365
Регистрация: 26.02.2015
Сообщений: 3,806
|
|
07.12.2018, 19:22 | |
0
|
![]() 1355 / 854 / 365
Регистрация: 26.02.2015
Сообщений: 3,806
|
|
07.12.2018, 19:25 | |
Я спрашиваю, строки можно хранить не в массиве, а в списке.
0
|
0 / 0 / 0
Регистрация: 07.12.2018
Сообщений: 7
|
|
07.12.2018, 19:28 [ТС] | |
Nishen
ваши вопросы довольно сложны для меня, не очень понимаю, о чем вы в принципе) Говорю же, что я не программист) Моя надежда только на Вас!=) Если кто-то поможет - буду просто боготворить=) Вообще, буду ооооочень рад любому решению проблемы!
0
|
![]() 119 / 94 / 35
Регистрация: 18.12.2012
Сообщений: 654
|
|
07.12.2018, 19:35 | |
Puchlyak, если преподаватель от Вас требует определённого задания, то Вы должны будете по нему ответить на любой вопрос препода. Если мы напишем Вам кусок программы, Вы сможете это сделать ?
Да и вообще, сможете адекватно определить, то ли вообще Вам написали ?
0
|
0 / 0 / 0
Регистрация: 07.12.2018
Сообщений: 7
|
|
07.12.2018, 19:42 [ТС] | |
alkl
Поверьте, этот преподаватель нам сам ничего объяснить не может, я очень сомневаюсь в его способностях) А вообще, если у меня будет скрипт, я в нем детально разберусь, что и к чему) По поводу проверки правильности - как минимум я могу вбить этот код и проверить на работоспособность))
0
|
![]() 119 / 94 / 35
Регистрация: 18.12.2012
Сообщений: 654
|
|
07.12.2018, 19:51 | |
Тогда напишите какую-нибудь билеберду, всё равно не разберётся
![]() Речь не о работоспособности. Вам напишут, будет она вполне работоспособна, но на каком-нибудь списке или векторе. Препод посмотрит и спросит "Что это ? Где тут дин. массив ?". Что будете отвечать ? ![]() Добавлено через 3 минуты PS: Вашу задачу чисто на дин. массиве (одном !) не реализовать. Прежде, чем выделить под него память, нужно знать его размер. А размер неизвестен, т.к. слова ещё никакие не вводили. Получается, где то эти слова нужно хранить, чтобы потом в дин. массив засунуть. Но это уже будет противоречить Вашему заданию из первого поста.
0
|
0 / 0 / 0
Регистрация: 07.12.2018
Сообщений: 7
|
|
07.12.2018, 19:51 [ТС] | |
Использую Ваше экспертное мнение,указанное ниже, как аргумент) И объясню, по какой причине мое решение тоже уместно) Найду всю возможную информацию по всем тем командам в коде, что прописал
0
|
![]() 119 / 94 / 35
Регистрация: 18.12.2012
Сообщений: 654
|
||||||
07.12.2018, 21:36 | ||||||
![]() Решение
Перевёртыш слов. Используется список.
0
|
![]() 119 / 94 / 35
Регистрация: 18.12.2012
Сообщений: 654
|
|
08.12.2018, 12:02 | |
Не особо. Нужно задействовать рандом и каким то образом, выдёргивая слова из списка, помечать их уже выведенными.
На ум пока приходит создание массива, в котором нужно хранить номера выведенных слов и с ними постоянно сравнивать рандомное значение. Кстати, можно заюзать динамический массив ![]() Можно ещё ассоциированный массив прикрутить, но там вообще мозг закрутится в баранку ![]()
0
|
08.12.2018, 12:02 | ||||||
Помогаю со студенческими работами здесь
17
Вывести слово с номером K заданного предложения, считая с конца предложения
Определить, имеется ли в заданном тексте слово первого предложения, которое входит в последующие предложения Удалить из предложения все числа, состоящие из одинаковых цифр; сформировать массив из чисел предложения Искать еще темы с ответами Или воспользуйтесь поиском по форуму:
|
|
Новые блоги и статьи
![]() |
||||
Агрегаты и сущности в DDD микросервисах
Javaican 10.04.2025
Разработка современных программных систем часто приводит на распутье: монолит или микросервисы? Даже при выборе микросервисной архитектуры многие команды сталкиваются с проблемой правильного. . .
|
Многопоточность в C#: Task и параллельное программирование
UnmanagedCoder 10.04.2025
Современные процессоры уже давно перестали наращивать тактовую частоту в пользу увеличения количества ядер. Это создало интересную ситуацию: разработчики, привыкшие к последовательному. . .
|
Линейное решение нелинейной задачи будет применено как метод обработки данных из double buffering. Формулы от LM конечно с ошибками.
Hrethgir 10.04.2025
В продолжение
Эта LM дала ответ похожий на нормальный.
В комментриях мой комментарий - похоже она ошиблась с выведением итоговой формулы, но остальные проверю.
Assistant
qwen2. 5-14b-instruct
. . . .
|
Переменные в Python
py-thonny 10.04.2025
Переменная в программировании — это символическое имя, связанное с областью памяти, в которой хранится значение. Она позволяет получать доступ к данным через понятные человеку идентификаторы, а не. . .
|
Многопоточность в C#: Task и асинхронные операции
UnmanagedCoder 10.04.2025
Многопоточность позволяет выполнять несколько операций одновременно, что важно для решения двух основных задач: повышения скорости выполнения вычислительно-сложных операций и сохранения отзывчивости. . .
|
Линейное решение не линейной задачи (емкость вычислений в сравнении с традиционными решениями пока не определена).
Hrethgir 10.04.2025
В рамках предстоящих вычислений пришлось (да, я тоже знаю про корень числа, и про степеня, и прочие теоремы, но. . . ) найти способ нахождения отношения двух углов. . . .
|
Запуск контейнеров Docker на ARM64
Mr. Docker 09.04.2025
Появление таких решений, как Apple M1/ M2, AWS Graviton, Ampere Altra и Raspberry Pi, сделало использование ARM-систем обыденностью для многих разработчиков и DevOps-инженеров. При этом Docker,. . .
|
Vue SFC компонент на PHP с Fusion
Jason-Webb 09.04.2025
PHP на сервере и JavaScript на клиенте — классическое сочетание, которое, несмотря на свою эффективность, создает определенный когнитивный диссонанс при разработке. В этом контексте появляются. . .
|
TypeScript vs JavaScript: Отличия и когда что использовать
Reangularity 09.04.2025
JavaScript появился в 1995 году как творение Брендана Эйха и быстро стал основой интерактивности в вебе. За свою историю он прошел путь от простого языка для манипуляций с DOM до полноценной. . .
|
Подключение Kafka к Elasticsearch
Codd 09.04.2025
Apache Kafka и Elasticsearch — две мощные технологии, которые при совместном использовании создают эффективную платформу для обработки и анализа данных в реальном времени. Kafka, выступая в роли. . .
|