2009-04-05 18 views
2

J'ai travaillé sur mon projet concernant les transactions de compte bancaire (retrait, dépôt, chèque encaissé et demande de solde) en utilisant "account.txt". Mon TA m'a dit que je devais utiliser un fichier temporaire. Ce fichier temporaire lira ligne par ligne pour trouver ce que l'utilisateur recherche. Cependant, je n'ai pas du tout compris ce fichier OPEN temporaire. Est-ce que quelqu'un vous explique ce que c'est et, si c'est possible, pourriez-vous en donner un exemple?Fortran 90 fichier OPEN

Voici les instructions du projet: Ce projet consiste à écrire un programme pour effectuer des transactions sur des comptes bancaires. Vous recevrez un fichier contenant tous les comptes de la banque (le fichier s'appelle "account.txt"). Votre programme consiste à fournir un menu interactif permettant aux utilisateurs d'effectuer des transactions sur ces comptes. Votre programme doit mettre à jour le fichier de compte après chaque transaction. L'utilisateur peut effectuer des transactions sur des comptes qui ne sont pas disponibles. Votre programme doit imprimer un message d'erreur sur l'écran et revenir au menu. En outre, votre programme doit imprimer si une transaction est réussie. En cas de transaction infructueuse, votre programme affichera la raison de la transaction ayant échoué.

Votre programme doit être capable de gérer les opérations suivantes:

  • argent de dépôt dans un compte
  • retirer de l'argent d'un compte
  • Check encaissée contre un compte
  • Demande de solde d'un compte

Il existe une limite sur le nombre de chèques pouvant être encaissés sur un compte d'épargne . La limite est de 2 chèques par mois. Il y a une pénalité de 0,25 $ pour chaque chèque encaissé au-delà de la limite. S'il y a suffisamment de fonds pour encaisser le chèque, mais pas la pénalité, la transaction devrait passer et le solde résultant serait nul.

Voici le format dans le fichier de compte pour un seul compte (champs de données sont séparés par exactement un espace):

Account type, S for saving, C for checking (1 character) 
Account number of 5 digits 
Last name of account holder (15 characters) 
First name of account holder (15 characters) 
Balance of the account in the form xxxxx.xxx 
An integer field indicating how many checks have been cahsed this month (three digit) 
An interest rate in the form of xx.xx (e.g. 10.01 = 10.01%) 
For names with fewer than 15 characters, the data will be padded to have width of 15 characters. 

Voici un exemple du fichier de compte:

C 12345 Smith   John    100.000 10 0.00 
S 45834 Doe    Jane    3462.340 0 0.30 
C 58978 Bond   Jones    13.320 5 0.00 

* Création d'un fichier temporaire FORTRAN permet de créer un fichier temporaire. Utilisation: OUVERT (UNITE =, STATUT = "SCRATCH", ...) Il n'est pas nécessaire de fournir (FICHIER = ""). En utilisant un fichier temporaire, vous pouvez copier les comptes du fichier de compte dans le fichier temporaire. Ensuite, lorsque vous copiez les données du fichier temporaire dans le fichier de compte, effectuez les transactions nécessaires. Votre programme ne doit pas copier les comptes entre ces deux fichiers si une transaction doit échouer.

S'il vous plaît pardonner mon anglais, je suis japonais.

+0

J'ai édité ma question. Merci –

Répondre

2

Le disent qu'une déclaration telle que:

OPEN (7, ACCESS = 'DIRECT',STATUS = 'SCRATCH') 

Vous pouvez créer un fichier temporaire - qui ne fera que vivre jusqu'à ce que vous le fermez, et ne pas être enregistré sur le disque. Ce fichier n'a pas besoin de nom (il ne sera jamais appelé par son nom) juste un numéro d'unité (dans mon exemple 7).

Vous pouvez utiliser ce fichier pour stocker les informations de compte temporairement pendant une transaction.Vous en avez besoin car, lorsque vous insérez des lignes dans le fichier réel, vous ne voulez pas écraser les données suivantes. Alors, ils disent:

  • Copier tout dans un fichier temporaire
  • Si la transaction réussit, copier les données dans le fichier mais
    • lignes Omettre qui sont à supprimer
    • Ajouter dans les lignes qui doivent être insérés

est-ce que l'aide?

+0

Merci pour votre réponse. Ça m'aide beaucoup. Une chose, dois-je encore ouvrir le fichier "account.txt" pour faire cela? Si oui, dois-je utiliser le même numéro UNIT utilisé dans le fichier temporaire? –

+0

Oui, vous devez ouvrir "account.txt", mais avec un numéro d'unité _different_. – MarkusQ

Questions connexes