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

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

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

> Является ли заданная строка правильной записью целого числа?, Помогите пожалуйста с задачей...
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 4
Пол: Женский
Реальное имя: Ксюша

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


Определить, является ли заданная строка "правильной записью целого числа" (возможно со знаком).

Вот как ее решила я:

Код
program laba;
uses crt;
var
s:string;
w, code:integer;  
procedure start;  
begin
writeln('введите строку');  
readln(s);  
end;
procedure process;
begin
Val(s,w,code);  
end;
procedure finish;  
begin
If code=0 then  
writeln('Строка ', s,' является записью целого числа ')  
else
writeln('Строка ', s,'  не является записью целого числа ');  
readln;
end;
begin
writeln ('Эта программа определяет, является ли введенная вами строка правильной записью целого числа.');
readln;
start;  
process;  
finish;  
end.


Однако, здесь идет конвертирование и проверка всей строки сразу.... Это очень ограничило количество вводимых символов.... Мне поставили новую задачу: сделать так, чтобы шли конвертирование и проверка каждого символа... Сложность еще в том, что целые числа могут быть и отрицательными, и если делать посимвольную проверку, то нужно учитывать знак "-" в начале строки... unsure.gif
Подскажите пожалуйста, как сделать!

Сообщение отредактировано: bama_girl -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Michael_Rybak
*****

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

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


может нам еще римские цифры учитывать, а так же вербальное представление слов? и иероглифы?

по тексту автора темы совершенно очевидно, что имеется ввиду десятичная запись. более того, при желании можно и вывод такой сделать: функция val c целым аргументом обработает только десятичную запись, а ксюша говорит, что всё ок, только нужно добавить, чтоб работало с длинными числами.

давайте не будем придираться к запятым в тексте, это ну совсем-совсем бессмысленно. я не говорю, вообще не придираться. просто есть какая-то мера подразумеваемости, и в данном случае очень явная, по-моему.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гуру
*****

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

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


Цитата(Michael_Rybak @ 10.04.2008 12:26) *

может нам еще римские цифры учитывать, а так же вербальное представление слов? и иероглифы?
Не видя условия, ответить на этот вопрос невозможно.
Цитата

по тексту автора темы совершенно очевидно, что имеется ввиду десятичная запись.
Извини, я телепатическими способностями не обладаю, а в тексте этого в упор не вижу.
Цитата
более того, при желании можно и вывод такой сделать: функция val c целым аргументом обработает только десятичную запись, а ксюша говорит, что всё ок, только нужно добавить, чтоб работало с длинными числами.
Неправда Ваша.
  val('$ff',i,j);
writeln(i,' ',j);

Цитата
давайте не будем придираться к запятым в тексте, это ну совсем-совсем бессмысленно. я не говорю, вообще не придираться. просто есть какая-то мера подразумеваемости, и в данном случае очень явная, по-моему.
Я не придираюсь. Я обращаю внимание на неоднозначность в формулировке задачи.
Увы, на практике очень часто оказывается, что каждый из двух беседующих подразумевает что-то свое, тогда как каждый из них уверен, что они подразумевают одно и то же.
Бывают и более сложные ситуации, например, в системе "преподаватель, студент, помощник" запросто может оказаться, что преподаватель и помощник подразумевают разное, а студент, не владея материалом в достаточной мере, просто даже не подозревает о возможности такой разницы. В таком случае если помощник своевременно сможет доказать студенту необходимость уточнить условие у преподавателя, это в дальнейшем поможет избежать студенту массы неприятностей.
Скажешь не жизненная ситуация?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
bama_girl   Является ли заданная строка правильной записью целого числа?   9.04.2008 15:05
Michael_Rybak   очень просто. смотри. читаешь строку (как строку, …   9.04.2008 15:24
bama_girl   Спасибо большое за помощь, суть ясна =) Только ср…   9.04.2008 22:59
andriano   если первый символ не минус и не цифра - сразу отв…   9.04.2008 23:45
Michael_Rybak   Да, только учти, что во введенной строке может и…   10.04.2008 0:53
andriano   Michael_Rybak, неправда Ваша. Если нечто нужно про…   10.04.2008 11:02
Michael_Rybak   может нам еще римские цифры учитывать, а так же ве…   10.04.2008 15:26
andriano   может нам еще римские цифры учитывать, а так же в…   11.04.2008 1:11
Michael_Rybak   вообще - согласен. в данном конкретном случае, на …   11.04.2008 2:54
andriano   ты веришь, что от нее могут требовать шестнадцатир…   11.04.2008 23:41
hardcase   ППц вы тут демагогию развели...   12.04.2008 3:28
Michael_Rybak   я уже писал про римские и иероглифы. а спрашива…   12.04.2008 23:37
bama_girl   Ребят, возникла еще одна проблема: в эту задачу ка…   20.04.2008 16:30


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

 





- Текстовая версия 28.03.2024 20:55
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name