Assignment: Chapters 1 & 2 Questions
Prepare written answers to, and be prepared to discuss each of the following questions, each of which is taken from the correspondingly numbered exercise question from the Computational Thinking for the Modern Problem Solver text.
Question 2. What is the difference between computer hardware and computer software? Provide multiple examples of each.
Question 4. Digital cameras are one kind of modern computer. In this sense, answer the following questions.
- How does the user supply input to a digital camera?
- What would you consider to be the cameraâ€™s output device(s)?
- What is the purpose of the cameraâ€™s memory?
Question 6. In what ways do the GUI elements of a smartphone or tablet computer typically differ from those of a laptop or desktop computer? In what ways are they similar?
Question 7. Applying Mooreâ€™s law, how much larger would you expect a computer from 30 years ago to be by comparison to the computer you currently use? What are the specifications of the computer you currently use?
If â€œtax dayâ€ is represented as 04/15 (corresponding to the fifteenth day of the fourth month, or April 15th) then using the comparable representation of the day of the year you were born (i.e. your birthday) provide the equivalent representation of that value in each of the following systems.
- Tally mark number system
- Roman number system
- Binary number system
Question 5. For each quantity listed, indicate whether the quantity is continuous or discrete.
- Day of the week
- Flying speed of a hummingbird
- Number of peas in a pea pod
- Length of a commencement speech
- Number of chapters in a book
- Number of commas in a book
- Weight of a book
- Age of a book
Question 7. How many unique patterns does a sequence of 5 bits generate?
Question 8. How many unique patterns does a sequence of N bits generate?
Question 9. For each quantity listed, give the number of bits that would be required to represent that data in a computing system.
- The month
- A class grade, where class grades must be one of A, B, C, D, F, or I.
- An MPAA movie rating. The MPAA rates movies as one of the following: G, PG, PG-13, R, NC-17.
- The track number of a song on an MP3 album. The most tracks that can be put on an MP3 album is 100.
- The day of the year. There are 365 days in a year (except for leap years in which there are 366 days). For example, January 1 would be day 1, while December 31 would be day 365 for non-leap years and day 366 for leap years.
- One nucleobase of a DNA string. There are only four nucleobases in this question: adenine (A), guanine (G), cytosine (C), and thymine (T).
- Describe an additional kind of data, ideally something specific to the domain of your earlier studies or work environment, and then give the number of bits that would be required to represent that data in a computing system.
Question 11. Consider a black-and-white picture that consists of 9 columns and 12 rows of pixels. The picture is encoded using the following run-length encoding where a forward slash (/) denotes the end of a row, as illustrated in Figure 2.21.
Render the picture on this grid/table and submit to the Dropbox:
Assignment: Process Description
Consider a simplistic tally mark number system, similar to the one illustrated in Figure 2.8 of the Computational Thinking for the Modern Problem Solver text. In this system a number is represented by one tally mark (â– is used here) for each unit in the number. The larger the number the longer the representation; thus 17 would be represented as â– â– â– â– â– â– â– â– â– â– â– â– â– â– â– â– â– , which is unwieldy but precise.
For this assignment, you are to consider the process of performing the addition of two numbers represented in the tally mark system and you are to develop a precise description of it.
Although this computational process may seem apparent, the real challenge is to describe it precisely and completely enough that it could be carried out generally by an agent of limited capability. It might be useful to imagine explaining this process to a very young child. You may even find it useful to think of two egg cartons, possibly with eggs in them, and a third carton into which all of the eggs are to be placed. Or possibly, think of graph paper rather than tally marks placed on a sheet of blank paper.
You see, the processor of a computer is really an agent of limited capability, and the memory of a computer simply provides standard sized places to store representations. So, consider three containers, each with 32 slots, named Number1, Number2 and Sum respectively. Use this terminology to formulate a description; you may find it appropriate to express your description as a sequence of steps rather than as a paragraph. Keep in mind that the process you describe must work for all valid cases, and not just the one example illustrated below.