Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Паскаль] Процедура отображения текстового файла, Выводит только первую строку 
V
    Опции темы
radikzinatov
  Дата 27.12.2009, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 27.12.2009
Где: Казакстан, Костан ай

Репутация: нет
Всего: нет



Всем здравствуйте! При вызове процедуры указываю в скобках имя файла, но вот выводит только первую строку, проiу небольшой помощи smile
Код

procedure prosmotr (st:string);
var tx:text;
begin
 assign(tx,st);
 reset(tx);
 read(tx,st);
 close(tx);
 write (st);
 readln;
end;



Это сообщение отредактировал(а) radikzinatov - 27.12.2009, 13:09
PM MAIL ICQ   Вверх
ТоляМБА
Дата 27.12.2009, 13:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Котэ
***


Профиль
Группа: Завсегдатай
Сообщений: 1607
Регистрация: 15.12.2004

Репутация: 3
Всего: 252



Код
procedure prosmotr (st:string);
var tx:text;
begin
 assign(tx,st);
 reset(tx);
 while not eof(tx) do
 begin
    readln(tx,st);
    writeln(st);
 end;
 close(tx);
 readln;
end;

PM   Вверх
radikzinatov
Дата 27.12.2009, 13:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 27.12.2009
Где: Казакстан, Костан ай

Репутация: нет
Всего: нет



нет, почему-то не работает, при выполнении процедуры курсор мигает в левом нижнем углу и зацикливается, приходится ctrl+break
 smile 
PM MAIL ICQ   Вверх
ТоляМБА
Дата 27.12.2009, 13:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Котэ
***


Профиль
Группа: Завсегдатай
Сообщений: 1607
Регистрация: 15.12.2004

Репутация: 3
Всего: 252



radikzinatov, а ты точно ТЕКСТОВЫЙ файл читаешь? Не экзешник там случаем или какой другой? Открой блокнот, набери несколько строк, сохрани и прочитай этот файл через вышенаписанную процедуру. Работает?
PM   Вверх
radikzinatov
  Дата 27.12.2009, 13:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 27.12.2009
Где: Казакстан, Костан ай

Репутация: нет
Всего: нет



да, точно текстовый, lev.txt
текст программы: 
                        
Код

BEGIN
                         list;
                         bmp ('3.bmp');
                         repeat
                         b1[2]:='nachalo';
                         b1[3]:='informatziya o avtore';
                         b1[4]:='vihod';

                         s[2]:='Povorot na levo (Teori9)';
                         s[3]:='Povorot na levo (Demonstraci9)';
                         s[4]:='Povorot na pravo (Teori9)';
                         s[5]:='Povorot na pravo (Demonstraci9)';
                         s[6]:='Proezd pr9mo (Teori9)';
                         s[7]:='Proezd pryamo(Demonstraci9)';

                         c:=readkey;
                         menu (10,10,3,b1,z);
                         if z=2 then o_avtore;
                         if z=3 then exit;
                         if z=1 then menu (20,10,6,s,m);

                         if m=1 then prosmotr ('lev.txt');
                         if m=2 then bmp ('lev.bmp');
                         if m=3 then prosmotr ('.txt');
                         if m=4 then bmp ('pra.bmp');
                         if m=5 then prosmotr ('centr.txt') ;
                         if m=6 then bmp ('prm.bmp');

                         until false;
                         readln;
                         END.

если оставлять в файле одну строку, то она отображается и зацикливается, а если несколько строк, то вообще ничего не показывает и циклится  smile ? выделяя строку end; в исправленной вами процедуре (поле writeln)

Это сообщение отредактировал(а) radikzinatov - 27.12.2009, 13:58
PM MAIL ICQ   Вверх
ТоляМБА
Дата 27.12.2009, 13:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Котэ
***


Профиль
Группа: Завсегдатай
Сообщений: 1607
Регистрация: 15.12.2004

Репутация: 3
Всего: 252



Цитата(radikzinatov @  27.12.2009,  15:45 Найти цитируемый пост)
да, точно текстовый

Файл в студию!
PM   Вверх
radikzinatov
Дата 27.12.2009, 13:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 27.12.2009
Где: Казакстан, Костан ай

