Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
35 / 35 / 3
Регистрация: 26.02.2013
Сообщений: 176
1

Добавление в типизированный файл

29.07.2013, 18:03. Показов 1191. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Составить файловую программу для массивов:ввод,добавление,чтение.Не получается только добавление.И как прочитать файл ,если я добавил еще один массив? Вот код:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
uses crt;
type m=array[1..10] of integer;
var i,j:integer;
f:file of m;c:integer;a,b:m;
begin
clrscr;
assign(f,'d:\a\file.dat');
rewrite(f);
repeat
gotoxy(4,2);
write('vvedite znachenie:');
gotoxy(4,3);
write('1:vvod');
gotoxy(4,4);
write('2:dobavlenie');
gotoxy(4,5);
write('3:prosmotr');
gotoxy(4,6);
write('0:exit  ');
 read(c);
 case c of
 1:begin
 for i:=1 to 10 do
 begin
 gotoxy(3+7*i,7);
 write('a[',i,']=');read(a[i]);
 end;
 write(f,a);
 close(f);
 end;
 
 2:begin
 assign(f,'d:\a\file.dat');
 reset(f);
 for i:=1 to 10 do
 begin
 gotoxy(3+7*i,8);
 write('b[',i,']=');read(b[i]); end;
seek(f,filesize(f));
 write(f,b);
close(f);
 end;
 3:begin
assign(f,'d:\a\file.dat');
reset(f);
 gotoxy(4,9);
 while not eof(f) do
 begin
 read(f,a);
for i:=1 to 10 do
 write(a[i],'   ');
 end;
close(f);end;
 
 end;   until c=0; end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.07.2013, 18:03
Ответы с готовыми решениями:

Типизированный файл. Создать файл целых чисел. Определить суммы чисел до локальных минимумов, записав их в новый файл
Пожалуйста, помогите с решением: Создать файл целых чисел. Определить суммы чисел до локальных...

Gb записи в типизированный файл создается файл огромного размера больше 2Гб что делать?
Доброе утро, в программе создаю файл с данными о студентах(лабараторная работа) он созается но...

Создать типизированный файл из вещественных чисел, записать во второй файл числа первого файла
Помогите пожалуйста написать программу Задача: создать типизированный файл из вещественных...

Типизированный файл. В новый файл записать все массивы исходного, исключая четвертые элементы
2)копмоненты заданного типизированного файла - массивы, состоящие из пяти вещественных чисел...

7
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
29.07.2013, 20:10 2
В принципе можно так
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
uses crt;
const n=10;
type m=array[1..n] of integer;
     tfile=file of m;
var b:boolean;
procedure vvod(var f:tfile);
var a:m;
    k,i,j:integer;
begin
clrscr;
assign(f,'file.dat');
rewrite(f);
write('Сколько массивов записать в файл k=');
readln(k);
for i:=1 to k do
 begin
  for j:=1 to n do
  a[j]:=random(20);
  write(f,a);
 end;
close(f);
b:=true;
writeln('Файл создан');
readln
end;
procedure add(var f:tfile);
var a:m;
    i:integer;
begin
clrscr;
if not b then
 begin
  write('Файл еще не создан, вернитесь к пункту 1');
  readln;
  exit
 end;
reset(f);
for i:=1 to n do
a[i]:=random(20);
seek(f,filesize(f));
write(f,a);
close(f);
writeln('Массив добавлен');
readln
end;
procedure print(var f:tfile);
var a:m;
    i:integer;
begin
clrscr;
if not b then
 begin
  write('Файл еще не создан, вернитесь к пункту 1');
  readln;
  exit
 end;
reset(f);
while not eof(f) do
 begin
  read(f,a);
  for i:=1 to n do
  write(a[i]:4);
  writeln
 end;
close(f);
readln
end;
var f:tfile;
    w:char;
begin
clrscr;
b:=false;
repeat
clrscr;
writeln('Выберите действие:');
writeln('1-создать файл');
writeln('2-добавить массив в файл');
writeln('3-прочитать файл');
writeln('другое-выход');
readln(w);
case w of
'1':vvod(f);
'2':add(f);
'3':print(f);
else exit;
end;
until not (w in ['1'..'3']);
end.
1
35 / 35 / 3
Регистрация: 26.02.2013
Сообщений: 176
29.07.2013, 20:34  [ТС] 3
Опять выводит " 101 :Ошибка записи на диск".
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
29.07.2013, 20:37 4
Скопируй код, а не переписывай с ошибками, все нормально работает и в Турбо Паскале и в АВС
0
35 / 35 / 3
Регистрация: 26.02.2013
Сообщений: 176
29.07.2013, 20:46  [ТС] 5
я скопировал.Все также.У меня TP в dos box (school pak).

Добавлено через 7 минут
в АBC вроде работает
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
29.07.2013, 20:53 6
Цитата Сообщение от datafile4 Посмотреть сообщение
(school pak)
Весьма несерьезная среда, с кучей багов...
0
35 / 35 / 3
Регистрация: 26.02.2013
Сообщений: 176
29.07.2013, 20:56  [ТС] 7
Что делать,Free pascal на Windows 8 глючит (например,открываю другую прогу,а он все равно запускает предыдущую,может,не баг ),ABC как-то непривычно и он немного отличается,TP без эмулятора Dos не запускается.Может ,вы знаете какой-нибудь компилятор,который подойдет?
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
29.07.2013, 21:04 8
Цитата Сообщение от datafile4 Посмотреть сообщение
TP без эмулятора Dos не запускается.
Так не обязательно же sool Pack, можно и отдельно Турбо Паскаль и DosBox.
А вообще ТП у меня на ХР.

Добавлено через 1 минуту
Вообще с новыми ОС все больше народ переходит на Pascal ABC.net
0
29.07.2013, 21:04
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.07.2013, 21:04
Помогаю со студенческими работами здесь

Типизированный фаил, добавление записи.
Type Rec = Record name, fname: String; yo: Integer; End; Допустим у...

Программа, которая читает текстовый файл в типизированный файл
Нужно написать программу, которая читает текстовый файл в типизированный файл и печатает его...

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

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru