Looking for help with an assignment? Connect with an assignment Expert Now!

Test and verify that it works correctlyCode an app

Test and verify that it works correctlyCode an app. Suppose a text file contains ASCII characters ‘0’ and ‘1’ representing bits in human readable form. For example, test.txt may contain 111111110000000 which means its size is 16 bytes. A simple method for compressing the file by a factor of 8 is to represent a block of 8 ‘0’ or ‘1’ ASCII characters as a single byte. Thus test.txt which is 16 bytes long can be compressed into a file that is 2 bytes long where the first byte contains all 1’s and the second byte all 0’s. The resultant compressed file is a binary file since the first byte is not an ASCII character.

Code an app, bitpacker, that reads from stdin the input filename which follows the same specification as Problem 3. However, instead of using getchar(), use the library function fgets() whose the second argument allows specifying how many bytes, at most, should be read which helps prevent array overrun. Process the data in the input file 8 characters at a time by reading them into a 1-D array, char rawdat[8]. Compact the eight ‘0’ and ‘1’ characters in rawdat[] into a single byte using the bit processing techniques discussed in class. Write the resultant byte into an output file with suffix “.P”. For the above example, test.txt.P. We will allow the size of the input file not to be a multiple of 8. Since we are compacting 8 ASCII characters ‘0’ and ‘1’ into a single byte, we will use padding to handle files whose size is not a multiple of 8. For example, if text file test1.dat contains characters 1111111100000000111 (file size is 19 bytes), we will pad the last three characters 111 with 00000 so that the byte containing bit values 11100000 is written to test1.dat.P. To note that we padded the original data with five 0 bit values, we will change the suffix of the output file to test1.dat.P5. For test.txt where no padding was needed, the output filename will be test.txt.P0. Thus the last character of the filename specifies how much padding (0-7) was added.

Code bitpacker as a single main() function in main.c . Test and verify that it works correctlyCode an app, bitunpacker, that performs the reverse operation of bitpacker. bitunpacker reads the input filename from stdin using fgets() and checks that the suffix ends with .P[0-7] where [0-7] means that the last character must one of the digits 0, 1, …, 7. Strip the suffix in the name of the output file. Implement the app as a single main() function in main.c . Test and verify that it works correctly.

all two programs must run within its functions using mac ios terminal and Linux system.

Test and verify that it works correctlyCode an app

Get a Quick Quote

Approximately 250 words
Total price (USD) $: 10.99

Pressed for time on your upcoming paper? We can help!

Bored with homework

Reviews from Clients who Ordered from Our Website

Client: 3425

Ive submitted over 30 assignments from this website and gotten an average of 3.8 G.P.A.

Client: 2516

Juggling school with family and work has always been hectic but this website made it easy to do my studies and work while raising my 3 year old girl.

Client: 3516

Great customer service and quality work delivered on time!

Client: 2718

Client: 7384

Client: 8291

Client: 162

Client: 827

They delivered a professional and well written Resume for me. Reccommend

Why Us?


Your personal and payment details are safe with us. Our website uses secure encryption for all orders. We guarantee not to share your details with any third parties.

Flexible Pricing

We offer great discounts and flexible pricing tailored to your needs. Additionally, we provide offers for orders above 30 pages and returning customer.


Our Professional Team of Writers have great experience and writing techniques to provide you with Quality Non-plagiarized work.

Customer Support

Our Customer Support and Professional Team of Writers are always available to help you anytime. Our Team  of writers are also available to take care of your writing needs 24/7 Live Chat is available 24/7 

How it Works

Step1: Provide Instructions


Provide detailed instructions including deadline for your paper and any additional information

Step 2: Pay & Assign Writer


Complete payment through our safe checkout and wait for your order to be assigned to suitable writer

Final Step: Download & Review


Download & Review your paper. You may request revision if anything is not satisfactory and rate the writer.