nick444

Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Вот вопрос по выводу в файл : есть программа, которая читает данные из файла, потом производит с ними кое-какие манипуляции и выводит на экран, а потом еще должно вывести в файл. Программа выпполнена через поцедуры. Все получается, но только вместо вывода таблицы в файл, она его попросту очищает и не пишет туда ничего. Также пробовал сделать вывод не через процедуру - результат тот же. program slovo_chislo; uses crt; const n=10; dlina=30;{¤«Ё- бва®зЄЁ} type tarr=array[1..n] of real; starr=array[1..n] of string[dlina]; var dolg: real; t,f:text; mas_chisl:tarr; stringold,stringnew:starr; sp,sps:char; procedure init(var f:text); begin assign(f,'C:\tp70\bin\kolyn2.txt'); reset(f); end; procedure readfile(var f:text;var s:starr); {бзЁвлў Ґ¬ ўҐбм д ©« ў ¬ ббЁў Ё§ бва®Є} var j:integer; begin for j:=1 to n do readln(f,s[j]); close(f); end; procedure work(var m:tarr;sold:starr; var snew:starr);{ўл¤Ґ«пҐ¬ б«®ў® Ё зЁб«® ў ¬ ббЁўҐ stringold} var i,a,code:integer; chislo:string[30]; begin for i:=1 to n do begin a:=pos(' ',sold[i]); {®Ў- аг¦Ёў Ґ¬ ў i бва®ЄҐ ¬ ббЁў (stringold) ЇҐаў®Ґ Ї®пў«Ґ-ЁҐ Їа®ЎҐ« } snew[i]:=copy(sold[i],1,a);{ўл¤Ґ«пҐ¬ б«®ў® ў бва®ЄҐ Ё § -®бЁ¬ ў -®ўл© ¬ ббЁў } chislo:=copy(sold[i],a,dlina-a); {ў chislo § -®бЁ¬ вг з бвм бва®ЄЁ Ј¤Ґ бв®Ёв зЁб«® } val(chislo,m[i],code); {ЇаҐ®Ўа §гҐ¬ chislo ў зЁб«® Ё § ЇЁблў Ґ¬ ў i н«Ґ¬Ґ-в ¬ ббЁў mas_chisl} end; end; procedure printmasish(m:tarr;s:starr); var i,j,a:integer; begin for i:=1 to n do begin write('|',s[i],' '); a:=length(s[i]); writeln('|':12-a,' ',m[i]:5:1,'|'); end; end; procedure printmas(m:tarr;s:starr); var i,j,a:integer; begin for i:=1 to n do begin if (m[i]>dolg) then begin write('|',s[i],' '); a:=length(s[i]); writeln('|':12-a,' ',m[i]:5:1,'|'); end; end; end; [/code] procedure writeinfile(var t:text); begin assign(t, 'c:\tp70\bin\result.txt'); rewrite(t); writeln; writeln ('-------------------------------'); writeln ('| ”€ђЊЂ | ‡Ђ„Ћ‹†ЌЋ‘’њ|'); printmasish(mas_chisl,stringnew); writeln ('-------------------------------'); writeln ('-------------------------------'); writeln ('| ”€ђЊЂ | ‡Ђ„Ћ‹†ЌЋ‘’њ|'); printmas(mas_chisl,stringnew); writeln ('-------------------------------'); writeln; close(t); end; begin repeat clrscr; writeln ('Љ Є®ў deadline § ¤®«¦-®б⥩? (Њ«а¤ $) '); readln (dolg); init(f); readfile(f,stringold); work(mas_chisl,stringold,stringnew); writeln; writeln ('-------------------------------'); writeln ('| ”€ђЊЂ | ‡Ђ„Ћ‹†ЌЋ‘’њ|'); printmasish(mas_chisl,stringnew); writeln ('-------------------------------'); writeln ('-------------------------------'); writeln ('| ”€ђЊЂ | ‡Ђ„Ћ‹†ЌЋ‘’њ|'); printmas(mas_chisl,stringnew); writeln ('-------------------------------'); writeln; writeln('Џ®ўв®аЁвм? (y/n)'); sp:=readkey; until (sp='n') or (sp='N'); writeln; writeln('‡ ЇЁб вм ў д ©«? (y/n)'); sps:=readkey; if (sps='y') or (sps='Y') then writeinfile(t); end. | Всего записей: 704 | Зарегистр. 04-11-2005 | Отправлено: 10:26 06-04-2009 | Исправлено: nick444, 10:32 06-04-2009 |
|