Помогите пожалуйста со следующими вопросами: 1)Как переводить из string в integer и наоборот в Turbo Pascal?(не дельфи). 2)Мне нужен set of string[2] но так обявлять как оказалось нельзя. Мне это нужно для того чтобы использовать оператор in. Мог бы создать массив но неизвестно заранее сколько будет в нем элементов, и проверять это не оптимально и надо писать цикл что бы проверить содержится ли новый элемент в массиве или нет. Что делать? Что посоветуете делать? Как создать динамический массив в TP7? Но все равно было бы лучше если это было множество! Спасибо заранее!!!
Добрый день, dude! {перевод из строки в число } Val(s:string;var v:integer{real,и тд};code:integer); {code- если эта переменная равна 0, то все ништяк! если нет, то указан недопустимый символ в строке ( всмысле его номер) } {перевод из числа в строку } Str(x:integer{real,и тд}[:w[:d]];var s:string); {w- необязательный параметр,сколько позиций до запятой; d- необязательный параметр,сколько позиций запятой;}
Ответ отправлен: 07.04.2003, 13:47 Отправитель: Byter Отвечает Sensey
Здравствуйте, dude! А справка зачем? 1) val(var s,v,err) s-строка v-целый или вещественный err-код ошибки. 0 - ок, иначе номер символа, где очибка(не цифра или точка) 2)Множество реализуется через биты... Кстати достаточно медленно. А динамический массив - через указатели. объявляешь тип PData=^string[2]; TArray = array [1.16380] of PData;{макс размер 64к} PArray=^TArray; Потом выделяешь сколько над0 памяти и работаешь... Если не совсем понятно - пиши еще, помогу.
Ответ отправлен: 07.04.2003, 11:56 Отправитель: Sensey Отвечает Dark_Lord
Приветствую Вас, dude! 1) val(str1,intgr1,flag); flag=флаг ошибки, если такая была! и str(int1,str1); Ответ отправлен: 08.04.2003, 22:15 Отправитель: Dark_Lord Отвечает Ayl
Добрый день, dude! 1. Для этого предназначены процедуры: Procedure Val (S; var V; var Code : Integer); - переводит строку S в число V. В случае ошибки преобразования в переменную Code заносится позиция в строке, в которой обнаружена ошибка. Procedure Str (X [: Width [: Decimal]]; var S : string); - переводит число X в строку. Возможно указание ширины поля (Width) и кол-ва десятичных знаков после запятой (Decimal). 2. Забудь про множества. Конечно, приятно с ними работать, но множества могут быть построены только на ordinal type и не более чем с 256 элементами. Что-нибудь тебе посоветовать я пока не могу, потому что не понимаю, какая именно стоит перед тобой задача. Напиши по-подробнее, может что и придумаю. Ответ отправлен: 07.04.2003, 12:43 Отправитель: Ayl Отвечает Tigran K. Kalaidjian
Добрый день, dude! Аналог StrToInt: Val(strin, num, zaglushka); процедура преобразует строку strin в число num, в zaglushka помещается результат операции: 0-успешно другое-номер первого символа с ошибкой Аналог IntToStr: Str(num,strin); Ответ отправлен: 08.04.2003, 18:08 Отправитель: Tigran K. Kalaidjian
Форма отправки вопроса
Внимание!
Форма может работать некорректно в почтовых программах "Microsoft Outlook"
и "Microsoft Outlook Express". В программе The Bat!
подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте,
что в некоторых браузерах могут стоять запреты на открытие других
окон, а также "чрезмерное" кэширование данных,
при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet
Explorer 5.0+ или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.