1 |
h06 |
CS16 F16 |
Name: | ||||
---|---|---|---|---|
(as it would appear on official course roster) | ||||
Umail address: | @umail.ucsb.edu | section 9am or 10:30am |
||
Optional: name you wish to be called if different from name above. | ||||
Optional: name of "homework buddy" (leaving this blank signifies "I worked alone" |
h06: Homework 6
ready? | assigned | due | points |
---|---|---|---|
true | Tue 10/11 02:00PM | Thu 10/13 02:00PM |
You may collaborate on this homework with AT MOST one person, an optional "homework buddy".
MAY ONLY BE TURNED IN IN THE LECTURE/LAB LISTED ABOVE AS THE DUE DATE,
OR IF APPLICABLE, SUBMITTED ON GRADESCOPE. There is NO MAKEUP for missed assignments;
in place of that, we drop the three lowest scores (if you have zeros, those are the three lowest scores.)
Please:
- No Staples.
- No Paperclips.
- No folded down corners.
Read Chapter 3.4 - 4.3 (If you do not have a copy of the textbook yet, there is one on reserve at the library under “COMP000-STAFF - Permanent Reserve”).
PLEASE MARK YOUR HOMEWORK CLEARLY, REGARDLESS OF IF YOU WRITE IT OUT IN INK OR PENCIL!
-
1. (2 pts) What is a flag in a program and of what use is it?
2. (2 pts) What is variable tracing and how can it be of value to a programmer?
3. (2 pts) In C++, how would you calculate the absolute value of the fraction -5/6?
4. (2 pts) In C++, how would you calculate the absolute value of (-19 + 4 + 10)?
5. (2 pts) In C++, how would you generate a random number between 0 and 100?
6. (2 pts) In C++, how would you generate a random number between 5 and 15?
7. (4 pts) List at least 8 pre-defined functions in C++ that come from the cmath library.
8. (4 pts) Look up cstdlib, which is another popular C++ library. What seems to be the biggest difference between cstdlib and cmath?
9. (6 pts) Write out a short program that simulates the tossing of 2 dice. When run, the program will print out 2 numbers representing 2 randomly thrown dice and then quits. Are the 2 numbers always different every time the program is run?
10. (6 pts) The infinite series: s = 1 + (2/3) + (4/9) + (8/27) + .... is a geometric series that converges to a whole rational number (i.e. like 2 or 3 or 4). Below is an unfinished C++ program that will calculate s to the kth position (so, for example, if k = 1, then s = 1 + (2/3) = 1.666...). Fill in the missing code:
#include <iostream>
#include <cmath>
using namespace std;
int main(){
double s(0.0);
int k(0);
cout << "Enter k: ";
cin >> k;
for (____________________________________________________) {
s = ____________________________________________________; }
cout << "Series converges to: " << s << endl;
return 0;
}