IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Помогите с программкой, Отсортировать Интернет ссылки
777
сообщение 27.01.2010 0:19
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 19
Пол: Мужской
Реальное имя: Сергей

Репутация: -  0  +


Нужно составить программу во FREE Паскале, которая из текстового файла забирает все имеющиеся в нём Интернет ссылки, и выводит их на экран + сохраняет их в другой текстовый файл! Чесно скажу, я учусь на заочном, второй семестр на занятиях полностью отсутствовал из за работы, и сейчас на работе такой завал, сто вникать в Паскаль просто нет возможности! Пожалуйста, помогите! Что такое программа Паскаль я узнал четыре дня назад, на лабораторной работе по информатике...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
volvo
сообщение 1.02.2010 22:23
Сообщение #2


Гость






"Ну-с, приступим..." (С)

Итак, когда я пишу программу, мне совсем не обязательно реализовывать какие-то вещи, которые кто-то (возможно - разработчик компилятора, а возможно - и я сам) уже реализовал. Я могу просто взять готовый модуль, подключить его к своей программе, и пользоваться всем тем, что для меня предоставили разработчики этого модуля. Вот для того, чтобы подключить и использовать сторонние модули, и присутсивует в программе раздел Uses:
uses // описывается блок Uses, в котором перечисляются все используемые модули
classes, // здесь описаны классы, в частности, TStringList, который я использовал
regexpr, // Это - библиотека для работы с регулярными выражениями
sysutils, // Здесь реализованы многие системные функции, в частности функция, StringReplace
strutils; // Это - библиотека работы со строками, но ее можно не подключать, без нее тоже будет работать.

Теперь о {$mode objfpc}... Когда я работаю в FPC, у меня есть возможность создавать приложения, совместимые со старым досовским Турбо-Паскалем, с Дельфи, или написанные собственно на Object Pascal-е, что позволяет мне пользоваться всеми средствами этого языка. Можно, конечно, задавать режим совместимости в самой IDE, но я предпочитаю всегда делать это явно, чтобы любой, кто берет программу, не сталкивался с тем, что у него программа не компилируется, потому что у него (по умолчанию, или по забывчивости) стоит другой режим. Вот таким образом я уведомляю компилятор, что программа написана на Объектном Паскале.

Ну, а дальше - описания переменных, которые где-то ниже по тексту программы используются. В Паскале (в отличие от других языков) так принято - переменные описываются перед блоком инструкций (или как это перевести на русский, statements) в виде имя_переменной: тип_переменной
var
re: TRegExprEngine; // переменная re типа TRegExprEngine (предназначена для работы с регулярными выражениями);
s, subs, sLink, f_n: AnsiString; // Все перечисленные переменные - строковые;
// Ok - логическая (булева) переменная, используется ниже
// для хранения признака успеха определенной операции, я написал в комментариях
ok: boolean;

// Еще 2 целочисленных переменных
index, len: longint;

// А это - 2 переменные для хранения списков строк (в комментариях, опять же, расписано,
// как именно они ИСПОЛЬЗУЮТСЯ. А вот тут они ОПИСЫВАЮТСЯ)
sL_In, sL_Out: TStringList ;
Понимаешь, в чем дело? До двоеточия - вообще не обращай внимания... Я когда-то давным-давно спросил у своего преподавателя, "А почему я называю переменную именно Len? То, что она типа LongInt - понятно, но почему Len???" На что он мне ответил: "А как ты думаешь, почему я назвал своего сына Алексеем? Откуда я знаю, что он должен быть именно Алексеем, а не Иваном и не Сергеем? Так вот это мой сын, и я даю ему имя. Точно так же, как это твоя переменная, и ты ее называешь как хочешь."

До сих пор помню это объяснение... smile.gif

Ну что, хоть что-то их того, что я тут написал, стало понятнее?

Цитата
я ооочень постараюсь продержаться до AND.а!!!
До чего? smile.gif Там End вообще-то smile.gif And - кое что другое, не путай...
 К началу страницы 
+ Ответить 

Сообщений в этой теме
777   Помогите с программкой   27.01.2010 0:19
volvo   Вот в FPC это делается элементарно, как раз:{...   27.01.2010 11:55
777   Огромное спасибо!!! Мне это поможет ли...   27.01.2010 15:09
777   Записал листинг в программу, всё как Вы написали, ...   27.01.2010 23:39
777   Зачем же Вы так резко, я ведь не в претезии написа...   28.01.2010 0:10
Lapp   Зачем же Вы так резко, я ведь не в претезии написа...   28.01.2010 20:32
777   Я ни в коем случае не хотел никого обвинять, и в м...   29.01.2010 0:22
Lapp   А на данный момент я исправил то что мне было сказ...   29.01.2010 1:12
777   Послушай, [b]777, к сожалению, единственный спосо...   29.01.2010 22:15
volvo   У меня НЕТ такого идентификатора. Есть Copy Такого...   27.01.2010 23:47
volvo   Извини, не получилось ЧТО? Выделить текст программ...   29.01.2010 4:06
777   Извини, не получилось ЧТО? Выделить текст програм...   29.01.2010 22:29
volvo   А ты это условие ПРИВЕЛ раньше? Здесь что, форум т...   29.01.2010 22:28
Lapp   777, пожалуйста, используй тэги при публикации код...   29.01.2010 22:41
777   777, пожалуйста, используй тэги при публикации ко...   29.01.2010 22:52
Lapp   Я сейчас нажал код (#), но честное слово, я не пон...   29.01.2010 23:09
777   777, пожалуйста, используй тэги при публикации ко...   29.01.2010 23:23
Lapp   по поводу <непонимания простых вещей> - поче...   29.01.2010 23:44
777   Поверь мне, иногда нежелание пошевелить лишний ра...   31.01.2010 19:35
Lapp   довести дело до конца, если получится, то попытать...   1.02.2010 1:04
777   Сергей, если нужна помощь в понимании или обучени...   1.02.2010 6:55
volvo   То, что ты говоришь - еще дальше от правды. Чтобы ...   1.02.2010 9:42
777   То, что ты говоришь - еще дальше от правды. Чтобы...   1.02.2010 10:29
volvo   Смотри, я прокомментировал каждую строку своего ко...   1.02.2010 11:25
777   Смотри, я прокомментировал каждую строку своего к...   1.02.2010 12:23
volvo   Если возникают вопросы - уже хорошо... Гораздо хуж...   1.02.2010 13:07
Lapp   Если возникают вопросы - уже хорошо... Гораздо хуж...   1.02.2010 21:12
777   Все вопросы, которые будут - задавай. Начнём с...   1.02.2010 21:43
volvo   "Ну-с, приступим..." (С) Итак, когда я ...   1.02.2010 22:23
777   Ну что, хоть что-то их того, что я тут написал, с...   1.02.2010 22:39
777   Добрый день всем!!! Это опять я... use...   2.02.2010 12:42
Lapp   Правильно ли я понял, что вот эти модули - есть, к...   2.02.2010 20:52
777   Перед использованием модуля ты должен прочитать е...   2.02.2010 21:23
Lapp   Как и где найти описание переменных , модулей и фу...   2.02.2010 23:20
777   У тебя учебник есть? Какой? Да НЕТ конечно...   3.02.2010 8:56
Unconnected   Посмотри здесь: Литература , там по паскалю есть к...   3.02.2010 13:42
Гость   Вот с этого и надо было начинать! (Книжки)   6.02.2010 13:12
Гость - ZetVV   Volvo, Laap! Удивляюсь Вашей выдержке! :g...   6.02.2010 13:27


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 8.08.2025 7:26
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"