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

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

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

> Изменение части текстового файла
Анжелика
сообщение 30.05.2006 11:53
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 35
Пол: Женский
Реальное имя: Анжелика

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


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

unit ex_spr;
interface
uses crt;
procedure exchange2;
implementation
var sp,temp:text;
    naz,name,pole,str1:string;
    i,k,nomst,nompl:byte;
procedure exchange2;
begin
     clrscr;
     writeln('Vvedite imya spravochnika');
     readln(name);
     assign(sp,name);
     {ASSIGN(temp,'temp.txt');}
     reset(sp);{rewrite(temp);}
     k:=0;
     writeln('Vvedite nomer izmenyaemoi stroki:');
     while not eof(sp) do
     begin
           inc(k);
           str(k,str1);
           naz:=str1+'. ';
           for i:=1 to 5 do
           begin
                readln(sp,name);
                naz:=naz+name+'   ';
           end;
           writeln(naz);NAZ:='';
     end;
     readln(nomst);
     writeln('Vvedite nomer izmenyaemogo polya');
     writeln('1-Nazvanie');
     writeln('2-Institut');
     writeln('3-Specialnost');
     writeln('4-God nabora');
     writeln('5-Kol-vo studentov v gruppe');
     readln(nompl);
     writeln('Vvedite novoe znacheniee, vibrannogo poly');
     readln(pole);
     while not eof(sp) do
     begin
           inc(k);
           IF K<> nomst*5+nompl THEN
           {begin }
                READLN(SP,NAME)
                {writeln(temp,name);
                writeln(name);}
          { end }
           ELSE
          { begin}
               WRITELN(SP,POLE);
               {writeln(pole)
           end; }
     end;
     {close(sp);close(temp);
     rewrite(sp); reset(temp);
     while not eof(temp) do
     begin
          readln(temp,name);
          writeln(sp,name)
     end;
     close(temp);
     {erase(temp); }
     close(sp);
     WRITELN('Операция завершена. Нажмите Enter для продолжения');
     readkey;
end;
end.

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


Бывалый
***

Группа: Пользователи
Сообщений: 206
Пол: Мужской

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


и вовсе незачем так кричать

...
k:=0;

writeln('Vvedite nomer izmenyaemoi stroki:');
while not eof(sp) do
begin
naz:='';
inc(k);
for i:=1 to 5 do
begin
readln(sp,name);
naz:=naz+name+' ';
end;
writeln(k,'. ',naz);

end;

readln(nomst);
writeln('Vvedite nomer izmenyaemogo polya');
readln(nompl);
writeln('Vvedite novoe znacheniee, vibrannogo polya');
readln(pole);

reset(sp);
k:=0;

while k < (nomst-1)*5+nompl-1 do
begin
READLN(sp,name);
writeln(temp,name);
inc(k);
end;
...


по-моему, так
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


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

 



- Текстовая версия 18.07.2025 17:27
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"