Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на языке Pascal


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Pascal

Выпуск № 138
от 09.03.2006, 07:42

Администратор:Калашников О.А.
В рассылке:Подписчиков: 153, Экспертов: 39
В номере:Вопросов: 1, Ответов: 5


Вопрос № 36711: Здравствуйте экспеты! Мне нужен справочник по процедурам и функциям Turbo Pascal 7 Напомните мне пожалуйста функцию перевода строки символов в число. Т.е. строку: var str : string[6]; После работы с этой строко мне нужно получить шест...

Вопрос № 36.711
Здравствуйте экспеты!
Мне нужен справочник по процедурам и функциям Turbo Pascal 7
Напомните мне пожалуйста функцию перевода строки символов в число.
Т.е. строку: var str : string[6];
После работы с этой строко мне нужно получить шестизначное число integer допустим.
Отправлен: 04.03.2006, 07:41
Вопрос задал: Терсков Алексей Николаевич (статус: Посетитель)
Всего ответов: 5
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Ерёмин Андрей
Здравствуйте, Терсков Алексей Николаевич!
Эх, давно Pascal изучал... По-моему, это функция val().
---------
Нет правила без исключений. Правило без исключений - исключение из правил.
Ответ отправил: Ерёмин Андрей (статус: Профессор)
Отправлен: 04.03.2006, 07:48

Отвечает: Diman_A
Здравствуйте, Терсков Алексей Николаевич!
------------------------------------------------------------
Процедура Val
------------------------------------------------------------
Функция: Преобразует строковое значение в его численное
представление.
Описание: Val(s : string; v; var код : integer)
Примечания: Параметр s представляет собой выражение
строкового типа. Параметр v является переменной целого или
вещественного типа. Параметр "код" - это переменная целого
типа, которая формирует все число со знаком в соответствии с
синтаксисом, показанном в разделе "Числа" в Главе 1. Функция
Val преобразует строку s в ее численное представление и сох-
раняет результат в v. Если где-либо в строке встречается не-
допустимый символ, то его номер сохраняется в параметре
"код". В противном случае этот параметр равен нулю.
В зависимости от состояния {$R} и типа параметра v
функция Val по-разному выполняет проверку диапазона.
Если состояние проверки диапазона установлено, то есть
задано {$R+}, то выражения, выходящие за границу диапазона,
всегда будут генерировать ошибку времени выполнения.
Если состояние проверки диапазона сброшено, то есть за-
дано {$R-}, то выражения, выходящие за границу диапазона,
будут вызываеть эффект, зависящий от их типа. Если v имеет
тип real или longint, то значение v становится неопределен-
ным и в параметре "код" возвращается ненулевое значение. Для
любого другого числового типа в параметре "код" возвращается
нулевое значение, а v будет содержать результат вычислений с
переполнением (если предположить, что строковое значение по-
падает в диапазон представления длинного целого).
Таким образом, процедуре Val переменную длинного целого
типа (longint) и перед тем, как присваивать полученное зна-
чение, выполнять проверку диапазона. Например:
{$R-}
Val('65536', LongIntVar, Code);
if (Code <>0) or
(LOngIntVar < 0) or (LongIntVar > 65535) then
... { ошибка }
else
WordVar := LongIntVar;
Ограничения: Предшествующие пробелы должны быть удале-
ны.
Пример:
var
i, code : integer;
begin
{ получить текст из командной строки }
Val(ParamStr(1), i, code);
{ ошибка при преобразовании в целое значение? }
if code <> 0 then
Writeln('Ошибка на позиции :', code);
else
Writeln('Значение = ', i);
end.
Ответ отправил: Diman_A (статус: 6-ой класс)
Отправлен: 04.03.2006, 09:00
Оценка за ответ: 5

Отвечает: Whisper
Здравствуйте, Терсков Алексей Николаевич!
есть 2 функции val() и str()
первая строку в число, вторая переводит число в строку, параметры посмотри в стандартной справке, в паскале

---------
все тленно
Ответ отправила: Whisper (статус: 5-ый класс)
Отправлен: 04.03.2006, 10:01
Оценка за ответ: 5

Отвечает: Boriss
Здравствуйте, Терсков Алексей Николаевич!
Вот то, что начал приводить в удобный вид - самаая полная справка по Turbo Pascal, Фаронова учебник толстенный есть - именно это, есть еще электронный учебник не самый плохой
Вывод числа в шестнадцатеричном формате - возможен с помощью немного муторной Format (в BP.exe есть в основных, а в Turbo.exe нужно модуль Objects подключать)

Прикреплённый файл: Загрузить >>
Срок хранения файла на сервере RusFAQ.ru составляет 30 суток с момента отправки ответа.
---------
Вывод - то место в тексте, где вы устали думать

Ответ отправил: Boriss (статус: Профессор)
Отправлен: 04.03.2006, 10:29

Отвечает: sir henry
Здравствуйте, Терсков Алексей Николаевич!
1. Справочник можно взять, например, здесь:
http://www.borlpasc.narod.ru
Там вообще документации много.
2. Функции нет, есть процедура:
procedure Val(S; var V; var Code: Integer);
Конвертирует числовую строку S в число V (того типа, которым Вы объявите V), Code - сюда заносится код ошибки, если конвертация по каким-либо причинам не удалась.
Ответ отправил: sir henry (статус: Академик)
Отправлен: 04.03.2006, 13:03
Оценка за ответ: 5


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.17 (beta) от 06.03.2006
Яндекс Rambler's Top100

В избранное