Programming Assignment 5 Binary Trees CS2301 System Programming
Programming Assignment #5 Binary Trees CS-2301, System Programming for Non-Majors (Slides include materials from The C Programming Language, 2 nd edition, by Kernighan and Ritchie and from C: How to Program, 5 th and 6 th editions, by Deitel and Deitel) CS-2301, B-Term 2009 Binary Trees 1
Assignment • Read in a series of text files • Keep track of the number of occurrences of each word • In the set of files you read • Print out a list of words (in alphabetical order) and the number of times each occurs Due Date: – Friday, December 4, 2009, 11: 59 PM CS-2301, B-Term 2009 Binary Trees 2
Goals and Objectives • Pull together a non-trivial program from resources and algorithms at your disposal • Build up and use a massive data structure in the form of a binary tree • One entry for each separate word encountered • Each entry counts the number of instances of that word • Create and write your output file CS-2301, B-Term 2009 Binary Trees 3
By the End of this Assignment… • … you should start feeling confident that – You can write a non-trivial C program for any course assignment at WPI – You are capable of learning the things you don’t know on your own – You are beginning to think “computationally” with respect to collecting and organizing data CS-2301, B-Term 2009 Binary Trees 4
What is a Binary Tree? • Previous lecture topic • See also § 6. 5 of Kernighan & Ritchie CS-2301, B-Term 2009 Binary Trees 5
Your Program • Multiple files as in previous programming assignments • Of your own organization • makefile to build it or • Visual Studio • Algorithms from K & R or any other !s! d a n i e d i ipfre r k u i o n y. W e resources v E • Cite your resources! CS-2301, B-Term 2009 Binary Trees 6
Command Line of Your Program. /PA 5 output. File input. File 1 input. File 2. . . CS-2301, B-Term 2009 Binary Trees 7
Sample Output (written to output. File) 166 a 25 and 11 as 3 command 15 each 2 file 4 files 109 in 4 input 98 it 99 of 3 open 6 program 18 read 152 the 41 this 3 under 30 would ------17 Total number of different words CS-2301, B-Term 2009 Binary Trees 8
makefile or Visual Studio • For building your program • Note: – we don’t know what the file names ofreyour it. d ton c w a o o r h #6 xt n e program components are r s a b t e a od lin L line oin t p d e ! e e aneeds edwhat d m c n n Fiv know a u • Only you (and your makefile) r l l g wiintro com. m r pro u o Yo be videber 2 o you to be built and how T procem nts t • If you are feeling adventurous • • Dergume a Build and debug in Visual Studio instead Use Visual Studio project files Clean your project before submitting Zip your files together for submission CS-2301, B-Term 2009 Binary Trees 9
Write-up • Description of your program, the. c files, . h files, etc. • Pre- and post-conditions of all recursive functions • Loop invariants of critical loops • Description of your data structure and the principal functions • Citation of resources and algorithms CS-2301, B-Term 2009 Binary Trees 10
Submitting Your Project • Use /cs/bin/turnin submit cs 2301 PA 5. . . • Submit: – • Write-up • . c files, . h files, and makefile or • Clean, zipped version of Visual Studio project directory • Sample output CS-2301, B-Term 2009 Binary Trees 11
Questions? CS-2301, B-Term 2009 Binary Trees 12
- Slides: 12