Другие языки программирования и технологии
Файлы в паскале
а) Написать программу, которая заполняет файл chisla.txt N целыми числами, полученными с помощью генератора случайных чисел (значение N вводится с клавиатуры). Причём в файле все числа должны находиться в одной строке. б) Разработать программу создания и просмотра типизированного файла, содержащего сведения об автомобилях: марка, производитель, год выпуска, цена.
а) const Name = 'chisla.txt'; var F : Text; N : Word; T : Integer; begin Write('Enter N = '); ReadLn(N); Randomize; Assign(F, Name); Rewrite(F); while N > 0 do begin Dec(N); T := Random(100); Write(F, T, #32); end; Close(F); WriteLn('File is complete.'); end.
б) uses CRT; const Name = 'Auto.mob'; type AutoType = record Model, Proizvoditel : String[20]; Year : Word; Price : Longint; end; procedure Add; var F, T : File of AutoType; A, M : AutoType; begin Write('Model : '); ReadLn(M.Model); Write('Proizvoditel : '); ReadLn(M.Proizvoditel); Write('Year : '); ReadLn(M.Year); Write('Price : '); ReadLn(M.Price); if (Length(M.Model) = 0) Or (Length(M.Proizvoditel) = 0) Or (M.Year < 1900) Or (M.Year > 2015) Or (M.Price < 1000) then begin WriteLn('Ошибка данных. '); Exit; end; Assign(T, Name);
{$I-} Reset(T); {$I+} if IOResult = 0 then begin Rename(T, 'Auto.tmp'); Assign(T, 'Auto.tmp'); Reset(T); Assign(F, Name); Rewrite(F); while Not EOF(T) do begin Read(T, A); Write(F, A); end; Close(T); end else begin Assign(F, Name); Rewrite(F); end; Write(F, M); Close(F); end; procedure See; var F : File of AutoType; M : AutoType; begin Assign(F, Name); Reset(F); While Not EOF(F) do begin Read(F, M); WriteLn(M.Model:35, M.Proizvoditel:35, M.Year:6, M.Price:10); end; Close(F); end; var C : Char; begin repeat WriteLn('МЕНЮ: '); WriteLn('1 - Добавить автомобиль'); Writeln('2 - Просмотреть список'); WriteLn('ESC - Выход'); C := ReadKey; case C of '1' : Add; '2' : See; end; until C = #27; end.
б) uses CRT; const Name = 'Auto.mob'; type AutoType = record Model, Proizvoditel : String[20]; Year : Word; Price : Longint; end; procedure Add; var F, T : File of AutoType; A, M : AutoType; begin Write('Model : '); ReadLn(M.Model); Write('Proizvoditel : '); ReadLn(M.Proizvoditel); Write('Year : '); ReadLn(M.Year); Write('Price : '); ReadLn(M.Price); if (Length(M.Model) = 0) Or (Length(M.Proizvoditel) = 0) Or (M.Year < 1900) Or (M.Year > 2015) Or (M.Price < 1000) then begin WriteLn('Ошибка данных. '); Exit; end; Assign(T, Name);
{$I-} Reset(T); {$I+} if IOResult = 0 then begin Rename(T, 'Auto.tmp'); Assign(T, 'Auto.tmp'); Reset(T); Assign(F, Name); Rewrite(F); while Not EOF(T) do begin Read(T, A); Write(F, A); end; Close(T); end else begin Assign(F, Name); Rewrite(F); end; Write(F, M); Close(F); end; procedure See; var F : File of AutoType; M : AutoType; begin Assign(F, Name); Reset(F); While Not EOF(F) do begin Read(F, M); WriteLn(M.Model:35, M.Proizvoditel:35, M.Year:6, M.Price:10); end; Close(F); end; var C : Char; begin repeat WriteLn('МЕНЮ: '); WriteLn('1 - Добавить автомобиль'); Writeln('2 - Просмотреть список'); WriteLn('ESC - Выход'); C := ReadKey; case C of '1' : Add; '2' : See; end; until C = #27; end.
уже знаю, могу скинуть
обращайся....
Похожие вопросы
- Команды работы с текстовыми файлами в паскаль.
- Какую программу (Паскаль) использовать в учебных целях, чтоб была овместима с файлами от "Турбо Паскаль"? В которых
- Паскаль!!)) входной файл содержит два числа x и y. Выходной последнюю цифру числа x в y степени! помогите пожалуйста!
- Создать список из повторяющихся слов текста из файла. Первый элемент-наиб. часто повторяющееся слово/ Паскаль. (+)
- помогите решить задачи на паскале 1Во входном файле дана последовательность чисел. Требуется найти второе по величине чи
- файлы паскаль плиииз
- дозапись в типизированный файл паскаль
- программа на Турбо Паскале на тему файлы
- Аналог ассоциативного массива в Паскале.
- Я внутри написал, что я знаю про паскаль не то что решать и все такое а так теоретический в общем, смысл проги, я прав?