Title: Homework 6
1Homework 6
Sun., 10/12
( MT sections )
about midnight
Mon., 10/13
( WTh sections )
http//www.cs.hmc.edu/courses/2003/fall/cs5/week_0
6/homework.html
http//www.cs.hmc.edu/courses/2003/fall/cs5/
- Submission problems? Grading concerns ?
let me know!
email me at dodds_at_cs.hmc.edu
2- Tutors available -- contact information
3- Tutors available -- lab places and times
Available in the LAC Lab (Linde Activities Center)
Available in Parsons PC Labs (the CIS classrooms)
You may also seek out tutors away from the labs,
by phone, in the dorms, etc.
4HW 6
- Problem 1 The Mudders Meander
- Problem 2 throwing darts at pi
(0.5)
Youll need to write (and use) the method
1.0
(0.5,0.5)
public static boolean throwAndCheckDart()
1.0
- Problem 3 Flesch readability score
Youll need to write (and use) 2 methods
public static int numSyllables(String
word) public static boolean isVowel(char c)
5Computers evaluating reading?
Problem to determine the readability of text
The cow is of the bovine ilk . One end is moo the
other milk !
very readable
- 14 words (dont count the punctuation marks!)
- 2 sentences (do count the punctuation marks!)
- 16 syllables (bovine and other are the
two-syllable words)
206.835 - 84.6(syllables/word) -
1.015(words/sentence)
206.835 - 84.6(16/14) - 1.015(14/2)
watch out!
103
6Handling input
code
user input
while (true) String w H.nw() if
(w.equals(END)) break // do all
processing here
The cow is of the bovine ilk . One end is moo
the other milk ! END
punctuation will ALWAYS be separated from text
H.nw() handles all whitespace as word separators.
Newlines are not different than spaces.
the text will end with the word END (and it
will appear nowhere else!)
H.nw() will return each space-separated String as
a word.
counting words, sentences?
7main
public static void main(String args)
while (true) String w H.nw()
if (w.equals(END)) break
8// get each word in turn - using nextWord() //
stop when END is seen // Stage 1 simply count up
the of Strings and print out the
total _at_ the end
9// distinguish REAL words from . ! ? //
Stage 2 count up the of words sents.
print out both totals _at_ the end
10// count the syllables of each word // Stage 3
take in SINGLE words and print the number of
syllables in each
11Syllables
Whats a syllable ?
aeiouyAEIOUY
Basically, a syllable is a cluster of 1 or more
vowels in a word.
emerge
vowel
the
Put another way, a syllable is
- any vowel that starts a word, plus
- any vowel that follows a consonant
except
- a lone e at the end of the word
But above all, every word must count as at least
1 syllable!
12Helpful Methods
public static int numSyllables(String word)
simile Wrapped bungee Yes beautifully Sequoia
What are some (other) English words for which
this syllable algorithm is incorrect?
13Checking for vowels
public static boolean isVowel(char c)
How would this get used to check for a vowel?
How would this get used to check for a consonant?
14Counting Syllables
public static int numSyllables(String word)
15Easy as p
Visualize
160. The user specifies how many darts to throw.
// get numDarts from user // use a for loop to
throw that many darts // keep track of how many
hits we get // after all the darts, estimate p
171. The user specifies how accurately to estimate
pi.
// get tolerance from user // start throwing
darts // keep track of of hits and of
darts! // estimate p each time // continue while
we are OUTSIDE the tol.
18The Mudd Meander
public static void main(String args)
H.pl(How many steps?) int W H.ni() //
get width (W) from the user int p 0
// the students initial position is 0 while
( Math.abs(p) lt W ) p p
(int)(3Math.random())-1 // update position
printPosition(p,W) // print
one line
public static void printPosition(int p, int
W)