Паскаль. Текстовый файл
Создать текстовый файл, записать в него последовательность чисел(конец последовательности (терминатор) – ноль),вывести эту последовательность на экран, найти мин и макс, поменять их местами, и новую последовательность вывести на экран.
Сделала всё это используя массив, но преподаватель сказал что все просчеты надо вести в самом файле и массив не использовать, натолкните на мысль как это сделать. |
Вот это то что у меня получилось написать для ввода этих чисел. Но вот как теперь остальное сделать...и вообще имеет ли смысл ниже написанное.
Program variant_11; Uses WinCRT; var f:text; a:string; Begin Assign(f,'f.txt'); ReWrite(f); WriteLn('Vvedite chisls:'); ReadLn(a); If (a='0') Then Begin WriteLn('net'); Erase(f); Exit; End Else begin a:=a+' '; Write(f,a); End; Repeat Write('Ochered chislo:'); ReadLn(a); If (a<>'0') Then begin a:=a+' '; Write(f, a); end; Until (a='0'); WriteLn('Ishod fail:'); Reset(f); WhIle not eof(f) do Begin read(f,a); Write(a); End; Close(f); End. |
Да уж, дорогая Бетти, боюсь, пассаж насчет "терминатора" Вы поняли слишком буквально, и вместо того, чтобы просто прервать ввод на нулевом числе, Вы пытаетесь при вводе нуля совсем уничтожить файл! Думаю, этого не надо. Не говоря уж о том, что незакрытый файл уничтожить не получится.
Насчет того, что "преподаватель сказал что все просчеты надо вести в самом файле", то тут надо поразмыслить. Я, честно говоря, сходу не очень вижу, как это. Сейчас попробую что-нибудь придумать. |
Я буду вам очень благодарна.
|
Цитата:
Предлагаю такой вариант, во всяком случае, тут без массивов: Код:
var |
Спасибо вам большое
|
Часовой пояс GMT +4, время: 21:36. |
Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.