Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.09.2014, 17:06   #1
dimoni414
Пользователь
 
Регистрация: 20.09.2014
Сообщений: 13
Вопрос Преподаватели сказали, что это БАГ в паскале,так ли это?

Программа предельно проста: ввести имя файла(txt)----> открыть его и прочитать----> а если его нет, то вывести сообщение об ошибке----> (тут самое интересное) предложить пройтись по программе заново......

Суть Бага в том после того как начинаешь проходиться по программе заново и вводить имя файла, вместо того, чтобы вывести то,что в txt или вывести ошибку, программа выводит то, что я ввёл.
Помогите, пожалуйста, может ошибка в коде?
Изображения
Тип файла: jpg p1.jpg (116.1 Кб, 118 просмотров)
Тип файла: jpg р2.jpg (113.6 Кб, 125 просмотров)
dimoni414 вне форума Ответить с цитированием
Старый 20.09.2014, 17:20   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

Код:
readln(proverka);
Очень жаль, если преподаватели считают это багом.

read(proverka) "заберёт" из буфера только строку "y", но оставит там перенос на новую строку. На следующей итерации в name окажется пустая строка и "Если String - пустая строка, то есть когда Length(Name) равно нулю, то возникает специальный случай и переменная F становится связанной со стандартным файлом ввода или вывода. Эти специальные файлы позволяют программе использовать возможность операционной системы DOS - возможность переназначения ввода/вывода." (http://www.pascal.helpov.net/index/pascal_Assign).
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )

Последний раз редактировалось BDA; 20.09.2014 в 17:26.
BDA вне форума Ответить с цитированием
Старый 20.09.2014, 17:28   #3
dimoni414
Пользователь
 
Регистрация: 20.09.2014
Сообщений: 13
По умолчанию Проблема решена

Спасибо большое))
dimoni414 вне форума Ответить с цитированием
Старый 20.09.2014, 17:44   #4
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию

Прежде чем лезть в интернеты и паниковать на форумах, всегда прогоняй проблемный участок под отладчиком - сэкономишь уйму своего и чужого времени.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Warning 1 warning C4996: 'scanf': This function or variable may be unsafe. Что это за баг такой? ( С ) dannae Помощь студентам 10 08.10.2013 16:49
<< >> & ^ | с чем это едят и что это такое? pufystyj Общие вопросы C/C++ 4 30.03.2011 13:59
Youtube: это не баг, это фича Ivan_32 Свободное общение 10 10.02.2011 20:36
Эквалайзер...что это? кто это? Можно ли с ним подружиться? .Phoenix Мультимедиа в Delphi 45 08.04.2010 23:37