0 / 0 / 1
Регистрация: 29.09.2019
Сообщений: 117
|
||||||
1 | ||||||
Строки.Ограничение строк04.11.2019, 15:36. Показов 2862. Ответов 12
Помогите пожалуйста.Как поставить ограничение на ввод текста:
1)Если слово больше 20 символов, то программа должна выдать "Error word" и завершить работу. 2)Если в предложении больше 30 слов, то программа должна выдать "Error sentence" и завершить работу. 3)Если в предложении символы отличные от латиских букв и пробелов, то программа должна выдать "Error symbol" и завершить работу.
0
|
04.11.2019, 15:36 | |
Ответы с готовыми решениями:
12
Убрать ограничение на размер строки Получить из данных строк новую, объединив N первых символов строки S1 и N2 последних символов строки S2 Получить из строк новую, объединив N1 первых символов строки S1 и N2 последних символов строки S2 Строки. Сравнение строк |
200 / 236 / 33
Регистрация: 29.03.2019
Сообщений: 667
|
||||||||||||||||
04.11.2019, 17:51 | 2 | |||||||||||||||
Zoobbl4, вообще это делается несколько иначе. Пунктом 3 вам обозначили условие при котором текст считается некорректным. Пишем функцию на валидность введенного символа:
2
|
0 / 0 / 1
Регистрация: 29.09.2019
Сообщений: 117
|
||||||
05.11.2019, 16:11 [ТС] | 4 | |||||
Что я сделал не так
0
|
200 / 236 / 33
Регистрация: 29.03.2019
Сообщений: 667
|
|
05.11.2019, 16:23 | 5 |
Ну, грубо говоря, всё. Возможно вам будет проще если вы разберете задачу на подзадачи и станете решать их последовательно. Начните с того что весь текст надо прочитать и где-то сохранить. При этом ввод не обязательно должен быть из потока stdin. Пусть это будет любой поток ввода. Когда решите эту задачу, приступим к решению следующей. Таким образом, по кирпичику вместе и построим вашу программу.
0
|
0 / 0 / 1
Регистрация: 29.09.2019
Сообщений: 117
|
|||||||||||
05.11.2019, 17:46 [ТС] | 6 | ||||||||||
Ввод текста после знаков точки,запятой,знака вопроса и вопросительного знака программа перестает печатать
может вот так можно как то ограничить.Если Count больше 30 то мы печатаем ошибку и ретерн
0
|
200 / 236 / 33
Регистрация: 29.03.2019
Сообщений: 667
|
||||||
05.11.2019, 22:18 | 7 | |||||
Сообщение было отмечено Zoobbl4 как решение
Решение
Кроме этих, есть еще и другие знаки. В таблице ASCII кодов их 255, так что проверку придется ограничить. Проверять символы на корректность, а не на не корректность. Напишите программу, которая читает файл (любой, не только stdin) в буффер. Это будет первый шаг. После этого приступим к разбору содержимого буффера.
Добавлено через 2 минуты Пусть прототип функции чтения файла выглядит так:
Этим занимается функция isvalid.
0
|
0 / 0 / 1
Регистрация: 29.09.2019
Сообщений: 117
|
||||||
06.11.2019, 17:43 [ТС] | 8 | |||||
Можете подсказать пожалуйста как можно посчитать количество букв(символов) в тексте
0
|
200 / 236 / 33
Регистрация: 29.03.2019
Сообщений: 667
|
||||||
07.11.2019, 00:55 | 9 | |||||
Zoobbl4, вот так вы можно считать файл в буффер, а дальше необходимо выделить из него слова и провести остальные вычисления. Ввод завершается символом EOF (C^d или C^z).
Кликните здесь для просмотра всего текста
0
|
11 / 2 / 1
Регистрация: 01.11.2018
Сообщений: 42
|
|
07.11.2019, 01:20 | 10 |
zeroalef, чисто теоретически, сколько памяти будет хавать процесс, если будет 20-30-надцать фдшников с большим кол-вом символов?
0
|
200 / 236 / 33
Регистрация: 29.03.2019
Сообщений: 667
|
|
07.11.2019, 01:25 | 11 |
poppy1, вы автор, вы и считайте сколько вам потребуется памяти для работы. К чему вопрос? Чисто теоретически.
0
|
11 / 2 / 1
Регистрация: 01.11.2018
Сообщений: 42
|
|
07.11.2019, 01:27 | 12 |
zeroalef, я как то делал схожую тему, только там по строчке брал в массив. На тесте с 30ю фдшниками у меня система повисла) аир 12 года просил рестарт) mem leak зло
0
|
200 / 236 / 33
Регистрация: 29.03.2019
Сообщений: 667
|
||||||
07.11.2019, 02:15 | 13 | |||||
poppy1, возможно стоило пересмотреть алгоритм. В данном случае:
1. проблема не предвидится 2. mem leak это совсем другое Zoobbl4, в прошлом посте сплошная лажа. Вот так корректно: Кликните здесь для просмотра всего текста
0
|
07.11.2019, 02:15 | |
07.11.2019, 02:15 | |
Помогаю со студенческими работами здесь
13
Присваивания строки массиву строк Ввод первой строки массива строк Подстроки строки перенести в массив строк Сортировка строк в матрице по наибольшему элементу строки Упорядочить матрицу ее строки по неубыванию наибольших элементов строк Упорядочить строки матрицы по невозрастанию максимальных элементов строк Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |