Aspid
offline
Опыт:
8,361Активность: |
Вопрос по программированию № 2
помогите понять в чем ошибка. никак не могу.
Выравнивание строки заключается в том что между отдельными словами дополнительно вносяться пробелы так, чтобы длина строки стала равной заданной длине (предполагается что требуется длина не меньше исходной) а последнее слово строки сдвинулось к ее прваому краю. Составить процедуру выравнивания заданной строки текста. Код:
Отредактировано Avatar, 29.11.2006 в 01:17. |
28.11.2006, 22:41 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
хм, лол, а кто точки с запятой ставить будет? и еще это хреновое выравнивание - сначала нужно посчитать количество слов в строке(N), разделить количество добавляемых пробелов на N-1 и постепенно добавлять эти пробелы в строку, не забывая при этом что число пробелов может быть не целое - поэтому нужно хранить остаточное количество пробелов и добавлять их перед последним словом.
м.б. напишу код, правда за синтаксис не отвечаю - паскалем давно не пользуюсь NETRAT добавил: и не только точка с запятой, здесь ты к символу добавляешь число, а не складываешь строки NETRAT добавил: и вообще ты не добавляешь, а сравниваешь, ибо Код:
|
29.11.2006, 00:29 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Aspid
offline
Опыт:
8,361Активность: |
елы. это я просто в спешке набирал и не проверял. исправил.
Цитата:
буду благодарен. у мну что-то ничерта не получаицо. |
|
29.11.2006, 01:18 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
tysch_tysch
Работаем
offline
Опыт: отключен
|
Код:
или я туплю или ты тут присваиваешь переменной типа char переменную типа string[2] так как фактически a[i] - это символ в строке a[i]+' ' есть строка из 2-х символов |
29.11.2006, 01:36 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Aspid
offline
Опыт:
8,361Активность: |
я перебираю в цикле строку.
проверяю Код:
если символ = пробел тогда Код:
приплюсовываю исчо 1 пробел. |
29.11.2006, 02:10 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
нет, это бред, работать не будет |
29.11.2006, 02:20 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Aspid
offline
Опыт:
8,361Активность: |
почему? |
29.11.2006, 02:22 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
Естественно, синтаксические ошибки будут, думаю, сам справишься
Код:
На всякий случай, изоморфный » код на C , полностью рабочийКод:
Программа удаляет все пробелы в исходном предложении и расставляет их заново. По крайней мере так я себе представляю нормальный стретч |
29.11.2006, 03:24 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Aspid
offline
Опыт:
8,361Активность: |
спасибо! кстати синтаксис практически полностью верный. |
29.11.2006, 03:33 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
Странно... Проверь везде ли после end стоит точка с запятой и проверь индексы строк (в С начинаются с 0, а в паскале - с 1), так вроде все нормально. Печатает строку?
NETRAT добавил: Как видишь, задача не такая простая как кажется на первый взгляд, простым добавлением пробелов после слов она не решается... NETRAT добавил: ага, забыл заменить getch() = readkey |
29.11.2006, 03:37 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Aspid
offline
Опыт:
8,361Активность: |
ну точки с запятыми это фигня.
Avatar добавил: да это я сам сделал. я понял что это readkey Avatar добавил: wordslen++ хмм только вот это непонятно....это по моему не из той оперы... |
29.11.2006, 03:39 | #11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
wordslen++
равносильно inc(wordslen) равносильно increase(wordslen) равносильно wordslen:=wordslen+1 NETRAT добавил: А ты как думаешь почему язык называется С++ ? =) |
29.11.2006, 03:44 | #12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Aspid
offline
Опыт:
8,361Активность: |
точки с запятыми расставил
Код:
=)крута а я 5 минут думал почему он писал неизвестный индетификатор. спасибо щас все переделаю. |
29.11.2006, 03:53 | #13
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Wolfeg
oldfag
offline
Опыт:
23,207Активность: |
Цитата:
можно просто getch() |
|
29.11.2006, 05:00 | #14
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|