1.   Elements of Programming


Overview.

Our goal in this chapter is to convince you that writing a computer program is easier than writing a piece of text such as a paragraph or an essay. In this chapter, we take you through these building blocks, get you started on programming in Java, and study a variety of interesting programs.


Java programs in this chapter.

Below is a list of Java programs in this chapter. Click on the program name to access the Java code; click on the reference number for a brief description; read the textbook for a full discussion.

REF PROGRAM DESCRIPTION
1.1.1 HelloWorld.java Hello, World
1.1.2 UseArgument.java using a command-line argument
1.2.1 Ruler.java string concatenation example
1.2.2 IntOps.java integer multiplication and division
1.2.3 Quadratic.java quadratic formula
1.2.4 LeapYear.java leap year
1.2.5 RandomInt.java casting to get a random integer
1.3.1 Flip.java flippling a fair coin
1.3.2 TenHellos.java your first while loop
1.3.3 PowersOfTwo.java computing powers of 2
1.3.4 DivisorPattern.java your first nested loops
1.3.5 HarmonicNumber.java harmonic numbers
1.3.6 Sqrt.java Newton's method
1.3.7 Binary.java converting to binary
1.3.8 Gambler.java gambler's ruin simulation
1.3.9 Factors.java factoring integers
1.4.1 Sample.java sampling without replacement
1.4.2 CouponCollector.java coupon collector simulation
1.4.3 PrimeSieve.java sieve of Eratosthenes
1.4.4 SelfAvoidingWalk.java self-avoiding random walks
1.5.1 RandomSeq.java generating a random sequence
1.5.2 TwentyQuestions.java interactive user input
1.5.3 Average.java averaging a stream of numbers
1.5.4 RangeFilter.java a simple filter
1.5.5 PlotFilter.java standard input-to-drawing filter
1.5.6 BouncingBall.java bouncing ball
1.5.7 PlayThatTune.java digital signal processing
1.6.1 Transition.java computing the transition matrix
1.6.2 RandomSurfer.java simulating a random surfer
1.6.3 Markov.java mixing a Markov chain