Assignment 1, due Aug 28

Part of the homework for CS:2820, Fall 2015
by Douglas W. Jones
THE UNIVERSITY OF IOWA Department of Computer Science

On every assignment, write your name legibly as it appears on your University ID card! Homework is due on paper at the start of class on the day indicated (usually Friday). Exceptions will be made only by advance arrangement (excepting "acts of God"). Late work must be turned in to the TA's mailbox (ask the CS receptionist in 14 MLH for help). Never push homework under someone's door!

  1. A test of your understanding of the prerequisites: Consider this recursive integer function. All operators here are integer operations. This is an informal expression of the function, that is, pseudocode; it is not coded in a real programming language:
    function f( i )
       if i < 3
          return i
       else
          return f( i - 1 ) + f( i - 2 ) + f( i - 3 )
    

    A Question: Give the values of f(0) through f(9). (1.0 point)

  2. Background: If you do not have a CLAS Linux account, create one. The instructions are here:
    -- http://www.divms.uiowa.edu/clas_linux/
    Follow the instructions there for "Create a CLAS Account". Note that this is easier from on campus, for example, in one of the Information Technology Centers, because if you are off campus, you will have to tunnel through the University's firewall using a VPN. (The link for how to set that up is there too, but it will take time, so don't let the VPN issue slow you down.)

    Use your account to sign in to linux.cs.uiowa.edu using either an SSH client or NoMachine (configuring NoMachine is a bit harder, we'll get there later). To make an SSH connections from a Mac or Linux system, open a terminal window (terminal is an application, a system utility), then type the command
      ssh linux.cs.uiowa.edu -l HawkID
    with your HawkID substituted for HawkID in the command. It is almost as easy from a PC, where you must launch either the PuTTY or SecureCRT application and then fill in a form with the system name and HawkID. For details, see:
    -- http://www.divms.uiowa.edu/clas_linux/help/start/remote.html

    A question: Use a shell window on the CS Linux machine. Type the following command:
    [HawkID@serv16 ~]$ ~dwjones/object
    (Boldface in the above is the command you type, non-bold is the prompt from the system.) Report the output you got.

    If you did not make it all the way to the point where you could do the above, report how far you got. (1 point)

  3. Background: In the introduction to the textbook, it says that all of the source code discussed in the text is available on line. The text includes the URL of an index page referring to all of the author's books. That page contains a web link to the page for the text, and that page contains a link entitled source code and installation instructions.

    A question: What is the URL that you get by following the final link above. Don't include the quotes.