Репутация: нет
Всего: нет



файл

Код

При поворотах помните п. 8.6 ПДД «При повороте направо транспортное средство
должно двигаться по возможности ближе к правому краю проезжей части». 
Поэтому если вы поворачиваете налево на широкую дорогу, а встречная машина направо,
не нужно ждать пока она проедет. 
Вы можете (конечно, аккуратно) выполнять этот маневр одновременно. 
Даже если вас не пропустят, вы будете находиться в таком месте, откуда
сразу после ее проезда повернете, не помешав другим водителям. (Рис. 1)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

При повороте налево не нужно выворачивать руль влево, особенно если сзади никто не поворачивает. 
В случае удара ваш автомобиль может вынести на полосу встречного движения
(это касается не только перекрестков, но и разворотов). (Рис. 2)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Есть мнение, что при одновременном повороте налево двух автомобилей на небольших
перекрестках они должны разъезжаться следующим образом. 
Это, конечно, очень удобно и здорово, но лично я ни разу не видел подобного маневра. (Рис. 3)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Порой при повороте налево со второстепенной дороги выехать очень сложно. 
Если машин много с обеих сторон, поверните направо и потом развернитесь в удобном месте.
В этом случае опасный маневр делится на два,
каждый из которых выполнить проще (конечно если знаете как правильно развернуться). (Рис. 4)


Это сообщение отредактировал(а) radikzinatov - 27.12.2009, 14:00

Присоединённый файл ( Кол-во скачиваний: 5 )
Присоединённый файл  lev.txt 1,50 Kb
PM MAIL ICQ   Вверх
ТоляМБА
Дата 27.12.2009, 14:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Котэ
***


Профиль
Группа: Завсегдатай
Сообщений: 1607
Регистрация: 15.12.2004

Репутация: 3
Всего: 252



Создайте паскалевский файл
Код
procedure prosmotr (st:string);
var tx:text;
begin
 assign(tx,st);
 reset(tx);
 while not eof(tx) do
 begin
    readln(tx,st);
    writeln(st);
 end;
 close(tx);
 readln;
end;

begin
     prosmotr('lev.txt');
end.


так нормально читает?
PM   Вверх
radikzinatov
Дата 27.12.2009, 14:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 27.12.2009
Где: Казакстан, Костан ай

Репутация: нет
Всего: нет



 smile  да, а в чем тогда причина? просто это курсовой проект, нужно знать все без запинки...
но он не весь помещается

P.S.
все, заработало, ### фантастика... Большое спасибо
использовал эту процедуру 
Код

procedure prosmotr (st:string);
var tx:text;
begin
 assign(tx,st);
 reset(tx);
 while not eof(tx) do
 begin
    readln(tx,st);
    writeln(st);
 end;
 close(tx);
 readln;
end;

А вот текст не помещается, не подскажешь как исправить\уменьшить? (или для этого надо отдельную тему создавать?)

Это сообщение отредактировал(а) radikzinatov - 27.12.2009, 14:43
PM MAIL ICQ   Вверх
ТоляМБА
Дата 27.12.2009, 14:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Котэ
***


Профиль
Группа: Завсегдатай
Сообщений: 1607
Регистрация: 15.12.2004

Репутация: 3
Всего: 252



Цитата(radikzinatov @  27.12.2009,  15:45 Найти цитируемый пост)
until false;

Сие есть бесконечный цикл, выход из которого производится с помощью break коего в теле твоего цикла не наблюдается.
PM   Вверх
radikzinatov
Дата 27.12.2009, 14:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 27.12.2009
Где: Казакстан, Костан ай

Репутация: нет
Всего: нет



Цитата(ТоляМБА @ 27.12.2009,  14:41)
Цитата(radikzinatov @  27.12.2009,  15:45 Найти цитируемый пост)
until false;

Сие есть бесконечный цикл, выход из которого производится с помощью break коего в теле твоего цикла не наблюдается.

уже заработало, в теле цикла )), все нормально работает  smile 
но вот как уменьшить текст  smile 
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0517 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.