Answered step by step
Verified Expert Solution
Question
1 Approved Answer
In C Problem Statement Data processing is fundamental to Computer Science and many other disciplines. In this hack you will start a mini-project in which
In C
Problem Statement Data processing is fundamental to Computer Science and many other disciplines. In this hack you will start a mini-project in which you will process a large amount of transaction data from a financial institution. The data represents transactions that transfer funds from or to an account The Data Transaction data is represented as a flat file in CSV format. The first line indicates how many records are contained in the file. Each subsequent line represents a single transaction. A transaction includes the following pieces of data an alphanumeric designation that uniquely identifies the transaction . The type of transaction, which may be one of the following: PAYMENT, TRANSFER WITHDRAWAL, DEBIT, DEPOSIT The amount of the transaction The customer account number . The customer account balance before the transaction The customer account balance after the transaction The transfer account number or merchant designation identifying where the funds are sent A small example is provided in Figure 1. 10 BC377639-37CC-4824-81 AF-601774 18B46D , PAYMENT, 14535 . 18 , 190609304 1 , 8331000 , 68774. 82 , M95867054 A35686EA-BFE7-455E-A027-54D73968E6D3, PAYMENT,11367.98,C371579810,77199.32,65831.34,M1932650331 1 1 F8A44740-DE85-4477-9E5E-Co90AABEOBF2, WITHDRAWAL,79628.70,C739752704,203042.00,123413.30, C579345824 043FD663-236E-4C02-B042-E2642AA6471E , DEBIT , 3225 . 27, C750937249 , 99375 . 00 , 96 149 . 73 , C1232504595 EOEB18EC-4EE2-4206-8834-9465992D1B28,PAYMENT,11268.73,C385148617,167267.40, 155998.67,M1084205719 C306CA7E-80 AO-499E-8CDE-13DFB50C6753 , PAYMENT, 17526 . 96 , 1474376627 , 332543 . 08, 315016 . 12, M1 944361847 003C45B2-1356-4C7F-8D8A-EBB7BF026F16, DEPOSIT, 149504.20,C386278926,56082.00,205586.20,C1113941243 B7ECC2F3-E455-4EF8-B4DF-55150A9F3B1F, PAYMENT, 7676.11,C2018933315,542758.39,535082.28,M1018630839 76947698-1302-47D9-9CAF-66F21A2A6A52,PAYMENT,3240.99, C208944046,4778.00,1537.01,M962275185 2 3 Figure 1: Example data file. Modeling & Loading the Data To start, you'll need to write a C program that reads and processes a data file containing financial transactions in the format described above. You should design and implement a good model for this data as you'll use this code as the basis for producing several reports In addition, you should design at least 1 non-trivial test input file that has at least 2 examples of each type of transaction. You should name your file transactions.csv and hand it in. Reporting the Data To ensure that your data parsing works, you'll need to produce a report that, for each type of transaction, produces a total number of transactions as well as a total of all amounts of those transactions. For example, your report may look something like the output in Figure 2 Your program should take the name of the input file as a command line argument and output the report to the standard output. Totals Type Total Payment Transfer Withdraw Debit Deposit 995782 $ 10764525706.4:2 24161 $ 8826412999.67 247162 $ 27465818326.8:2 29089 $ 121863810.98 488584 $ 96034425549.07 Figure 2: Simple aggregate report output example Problem Statement Data processing is fundamental to Computer Science and many other disciplines. In this hack you will start a mini-project in which you will process a large amount of transaction data from a financial institution. The data represents transactions that transfer funds from or to an account The Data Transaction data is represented as a flat file in CSV format. The first line indicates how many records are contained in the file. Each subsequent line represents a single transaction. A transaction includes the following pieces of data an alphanumeric designation that uniquely identifies the transaction . The type of transaction, which may be one of the following: PAYMENT, TRANSFER WITHDRAWAL, DEBIT, DEPOSIT The amount of the transaction The customer account number . The customer account balance before the transaction The customer account balance after the transaction The transfer account number or merchant designation identifying where the funds are sent A small example is provided in Figure 1. 10 BC377639-37CC-4824-81 AF-601774 18B46D , PAYMENT, 14535 . 18 , 190609304 1 , 8331000 , 68774. 82 , M95867054 A35686EA-BFE7-455E-A027-54D73968E6D3, PAYMENT,11367.98,C371579810,77199.32,65831.34,M1932650331 1 1 F8A44740-DE85-4477-9E5E-Co90AABEOBF2, WITHDRAWAL,79628.70,C739752704,203042.00,123413.30, C579345824 043FD663-236E-4C02-B042-E2642AA6471E , DEBIT , 3225 . 27, C750937249 , 99375 . 00 , 96 149 . 73 , C1232504595 EOEB18EC-4EE2-4206-8834-9465992D1B28,PAYMENT,11268.73,C385148617,167267.40, 155998.67,M1084205719 C306CA7E-80 AO-499E-8CDE-13DFB50C6753 , PAYMENT, 17526 . 96 , 1474376627 , 332543 . 08, 315016 . 12, M1 944361847 003C45B2-1356-4C7F-8D8A-EBB7BF026F16, DEPOSIT, 149504.20,C386278926,56082.00,205586.20,C1113941243 B7ECC2F3-E455-4EF8-B4DF-55150A9F3B1F, PAYMENT, 7676.11,C2018933315,542758.39,535082.28,M1018630839 76947698-1302-47D9-9CAF-66F21A2A6A52,PAYMENT,3240.99, C208944046,4778.00,1537.01,M962275185 2 3 Figure 1: Example data file. Modeling & Loading the Data To start, you'll need to write a C program that reads and processes a data file containing financial transactions in the format described above. You should design and implement a good model for this data as you'll use this code as the basis for producing several reports In addition, you should design at least 1 non-trivial test input file that has at least 2 examples of each type of transaction. You should name your file transactions.csv and hand it in. Reporting the Data To ensure that your data parsing works, you'll need to produce a report that, for each type of transaction, produces a total number of transactions as well as a total of all amounts of those transactions. For example, your report may look something like the output in Figure 2 Your program should take the name of the input file as a command line argument and output the report to the standard output. Totals Type Total Payment Transfer Withdraw Debit Deposit 995782 $ 10764525706.4:2 24161 $ 8826412999.67 247162 $ 27465818326.8:2 29089 $ 121863810.98 488584 $ 96034425549.07 Figure 2: Simple aggregate report output exampleStep by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started