Форум программистов, компьютерный форум, киберфорум
Free Pascal
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
 Аватар для Nimo
34 / 25 / 15
Регистрация: 06.12.2012
Сообщений: 144

Работа с типизироваными файлами: Написать принцип действия банкомата

02.05.2013, 01:43. Показов 1499. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. В общем, немного не понимаю как работать с типизированными файлами.
В общем есть задание: Написать принцип действия банкомата (вход/проверка, баланс, положить/снять деньги, всю информацию хранить в файле.) Тут рекод как никак кстати (хотя с ним я тоже не до конца разобрался).

Так вот, я не могу понять как действовать. Как в файле в каждой строчке хранить всю информацию о клиенте, что бы потом её можно было легко считать и при необходимости менять, без каких либо потерь?

Информация типа:
Серийный номер - Пинкод - Имя - Баланс денег

Был написавши просто в отдельных текстовых файлах каждый параметр, и функцией просто находил владельца, а там уже и все остальное по его номеру, я бы так и оставил, если бы это не давало огроменные минусы, особенно при изменении баланса денег (у меня все стиралось, все "кошельки", а выход искать не захотел, слишком замудрено получается (идея с массивом была, но это уже крайности...).
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.05.2013, 01:43
Ответы с готовыми решениями:

Работа с типизироваными файлами
var f : file of integer; k,i,s : integer; begin assign(f,'1.txt'); rewrite(f); s:=-1; k:=-2; i:=-3; write(f,s,k, i); ...

Написать программу в С++ (действия с файлами, матрицами, векторами)
Вводятся элементы матрицы(из файла, m - кол-во строк, n - кол-во столбцов) построчно. Вычислить: 1) сумму двух векторов; 2) разность...

Используя предметную область, написать программу, выполняющую указанные действия с файлами
Здравствуйте! Помогите в решении лабораторной! Дано задание: Используя предметную область, определенную для вас на практике...

1
261 / 236 / 161
Регистрация: 10.12.2011
Сообщений: 513
02.05.2013, 13:25
Лучший ответ Сообщение было отмечено Nimo как решение

Решение

Ну так вы теорию почитайте. И там как раз о ваших "крайностях" и написано. Что задавать надо через record, что поля записываются в массив.
И если вас просят типизированный файл, то зачем вам текстовые ?( или вам сказали что и они тоже нужны ?)

Для начала введите информацию о клиентах, потом сделайте меню ( как в банкомате, пример я вам приблизительный дал ). Реализуйте возможность добавлять новых клиентов. После, по пинкоду думаю можна реализовать "критерий" просмотра информации о владельце и денежных средствах на его счёте.

Во общем дерзайте.

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
89
90
Type
  Bank = record
  Serial_number: longint;
  Pin:1000 .. 9999;
  Name: string[20];
  Balance: longint;
end;
 
   file_bank = file of bank;
   var
   t: file_bank ;
   name:string;{имя вашего файла}
 
Procedure vvod_Bank (var a: Bank);
    begin
     writeln('Введите серийный номер, пин, имя, баланс денег: ');
     with a do
     begin
     readln(Serial_number);
     readln(Pin);
     readln(Name);
     readln(Balance);
     end;
    end;
    Procedure Vvod_file(var t:file_bank);
    var i,n:byte;
         a: bank;
      begin
        rewrite(t);
          writeln('Введите количество записей');
          readln(n);
        for i:=1 to n do
         begin
              begin
          Vvod_Bank(a);
          write (t, a);
     end;
     readln;
end;
end;
 
Procedure vuvod_zapusu (a:Bank);
begin
     writeln(a.Serial_number: 0);
     writeln(a.Pin: 0);
     writeln(a.Name: 0);
     writeln(a.Balance: 0);
end;
 
procedure VuVod_file (var t: file_bank);
var n, i: byte;
    a: bank;
begin
     clrscr;
     reset (t);
     i:= 0;
     while not eof (t) do
     begin
          seek (t, i);
          read (t, a);
          vuvod_zapusu (a);
          i:= i+1;
     end;
     close (t);
     readln;
end;
 
procedure menu (var t: file_oblast);
var k: byte;
begin
     repeat
     clrscr;
     writeln ('menu');
     writeln ('1: Создание записи');
     writeln ('2: Вывод записи');
     write ('Ваш выбор: ');
     readln (k);
     case k of
     1: vvod_file (t);
     2: vuvod_file (t);
     end;
     until k = 3;
end;
begin
     clrscr;
     writeln ('vvedute Nazvanue: ');
     readln (name);
     assign (t, name);
     menu (t);
end.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.05.2013, 13:25
Помогаю со студенческими работами здесь

принцип действия!
Здравствуйте, вот и столкнулся с Javascript , вот и проблема сразу возникла, объясните принцип работы а=1, b=50 number = (a +...

Принцип действия CLR
Здравствуйте, уважаемые. Прошу Вас чуть внести ясность в мою голову и подтвердить\опровергнуть мое понимание принципов действия CLR,...

Объяснить принцип действия
Есть такое вот задание: Дано целое число N (>0). Сформировать и вывести целочисленный массив размера N, содержащий степени двойки от...

Принцип действия гироскопа
объясните пожалуйста если поставить датчик угловой скорости, гироскоп на продольную ось автомобиля возможно ли определить что автомобиль...

Принцип действия видеокамеры
Здравствуйте!опишите мне пожалуйста принцип действия цифровых видеокамер...только более доступным языком.и ещё:принцип действия лазера.


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
1С: Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
1С: Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию группы. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
1С: Программный отбор элементов справочника по значению перечисления
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит значение перечислений. / / Событие "НачалоВыбора" реквизита на форме. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru