![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Jaxx |
![]()
Сообщение
#1
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 145 Пол: Мужской Реальное имя: Павел Репутация: ![]() ![]() ![]() |
Вот я опять и появился. Теперь у меня задание еще более интересное. Смысл следующий: есть текстовый файл с исходником программы на Паскале, нужно-
1) первые буквы служебных слов сделать заглавными 2) текст комментариев заменить на их номер по порядку 3) переписать текст в новый файл с удалением лишних пробелов. Я понимаю, что тут может быть только один путь решения: создать массив (или множество) служебных слов, затем считывать текст файла посимвольно (т.к. служебные слова обязательно должны быть отделены от других пробелами или знаками препинания). Я прав? С комментариями попроще: просто найти символ '{' и проверить следующий после него, и если это не '$' то удалить все символы начиная с этого до символа '}'. Удаление пробелов еще проще. Но с первой частью задания у меня небольшие трудности. Решайте! :yes: В следующий раз давайте более подходящий заголовок -------------------- - Дорогие девушки! У вас сухая кожа? Редкие волосы? Проблемы с фигурой? Приходите к нам! У нас темно и мы пьяные.
|
![]() ![]() |
Altair |
![]()
Сообщение
#2
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 4 825 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
Ну раскритиковали
![]() Я шаблон для рассуждений дал ![]() такие элементы как BegIn легко устраняются путем изменения кода. (проверять на вхождениеодного словав другое). Так что разбивать на слова необязательно ![]() Цитата Во всех зарезервированных словах, записанных только маленькими буквами". А если "FUNCTION a: integer", то что будет с FUNCTION ? Ну для этого добавить в программуфункцию: Код Function UpStr(S:String):String; {перевод строки в верхний регистр} Var I:Byte; Begin For I:=1 To ORD(S[0]) Do Begin Case S[I] Of 'a'..'z':S[I]:=Chr(Ord(S[I])-$20); 'а'..'п':S[I]:=Chr(Ord(S[I])-$20); 'р'..'я':S[I]:=Chr(Ord(S[I])-$50) End End; UpStr:=S End; И вот эти строчки: Код for i:=1 to 51 do if pos(zar[i],s)<>0 then begin n:=pos(zar[i],s); s[n]:= upcase(s[n]); Заменитиь на: Код for i:=1 to 51 do if pos(UpStr(zar[i]),ipstr(s))<>0 then begin n:=pos(Upstr(zar[i]),upstr(s)); s[n]:= upcase(s[n]); ![]() Хотя возникает вопрос -если уже в большом регистре слово, зачем первую букву поднимать? ![]() -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
![]() ![]() |
![]() |
Текстовая версия | 2.09.2025 19:02 |