Benford Law - Program Needs to Validate the Input Data - IT Computer Science Assignment Help

Download Solution Order New Solution
Assignment Task :

Overview 

Benford’s law is a mathematical rule on how frequent certain digits appear in numbers. For example, it is significantly more likely to see a 1 as the first digit in a number than a 9. For the second digit in a number, 1 is still more likely than 9, but the difference is less. In general, the further down the digit, the more balanced the distribution should be. As this law describes what sort of distributions of digits, we are likely to see, it can be used in detecting fraudulence. 

Forensic accounting is about trying to detect the difference between normally occurring numbers, and numbers that have been changed in order to falsify an account. Due to the natural randomness in such accounts, it cannot be determined which individual numbers are fraudulent and which are legitimate. However, the digits over many numbers can be examined to build up a large distribution. If this distribution looks significantly different to the one predicted by Benford’s Law, there is some evidence that the account is fraudulent. 

The task for this project is to write a program that can calculate the distribution of digits for numbers found in a certain file. You are not asked to actually detect any fraudulence.

 

Additional requirements: 

There are few more requirements for your program. 

• Your program needs to validate the inputs to the main() function and gracefully terminate if invalid inputs are provided. 

• You program needs to terminate gracefully if the file cannot be found or opened. 

• For graceful terminations, you may provide an error message followed by an empty list as an output. 

• Your program needs to validate the input data from the file and it should analyse the integer part of the data only. Note float numbers digit counts should consist of only the digits to the left of the decimal point (e.g. the number "52.385686" is considered to have 2 digits and therefore only '5' and '2' should be counted by your program). 

• Your program needs to consider that all numeric data in the file will not be of same length so distribution will, obviously, not count higher digits (when reading digit numbers from left to right) on the numeric data that does not contain these digits (e.g. if no_places = 5 and your program is processing the number "268" then it will not count anything for digit places 4 and 5). For instance, if you sum all the elements of each sub-list of Sample 3 output (presented above), you will observe that sum of first sub-list is greater than sum of second and third sub-lists. This is due to the reason that there is a numerical data in the csv file which is of single digit only.

 

This IT Computer Science Assignment has been solved by our IT Experts at My Uni Paper. Our Assignment Writing Experts are efficient to provide a fresh solution to this question. We are serving more than 10000+ Students in Australia, UK & US by helping them to score HD in their academics. Our Experts are well trained to follow all marking rubrics & referencing style.

Be it a used or new solution, the quality of the work submitted by our assignment experts remains unhampered. You may continue to expect the same or even better quality with the used and new assignment solution files respectively. There’s one thing to be noticed that you could choose one between the two and acquire an HD either way. You could choose a new assignment solution file to get yourself an exclusive, plagiarism (with free Turnitin file), expert quality assignment or order an old solution file that was considered worthy of the highest distinction.

Get It Done! Today

Country
Applicable Time Zone is AEST [Sydney, NSW] (GMT+11)
+

Every Assignment. Every Solution. Instantly. Deadline Ahead? Grab Your Sample Now.