Другие языки программирования и технологии

Помогите составить программу на Турбо Паскале! ПЛИЗЗ!!

Задан текст. Выяснить, является ли этот текст десятичной записью целого числа.
тут мой вариант решения с исходниками

http:\\resheno.blogspot.com\2009\06\blog-post.html
Хожиакбар Косимов
Хожиакбар Косимов
5 701
Лучший ответ
Доброго времени суток.

Все значительно проще. Нужно попытаться преобразовать эту строку в число с помощью процедуры Val. Вот из справки по этой процедуре

Val (процедура)
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀

Преобразовывает строковое значение в его
числовое представление.

Объявление:
Procedure Val(S; Var V; Var Code : Integer);

Где:
S - переменная со строковым типом. Должна представлять
последовательность символов, формирующих знаковое целое число.
V - переменная типа Real или Integer
Code - переменная типа Integer

Режим:
Windows, Real, Protected

Замечания:
Преобразовывает строковое значение (S) в его
числовое представление, как это происходит при
чтении из текстового файла с помощью Read.
Code - позиция, в которой произошла ошибка при
преобразовании, или нуль, если ошибки не было.

Отсюда и решение. Преобразуете свою строку в число и проверяете возвращаемый параметр Code. Если он нулевой, то в строке была запись числа. Другое значение будет говорить об ошибке.

Удачи!

2Соколовский Дмитрий: Нельзя использовать в качестве идентификаторов переменных имена функций и процедур (Str). Во вторых, цикл должен начинаться с 1, т. к. в нулевом байте строки хранится ее длина. И, наконец, чтобы получить конкретный символ строки не обязательно вызывать функцию Copy. Можно и по индексу символа в строке.

for i:=1 to Length(S) do
if S[ i ] in ['0'..'9'] then...
Тагир Мамлеев
Тагир Мамлеев
59 613
Я бы тебе написал весь код, но я с мобильного. . если тебе не срочно то 22 второго числа смогу написать весь код, если что пиши на мыло
Vitaliy V
Vitaliy V
1 194
Николай Начаров Мне завтра уже сдавать нужно!! а как было бы хорошо!! ээхх!!
если cтрока без пробелов и прочего, только число:
label exit, badformat;
var str, sym: string

begin
for i = 0 to length(str)
begin
sym = copy(str, i, 1);
if (sym <> '0') or (...) or ((sym <> '-') and (i <>0)) then goto badformat;
end;
writeln('yes');
goto exit;
badformat:
writeln('no');
exit:
readln;
end