CS : Programming for Non-majors, Spring 2003 Programming Project #1: Thinking of a Number Due by 10:20am Monday January
|
|
- Justina Pope
- 5 years ago
- Views:
Transcription
1 CS : Programming for Non-majors, Spring 2003 Programming Project #1: Thinking of a Number Due by 10:20am Monday January This first assignment will help you learn to use the Linux computers administered by Engineering Computing Services (ECS). An account should have been set up for you automatically. If you have trouble accessing your account, then you should contact Dr. Neeman by no later than Wednesday January 22. You must be enrolled in CS1313 to get an account. Actions and commands that you should perform or type are in the computer boldface font. Your user name is denoted here as yourusername, but will actually be your OU4+4 ID (the first 4 letters of your last name in all lower case, followed by the last 4 digits of your OU student ID). The requirements for this assignment are: 1. Connect and log in, from a computer that you re sitting at, to any one of these computers: kennedy.ecn.ou.edu, lincoln.ecn.ou.edu, or roosevelt.ecn.ou.edu. (a) From a PC in Carson 206: i. Press Ctrl - Alt - Delete simultaneously. This will pop up a welcome window; click OK or press Enter. Log on to ECS2000 using your OU4+4 account. ii. The Start button will appear in the lower left corner of the screen. Click on it and traverse the menus like so: Start Programs General Software Putty SSH Client iii. On the left side of the PuTTY Configuration window, under the heading Terminal is an entry Keyboard; click on it. This will bring up a section titled Options controlling the effects of keys. Under this is a heading called Change the sequences sent by: and beneath that is The Backspace key. Select Control-H. Somewhat below this is The Function keys and keypad. Select Xterm R6. iv. On the left side of the PuTTY Configuration window, below Terminal and its subentries, is an entry Window; click on it. This will bring up a section titled Options controlling PuTTY s window. The first option is Set the size of the window. You may choose as many rows as you like (40 is recommended), but you should make sure to choose 80 columns. v. On the left side of the PuTTY Configuration window, the first entry is Session; click on it. This will bring up a section titled Basic options for your PuTTY session. The first option is Specify your connection by host name or IP address, and immediately below it is Host Name (or IP address). In the text box immediately below that, type the full name of the computer you are logging into (lincoln.ecn.ou.edu, kennedy.ecn.ou.edu or roosevelt.ecn.ou.edu). Immediately below this is Protocol; select SSH. vi. At the bottom right of the PuTTY Configuration window, click Open. vii. If a PuTTY Security Alert window pops up, click Yes. viii. Log in using your OU4+4. 1
2 (b) From elsewhere using a Windows PC: you will need to download the PuTTY SSH client onto your desktop, which is available at: Once you ve downloaded it, the process should be the same as above. (c) From elsewhere using a Unix/Linux computer: you should be able to access the command ssh from the Unix command line, like so: % ssh yourusername@whatever.ecn.ou.edu where whatever is one of lincoln, kennedy, or roosevelt. 2. Once you log in, you ll get some text, and then a Unix prompt probably a percent sign with the cursor after it, like so: % There may be some information before the prompt character, such as the name of the computer that you ve logged in to, your user name, etc. For purposes of CS1313 course materials, we ll generally use the percent sign % to indicate the Unix prompt. 3. If, immediately above the Unix prompt, there are lines of text that read something like: No directory /coe/std/student0/yourusername! Logging in with home = "/". then you should log out immediately and log in to one of the other computers listed above (roosevelt, lincoln, or kennedy). 4. Check to make sure that you re in your home directory: % pwd /coe/std/student0/yourusername This command means: Print working directory; i.e., print the full name of the directory that I m currently in. If your current working directory is just a slash (which means the root directory), rather than something like /coe/std/student0/yourusername, then you should log out immediately and log in to one of the other computers listed above (roosevelt, lincoln, or kennedy). Note that a directory in Unix is like a folder in Windows or MacOS. 5. At the Unix prompt, type exactly the bold text below, excluding the percent sign, which indicates the Unix prompt (all commands should be followed by pressing Enter ): % cp ~neem2345/.login.student ~/.login This command means: Copy the file named.login.student that s in Dr. Neeman s home directory to my home directory, and name my copy.login. Notice: The Unix copy command is cp. The first filename after cp is the source; the second is the destination. Dr. Neeman s account name on the ECS computers is neem2345 rather than hneeman. The filenames.login.student and.login both begin with a period (very important). They are pronounced dot login dot student and dot login, respectively. In Unix, pieces of a filename are separated by slashes, not by backslashes as is the case in Windows. The symbol (called a tilde, pronounced TILL-duh ) denotes your home directory. 2
3 The substring neem2345 means the home directory of the user named neem2345. If for some reason this does not work, try % cp /coe/fsr/facst0/neem2345/.login.student ~/.login You will NOT have to do this for future logins. 6. Type the following command: % source ~/.login This command means: Execute the Unix commands that are in the file named.login, which is in my home directory. You will NOT have to do this for future logins. 7. Create a subdirectory named CS1313, like so: % mkdir CS1313 NOTICE: in the subdirectory name CS1313, the CS should be CAPITALIZED; i.e., the directory s name is capital-c capital-s one three one three with no spaces or other characters in between. This command means: Create a directory named CS1313 as a subdirectory inside the directory that I m currently in. You will NOT have to do this for future logins. 8. Set the permissions on your CS1313 directory so that only you can access it: % chmod u=rwx,go= CS1313 This command means: Change the mode (list of permissions) on my subdirectory named CS1313 so that I (the user) can read files in it, write files in it, and go into (execute) it, but nobody else can. Your CS1313 directory is now accessible only to you. The only other people who can access it are the system administrators (called sysadmins for short) of these computers; i.e., the staff of Engineering Computing Services ( The instructor and TAs CANNOT access your CS1313 subdirectory; nor can any of your CS1313 classmates. You will NOT have to do this for future logins. 9. Log out of the Linux computer by typing exit. Then log back in again. Once you have completed Steps 4 through 8 above, you won t have to do them again when you log in later. 10. Go into your CS1313 directory: % cd CS1313 This command means: Change the current directory to CS1313, which is a subdirectory of the current directory. NOTE: ALL CS1313 project files should reside in your CS1313 subdirectory, for this and ALL future programming projects. 11. Check to make sure that you re in your CS1313 directory: % pwd /coe/std/student0/yourusername/cs Aside: to learn more about a particular Unix command, type: % man commandname For example, try % man chmod which will give you the online manual page for the chmod command. The output of man goes through another command, more, which shows one screenful at a time. To get the next screenful, press the spacebar; to get the next line, press Enter. To quit, press Q. 3
4 13. Copy the Fortran 90 source file named my number.f90 from Dr. Neeman s home directory to your CS1313 directory: % cp ~neem2345/my number.f90. This command means: Copy the Fortran 90 source file named my number.f90 from Dr. Neeman s home directory to the directory that I m currently in. Notice the period at the end of this command; it means the directory that I m currently in and is very important. 14. Confirm that you have my number.f90 in your CS1313 directory by listing the directory s contents: % ls my number.f90 This command means: List the names of the files and subdirectories in my current working directory. Note that the command is ell ess rather than one ess. 15. Copy the make file named makefile from Dr. Neeman s home directory to your CS1313 directory: % cp ~neem2345/makefile. Again, notice the period at the end of this command. 16. Using the text editor of your choice (e.g., pico, vi), edit my number.f90: % pico my number.f90 This command means: Edit the text in the file named my number.f90 that s in my current working directory, using the text editor program named pico. Your TA will be happy to help you learn how to use the pico editor, which is a lot easier to learn than the vi editor. Notice the little help messages at the bottom of the screen: ^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos ^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell For example, ˆW Where is means that you should press Ctrl - W (the caret ˆ indicates the Ctrl key) to search for a particular string of characters; ˆC Cur Pos is short for Cursor Position and causes pico to tell you what line number the cursor is located at; ˆK Cut Text means delete the line that the cursor is currently on. 17. Using the text editor, make the following changes to my number.f90: (a) In the block of comments at the top of the file, change the author name and address, and the lab information, so that they are your information. (b) In the declaration section, change the constant values assigned to minimum number, maximum number, close distance and computers number. You may select any integer values that you want, as long as they are different from 1, 5, 10 and 1 respectively, and minimum number < computers number < maximum number. (c) In the execution section (also known as the body of the program), change the following output strings to your own words: i. Hey! That s not between ii. That s amazing! iii. Close, but no cigar. iv. Bzzzt! Not even close. Note: you are welcome to say pretty much anything you want, but please avoid foul or inappropriate language. Please be entertaining; we ll have a lot of these to grade. 4
5 18. Every few minutes while you re editing, you should save the work that you ve done so far, in case your work is interrupted by a computer crashing. In pico, type Ctrl - O (the letter oh), at which point pico will ask you, near the bottom of the screen: File Name to write : my number.f90 That is, pico wants to know what filename to save the edited text into, with a default filename of my number.f90. Press Enter to save to the default filename my number.f The lines of text in the Fortran 90 source file my number.f90 should never be more than 80 characters long, and ideally no more than 72 characters long. (Your PuTTY window should be 80 characters across.) Some text editors, including pico, try to help keep text lines short, by breaking a long line into multiple short lines. For example, pico will break a line such as PRINT *, "Why you big old stinker! into two separate lines: That s not between ", minimum_number, & PRINT *, "Why you big old stinker! That s not between ", minimum_number, & That is, pico automatically puts a carriage return after the second comma. Unfortunately, the Fortran 90 compiler will consider this to be an error. Why? For historical reasons 1, Fortran cannot allow an individual statement to use more than one line, unless each line of the statement except the last ends with a continuation character, specifically an ampersand (&), and likewise each line of the statement except the first begins with a continuation character (and possibly some spaces). So, the right way to write the above example is: & PRINT *, "Why you big old stinker! minimum_number, & That s not between ", & 20. Like the lines of Fortran 90 source text, the lines of output text should never be more than 80 characters long, and ideally no more than 72 characters long. You can break a long line of output text into shorter pieces by making it into two PRINT statements. For example: PRINT *, "Why you big old stinker! That s not between ", & & minimum_number, " and ", maximum_number, "!" This single PRINT statement can be converted into two PRINT statements, like so: & PRINT *, "Why you big old stinker! That s not between ", & minimum_number PRINT *, " and ", maximum_number, "!" 21. A character string literal constant, often called a string literal for short, is a sequence of characters between a pair of double quotes or a pair of single quotes. For example, in the PRINT statement PRINT *, "This is a PRINT statement." the following is a string literal: "This is a PRINT statement." We say that the pair of double quotes delimits the sequence of characters in the string literal. 1 Punch cards, which used to be the only way to write a Fortran program, are 80 characters wide. 5
6 In principle, Fortran 90 will allow you to embed continuation characters inside a string literal; for example: "This is an extremely long string literal. & incredibly fascinating just to look at it? & proud of it." Isn t it & I m so & In CS1313, however, you are ABSOLUTELY FORBIDDEN to do this. Instead, you should convert the very long string literal into multiple short string literals, for example by breaking a long PRINT statement into multiple PRINT statements: PRINT *, "This is an extremely long string literal. PRINT *, "incredibly fascinating just to look at it? PRINT *, "proud of it." Isn t it" I m so" 22. After you ve finished editing, exit the text editor. In pico, type Ctrl - X. If you have made any changes since the last time you typed Ctrl - O, then pico will ask you, near the bottom of the screen, Save modified buffer (ANSWERING "No" WILL DESTROY CHANGES)? To save your most recent changes to the file (which is probably what you want to do), press the Y key; to avoid saving your most recent changes, press the N key. After that, pico will behave the same as if you had typed Ctrl - O. 23. Once you have finished editing my number.f90, for your own edification examine the contents of the make file: % cat makefile my number: my number.f90 f90 -o my number my number.f90 This command means: Output the contents of the text file named makefile to the terminal screen. Notice that, on the first line of makefile, between the colon and my number.f90, there is at least one tab character (on most keyboards, it s in the upper left next to Q ), and likewise on the second line there is at least one tab character (and no non-tab characters) preceding the f90 command. 24. Make the executable program: % make my number f90 -o my number my number.f90 Notice: In the make command, the command line argument my number is the name of the executable (the file that can actually be run) that you are making. The make command invokes the Fortran 90 compiler to compile the source file named my number.f90. In the compile command, the command line option -o my number indicates that my number is to be the name of the executable; if that option had been left out, then the name of the executable would be a.out ( the output of the assembler ) by default. 6
7 25. If the program doesn t compile, then you ll need to edit it and figure out where things went wrong. In the worst case, if you re totally stumped, then copy the original from Dr. Neeman s home directory again, and start editing from scratch. 26. Once you have the program compiled, test it by running the executable: % my number Let s see whether you can you guess the number that I m thinking of. It s between 1 and That s amazing! Note: your version will look a bit different from this. 27. Perform a full test of my number, using the following values as inputs, in this order: (a) an integer value less than minimum number (b) an integer value greater than maximum number (c) an integer value between minimum number and maximum number (inclusive), but far from computers number (d) an integer value within close distance of computers number (e) the value of computers number It ll look similar to this: % my number Let s see whether you can guess the number that I m thinking of. It s between 1 and Hey! That s not between 1 and 10! 11 Hey! That s not between 1 and 10! 2 Bzzzt! Not even close. 6 Close, but no cigar. 5 That s amazing! 28. If the program doesn t run, then just as in Step 25 above you ll need to edit it and figure out where things went wrong. Again, in the worst case, if you re totally stumped, then copy the original from Dr. Neeman s home directory again, and start editing from scratch. 29. Once the program compiles and runs properly, then you re ready to create a script file, which is a record of your interactions with the computer. Start the script file: % script pp1.txt Script started, file is pp1.txt Notice that pp1.txt means the text file containing Programming Project #1. IMPORTANT: do NOT use the name of the executable in the name of the script file. Starting a script file is like turning on a tape recorder: every keystroke that you input (including backspaces) and every character that the computer outputs will be recorded into the script file, until you turn it off (see below). 7
8 30. Touch (update the timestamp of) the Fortran 90 source file, using a command that touches all existing Fortran 90 source files: % touch *.f90 This command means: Update the timestamp of every file in the current working directory that ends in.f90. The asterisk (*) is called a wildcard; it means this part of the filename can contain anything, or nothing. If you don t touch your source file, your executable may not compile, in which case you have not proven that your program compiles properly, so YOU WILL LOSE UP TO HALF THE TOTAL VALUE of the project. 31. List the contents of the directory, using the long listing -l option: % ls -l -rwxr-xr-x Jan 29 18:27 my number -rw-r--r Jan 29 19:10 my number.f90 Notice that the command is: ell ess space hyphen ell (lower case L, lower case S, space, hyphen, lower case L); it is not ell ess space hyphen one 32. Output your make file: % cat makefile This command will cause the contents of makefile to be sent to the terminal screen, and also to be saved in pp1.txt, the script file. 33. Output your Fortran 90 source file: % cat my number.f90 As above, this command will cause the contents of my number.f90 to be sent to the terminal screen, and also to be saved in pp1.txt, the script file. 34. Make your executable program: % make my number 35. Run my number, using the same values in the same order as your test in Step 27, above. 36. Terminate the script session: % Ctrl - D Script done, file is pp1.txt This is like turning off the tape recorder. 37. You should now have a script file named pp1.txt that contains a complete record of the scripting session. Check to make sure that you have the file: % ls my number my number.f90 pp1.txt 38. Print your script file. The best way to print from a PC in Carson 206 is to use MS Wordpad: Start Programs Wordpad followed by File Open At the top of the Open window, next to Look in, select: yourusername on washington.coe.ou.edu (H:) Then double click on your CS1313 folder. 8
9 In the text box named Files of type select: All Documents (*.*) Open the file that you want to print (e.g., pp1.txt). Next, at the top of the WordPad window, traverse Format Font and choose Courier New, which is a fixed width font appropriate for computer programs; use a size of 10 to 12. Then traverse File Print Select as your printer either CEC206HP on Tyler or CEC206INK on Tyler. Then click Print. 39. Using a word processor, text editor or typewriter, create and print the following items: (a) A cover sheet with the following information: i. Project number and name ii. Course number, name and semester iii. Author name and address iv. Lab section, day and time For example: Project #1: Thinking of a Number Class: CS Programming for Non-majors, Spring 2003 Author: Lee Kim (leekim@ou.edu) Lab: Section 012 Friday 1:30pm Notice that this information is the same as in the comment block at the beginning of my number.f90. (b) A summary essay about the project, in your own words (see below). Note: the cover should be on a separate page from the summary essay. 40. When you are done, log out of both the Linux computer and the Windows PC. 41. Bind the cover sheet (on top), the summary essay (next), and the pages of the script file in order (last), with at least an adequate staple. No paper clips, duct tape, yarn, etc. The Summary Essay For each CS1313 programming project, the summary essay will be worth at least 10% of the project s total value (i.e., a full letter grade) and should cover the following points: The nature of the problem to be solved An abstract description of the method of solving the problem that you used A list of the concrete steps by which you implemented your method The issues that you had to address during implementation The concepts that you learned from this project References as appropriate: EVERY summary essay must include a references section, which may be marked none if there are no appropriate references. For Programming Project #1, the summary should be at least half a page single spaced, or a full page double spaced, with a font of 10 to 12 points. For future programming projects, the summary may need to be longer. 9
10 Notes READ THIS PROJECT SPECIFICATION SEVERAL TIMES, CAREFULLY. It is YOUR responsibility to read and comply with it. Failure to follow directions will cost you a significant amount of points on this and all assignments. The fact that you didn t notice something will NOT excuse you from complying with it. You will use the same basic process for every programming project in this course. Since your programming projects are 55% of your grade, each one may be worth half a letter grade or more. You ll want to do them all, and to do them well. You are expected to keep a copy of your source code and your script file on your ECS account through the end of the semester. Do not delete either file! If something goes wrong with your printout, these files will be your only proof that you ve done the work. In addition, you may be assigned mini-projects that require you to modify a completed project; if you ve deleted that project, then you may have to do the whole thing from scratch in a very limited amount of time. We strongly recommend that you do NOT attempt extra, unrequested tasks on any assignment. While doing extra work is admirable in principle, in practice it creates a significant chance that you will be unable to complete the assignment on deadline. Unrequested extra work will NOT gain you extra credit. In some cases we may assign bonus work, which will be worth extra credit and which we encourage you to try; otherwise, it may be foolhardy to complicate a given assignment unnecessarily. The perfect is the enemy of the good. To be a good programmer, you need the following: Patience Designing, writing and debugging programs takes a lot of time. Persistence Often, you will find yourself stuck without knowing how to proceed; do not give up. Pessimism Just because you have a design, that doesn t mean it ll be easy to write the program. Just because you ve written the program, that doesn t mean it ll compile. Just because it compiles, that doesn t mean it ll run. Just because it runs, that doesn t mean it ll produce the correct answer. Just because it produces the correct answer, that doesn t mean that the printer works. Practice Just like writing prose, or welding, programming is learned by doing, not by theorizing. 10
CS : Computer Programming, Spring 2000 Programming Project #1: Thinking of a Number Due in class Thursday 27 January 2000
CS 1313 010: Computer Programming, Spring 2000 Programming Project #1: Thinking of a Number Due in class Thursday 27 January 2000 For online help check the class website http://www.ecn.ou.edu/cs1313010/
More informationIntroduction to Using OSCER s Linux Cluster Supercomputer This exercise will help you learn to use Sooner, the
Introduction to Using OSCER s Linux Cluster Supercomputer http://www.oscer.ou.edu/education.php This exercise will help you learn to use Sooner, the Linux cluster supercomputer administered by the OU Supercomputing
More informationCS : Programming for Non-majors, Spring 2018 Programming Project #1: Thinking of a Number Due by 10:20am Wednesday January
CS 1313 010: Programming for Non-majors, Spring 2018 Programming Project #1: Thinking of a Number Due by 10:20am Wednesday January 31 2018 This first assignment will help you learn to use the Linux computers
More informationCS : Programming for Non-majors, Fall 2018 Programming Project #2: Census Due by 10:20am Wednesday September
CS 1313 010: Programming for Non-majors, Fall 2018 Programming Project #2: Census Due by 10:20am Wednesday September 19 2018 This second assignment will introduce you to designing, developing, testing
More informationIntro to HPC Exercise
Intro to HPC Exercise Lab Exercise: Introduction to HPC The assumption is that you have already tested your Amazon Web Service Elastic Compute Cloud (EC2) virtual machines chosen for the LCI hands on exercises.
More informationCS : Programming for Non-majors, Summer 2007 Programming Project #2: Census Due by 12:00pm (noon) Wednesday June
CS 1313 010: Programming for Non-majors, Summer 2007 Programming Project #2: Census Due by 12:00pm (noon) Wednesday June 20 2007 This second assignment will introduce you to designing, developing, testing
More informationUsing the Zoo Workstations
Using the Zoo Workstations Version 1.86: January 16, 2014 If you ve used Linux before, you can probably skip many of these instructions, but skim just in case. Please direct corrections and suggestions
More informationCMSC 201 Spring 2018 Lab 01 Hello World
CMSC 201 Spring 2018 Lab 01 Hello World Assignment: Lab 01 Hello World Due Date: Sunday, February 4th by 8:59:59 PM Value: 10 points At UMBC, the GL system is designed to grant students the privileges
More informationTemple University Computer Science Programming Under the Linux Operating System January 2017
Temple University Computer Science Programming Under the Linux Operating System January 2017 Here are the Linux commands you need to know to get started with Lab 1, and all subsequent labs as well. These
More informationCS : Programming for Non-Majors, Fall 2018 Programming Project #5: Big Statistics Due by 10:20am Wednesday November
CS 1313 010: Programming for Non-Majors, Fall 2018 Programming Project #5: Big Statistics Due by 10:20am Wednesday November 7 2018 This fifth programming project will give you experience writing programs
More informationCMSC 201 Spring 2017 Lab 01 Hello World
CMSC 201 Spring 2017 Lab 01 Hello World Assignment: Lab 01 Hello World Due Date: Sunday, February 5th by 8:59:59 PM Value: 10 points At UMBC, our General Lab (GL) system is designed to grant students the
More informationLab 1 Introduction to UNIX and C
Name: Lab 1 Introduction to UNIX and C This first lab is meant to be an introduction to computer environments we will be using this term. You must have a Pitt username to complete this lab. The doc is
More informationLAB #5 Intro to Linux and Python on ENGR
LAB #5 Intro to Linux and Python on ENGR 1. Pre-Lab: In this lab, we are going to download some useful tools needed throughout your CS career. First, you need to download a secure shell (ssh) client for
More informationEditing, Compiling, Executing and Submitting Programs
Editing, Compiling, Executing and Submitting Programs Quick Start Compile step once always mkdir labs javac Realtor.java cd labs mkdir 0 Execute step java Realtor cd 0 Submit step emacs Realtor.java &
More informationCSC 112 Lab 1: Introduction to Unix and C++ Fall 2009
CSC 112 Lab 1: Introduction to Unix and C++ Fall 2009 Due: Friday, September 4 th, 9:00am Introduction The operating system of a computer is the coordinator of all of the computer s activities, including
More informationExploring UNIX: Session 3
Exploring UNIX: Session 3 UNIX file system permissions UNIX is a multi user operating system. This means several users can be logged in simultaneously. For obvious reasons UNIX makes sure users cannot
More informationCSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209
CSC209 Software Tools and Systems Programming https://mcs.utm.utoronto.ca/~209 What is this Course About? Software Tools Using them Building them Systems Programming Quirks of C The file system System
More informationUNLV Computer Science Department CS 135 Lab Manual
UNLV Computer Science Department CS 135 Lab Manual prepared by Lee Misch revised July 2013 CS 135 Lab Manual Content Page Introduction 3 CS Computer Accounts. 3 TBE B361 Computer Basics. 3 Choosing an
More informationCS 215 Fundamentals of Programming II Spring 2019 Very Basic UNIX
CS 215 Fundamentals of Programming II Spring 2019 Very Basic UNIX This handout very briefly describes how to use Unix and how to use the Linux server and client machines in the EECS labs that dual boot
More informationLab 1: Introduction to C, ASCII ART & the Linux Command Line
.i.-' `-. i..' `/ \' _`.,-../ o o \.' ` ( / _\ /_ \ ) \\\ (_.'.'"`.`._) /// \\`._(..: :..)_.'// \`. \.:-:. /.'/ `-i-->..
More informationCpSc 1111 Lab 1 Introduction to Unix Systems, Editors, and C
CpSc 1111 Lab 1 Introduction to Unix Systems, Editors, and C Welcome! Welcome to your CpSc 111 lab! For each lab this semester, you will be provided a document like this to guide you. This material, as
More informationCS Fundamentals of Programming II Fall Very Basic UNIX
CS 215 - Fundamentals of Programming II Fall 2012 - Very Basic UNIX This handout very briefly describes how to use Unix and how to use the Linux server and client machines in the CS (Project) Lab (KC-265)
More informationIntroduction to UNIX. Logging in. Basic System Architecture 10/7/10. most systems have graphical login on Linux machines
Introduction to UNIX Logging in Basic system architecture Getting help Intro to shell (tcsh) Basic UNIX File Maintenance Intro to emacs I/O Redirection Shell scripts Logging in most systems have graphical
More informationCP Lab 1: Introduction to DICE and the C compiler
Computer Programming (CP) Lab 1, 2017/18 1 CP Lab 1: Introduction to DICE and the C compiler Instructions The main purpose of this Lab is to teach you to become familiar with the DICE environment this
More informationCSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209
CSC209 Software Tools and Systems Programming https://mcs.utm.utoronto.ca/~209 What is this Course About? Software Tools Using them Building them Systems Programming Quirks of C The file system System
More informationTable Of Contents. 1. Zoo Information a. Logging in b. Transferring files 2. Unix Basics 3. Homework Commands
Table Of Contents 1. Zoo Information a. Logging in b. Transferring files 2. Unix Basics 3. Homework Commands Getting onto the Zoo Type ssh @node.zoo.cs.yale.edu, and enter your netid pass when prompted.
More information1. What statistic did the wc -l command show? (do man wc to get the answer) A. The number of bytes B. The number of lines C. The number of words
More Linux Commands 1 wc The Linux command for acquiring size statistics on a file is wc. This command provides the line count, word count and number of bytes in a file. Open up a terminal, make sure you
More informationUnix tutorial. Thanks to Michael Wood-Vasey (UPitt) and Beth Willman (Haverford) for providing Unix tutorials on which this is based.
Unix tutorial Thanks to Michael Wood-Vasey (UPitt) and Beth Willman (Haverford) for providing Unix tutorials on which this is based. Terminal windows You will use terminal windows to enter and execute
More informationOperating System Interaction via bash
Operating System Interaction via bash bash, or the Bourne-Again Shell, is a popular operating system shell that is used by many platforms bash uses the command line interaction style generally accepted
More informationMills HPC Tutorial Series. Linux Basics I
Mills HPC Tutorial Series Linux Basics I Objectives Command Line Window Anatomy Command Structure Command Examples Help Files and Directories Permissions Wildcards and Home (~) Redirection and Pipe Create
More informationUnix Tutorial Haverford Astronomy 2014/2015
Unix Tutorial Haverford Astronomy 2014/2015 Overview of Haverford astronomy computing resources This tutorial is intended for use on computers running the Linux operating system, including those in the
More informationLinux File System and Basic Commands
Linux File System and Basic Commands 0.1 Files, directories, and pwd The GNU/Linux operating system is much different from your typical Microsoft Windows PC, and probably looks different from Apple OS
More informationIntroduction to Unix CHAPTER 6. File Systems. Permissions
CHAPTER 6 Introduction to Unix The Unix operating system is an incredibly powerful and complex system that is ideal for running a distributed system such as ours, particularly since we use computers primarily
More informationCS4023 Week04 Lab Exercise
CS4023 Week04 Lab Exercise Lab Objective: We will use this lab to log in to our Linux accounts and to look at some simple programs that perform a few elementary system calls. By the end of the lab we will
More informationCSC111 Computer Science II
CSC111 Computer Science II Lab 1 Getting to know Linux Introduction The purpose of this lab is to introduce you to the command line interface in Linux. Getting started In our labs If you are in one of
More informationChapter-3. Introduction to Unix: Fundamental Commands
Chapter-3 Introduction to Unix: Fundamental Commands What You Will Learn The fundamental commands of the Unix operating system. Everything told for Unix here is applicable to the Linux operating system
More informationIntroduction to Unix - Lab Exercise 0
Introduction to Unix - Lab Exercise 0 Along with this document you should also receive a printout entitled First Year Survival Guide which is a (very) basic introduction to Unix and your life in the CSE
More informationTiny Instruction Manual for the Undergraduate Mathematics Unix Laboratory
Tiny Instruction Manual for the Undergraduate Mathematics Unix Laboratory 1 Logging In When you sit down at a terminal and jiggle the mouse to turn off the screen saver, you will be confronted with a window
More informationGetting started with UNIX/Linux for G51PRG and G51CSA
Getting started with UNIX/Linux for G51PRG and G51CSA David F. Brailsford Steven R. Bagley 1. Introduction These first exercises are very simple and are primarily to get you used to the systems we shall
More informationCISC 220 fall 2011, set 1: Linux basics
CISC 220: System-Level Programming instructor: Margaret Lamb e-mail: malamb@cs.queensu.ca office: Goodwin 554 office phone: 533-6059 (internal extension 36059) office hours: Tues/Wed/Thurs 2-3 (this week
More informationCSCI 161: Introduction to Programming I Lab 1a: Programming Environment: Linux and Eclipse
CSCI 161: Introduction to Programming I Lab 1a: Programming Environment: Linux and Eclipse Goals - to become acquainted with the Linux/Gnome environment Overview For this lab, you will login to a workstation
More informationContents. Note: pay attention to where you are. Note: Plaintext version. Note: pay attention to where you are... 1 Note: Plaintext version...
Contents Note: pay attention to where you are........................................... 1 Note: Plaintext version................................................... 1 Hello World of the Bash shell 2 Accessing
More informationIntermediate Programming, Spring Misha Kazhdan
600.120 Intermediate Programming, Spring 2017 Misha Kazhdan Outline Unix/Linux command line Basics of the Emacs editor Compiling and running a simple C program Cloning a repository Connecting to ugrad
More informationIntroduction to the Linux Command Line
Introduction to the Linux Command Line May, 2015 How to Connect (securely) ssh sftp scp Basic Unix or Linux Commands Files & directories Environment variables Not necessarily in this order.? Getting Connected
More informationUTA Tech Orientation Spring 2019
UTA Tech Orientation Spring 2019 Overview Why is Tech Stuff Important? The Filesystem Shell Commands File Permissions Miscellaneous Why is Tech Stuff Important? Why is TA Tech Stuff Important? Different
More informationCMSC 201 Fall 2016 Lab 09 Advanced Debugging
CMSC 201 Fall 2016 Lab 09 Advanced Debugging Assignment: Lab 09 Advanced Debugging Due Date: During discussion Value: 10 points Part 1: Introduction to Errors Throughout this semester, we have been working
More informationShell Programming Overview
Overview Shell programming is a way of taking several command line instructions that you would use in a Unix command prompt and incorporating them into one program. There are many versions of Unix. Some
More informationIntroduction. SSH Secure Shell Client 1
SSH Secure Shell Client 1 Introduction An SSH Secure Shell Client is a piece of software that allows a user to do a number of functions. Some of these functions are: file transferring, setting permissions,
More informationCSCI 161: Introduction to Programming I Lab 1b: Hello, World (Eclipse, Java)
Goals - to learn how to compile and execute a Java program - to modify a program to enhance it Overview This activity will introduce you to the Java programming language. You will type in the Java program
More informationCS 460 Linux Tutorial
CS 460 Linux Tutorial http://ryanstutorials.net/linuxtutorial/cheatsheet.php # Change directory to your home directory. # Remember, ~ means your home directory cd ~ # Check to see your current working
More informationRefresher workshop in programming for polytechnic graduates General Java Program Compilation Guide
Refresher workshop in programming for polytechnic graduates General Java Program Compilation Guide Overview Welcome to this refresher workshop! This document will serve as a self-guided explanation to
More informationCS/IT 114 Introduction to Java, Part 1 FALL 2016 CLASS 3: SEP. 13TH INSTRUCTOR: JIAYIN WANG
CS/IT 114 Introduction to Java, Part 1 FALL 2016 CLASS 3: SEP. 13TH INSTRUCTOR: JIAYIN WANG 1 Notice Reading Assignment Chapter 1: Introduction to Java Programming Homework 1 It is due this coming Sunday
More informationTutorial 1: Unix Basics
Tutorial 1: Unix Basics To log in to your ece account, enter your ece username and password in the space provided in the login screen. Note that when you type your password, nothing will show up in the
More informationOnce you have installed MobaXterm, open MobaXterm. Go to Sessions -> New Session, and click on the SSH icon.
Lab 1 In order to get credit for the lab, you need to be checked off by the end of lab. For nonzero labs, you can earn a maximum of 3 points for lab work completed outside of lab time, but you must finish
More informationGetting Started With UNIX Lab Exercises
Getting Started With UNIX Lab Exercises This is the lab exercise handout for the Getting Started with UNIX tutorial. The exercises provide hands-on experience with the topics discussed in the tutorial.
More informationProgramming Standards: You must conform to good programming/documentation standards. Some specifics:
CS3114 (Spring 2011) PROGRAMMING ASSIGNMENT #3 Due Thursday, April 7 @ 11:00 PM for 100 points Early bonus date: Wednesday, April 6 @ 11:00 PM for a 10 point bonus Initial Schedule due Thursday, March
More informationLab 1: Setup 12:00 PM, Sep 10, 2017
CS17 Integrated Introduction to Computer Science Hughes Lab 1: Setup 12:00 PM, Sep 10, 2017 Contents 1 Your friendly lab TAs 1 2 Pair programming 1 3 Welcome to lab 2 4 The file system 2 5 Intro to terminal
More informationUNIX File Hierarchy: Structure and Commands
UNIX File Hierarchy: Structure and Commands The UNIX operating system organizes files into a tree structure with a root named by the character /. An example of the directory tree is shown below. / bin
More informationUNLV Computer Science Department CS 135 Lab Manual
UNLV Computer Science Department CS 135 Lab Manual prepared by Lee Misch revised January 2018 CS 135 Lab Manual Content Page Introduction 3 CS Computer Accounts. 3 TBE B361 Computer Basics. 4 Logging In
More informationThe print queue was too long. The print queue is always too long shortly before assignments are due. Print your documentation
Chapter 1 CS488/688 F17 Assignment Format I take off marks for anything... A CS488 TA Assignments are due at the beginning of lecture on the due date specified. More precisely, all the files in your assignment
More informationCENG 334 Computer Networks. Laboratory I Linux Tutorial
CENG 334 Computer Networks Laboratory I Linux Tutorial Contents 1. Logging In and Starting Session 2. Using Commands 1. Basic Commands 2. Working With Files and Directories 3. Permission Bits 3. Introduction
More informationProject 1 Balanced binary
CMSC262 DS/Alg Applied Blaheta Project 1 Balanced binary Due: 7 September 2017 You saw basic binary search trees in 162, and may remember that their weakness is that in the worst case they behave like
More informationPhysics 306 Computing Lab 1: Hello, World!
1. Introduction Physics 306 Computing Lab 1: Hello, World! In today s lab, you will learn how to write simple programs, to compile them, and to run them. You will learn about input and output, variables,
More informationEXCEL BASICS: MICROSOFT OFFICE 2007
EXCEL BASICS: MICROSOFT OFFICE 2007 GETTING STARTED PAGE 02 Prerequisites What You Will Learn USING MICROSOFT EXCEL PAGE 03 Opening Microsoft Excel Microsoft Excel Features Keyboard Review Pointer Shapes
More informationLab 1 Introduction to UNIX and C
Name: Lab 1 Introduction to UNIX and C This first lab is meant to be an introduction to computer environments we will be using this term. You must have a Pitt username to complete this lab. NOTE: Text
More informationGetting Started With Linux and Fortran Part 2
Getting Started With Linux and Fortran Part 2 by Simon Campbell [The K Desktop Environment, one of the many desktops available for Linux] ASP 3012 (Stars) Computer Tutorial 2 1 Contents 1 Some Funky Linux
More informationLab: Supplying Inputs to Programs
Steven Zeil May 25, 2013 Contents 1 Running the Program 2 2 Supplying Standard Input 4 3 Command Line Parameters 4 1 In this lab, we will look at some of the different ways that basic I/O information can
More informationLab #0 Getting Started Due In Your Lab, August 25, 2004
Lab #0 Getting Started Due In Your Lab, August 25, 2004 Name: Lab Time: Grade: /10 Man UNIX systems contain on-line manuals called man pages that are accessed through the program man. To find out how to
More informationSpring 2017 Gabriel Kuri
Lab 2 ECE 431L Spring 2017 Gabriel Kuri This lab is made up of two parts. Part 1 will consist of familiarizing yourself with the Raspberry Pi (RPi). It includes running Unix/Linux commands to become somewhat
More informationLab 2 Building on Linux
Lab 2 Building on Linux Assignment Details Assigned: January 28 th, 2013. Due: January 30 th, 2013 at midnight. Background This assignment should introduce the basic development tools on Linux. This assumes
More informationCS 1110 SPRING 2016: GETTING STARTED (Jan 27-28) First Name: Last Name: NetID:
CS 1110 SPRING 2016: GETTING STARTED (Jan 27-28) http://www.cs.cornell.edu/courses/cs1110/2016sp/labs/lab01/lab01.pdf First Name: Last Name: NetID: Goals. Learning a computer language is a lot like learning
More informationUnix basics exercise MBV-INFX410
Unix basics exercise MBV-INFX410 In order to start this exercise, you need to be logged in on a UNIX computer with a terminal window open on your computer. It is best if you are logged in on freebee.abel.uio.no.
More informationHistory. Terminology. Opening a Terminal. Introduction to the Unix command line GNOME
Introduction to the Unix command line History Many contemporary computer operating systems, like Microsoft Windows and Mac OS X, offer primarily (but not exclusively) graphical user interfaces. The user
More informationUser Guide Version 2.0
User Guide Version 2.0 Page 2 of 8 Summary Contents 1 INTRODUCTION... 3 2 SECURESHELL (SSH)... 4 2.1 ENABLING SSH... 4 2.2 DISABLING SSH... 4 2.2.1 Change Password... 4 2.2.2 Secure Shell Connection Information...
More information9 and 11-Jan CSCI 4152/6509 Natural Language Processing Lab 1: FCS Computing Environment, SVN Tutorial. FCS Computing Environment, SVN Tutorial
Lecture 1 p.1 Faculty of Computer Science, Dalhousie University CSCI 4152/6509 Natural Language Processing Lab 1: FCS Computing Environment, SVN Tutorial 9 and 11-Jan-2019 Lab Instructor: Dijana Kosmajac,
More informationGetting started with Hugs on Linux
Getting started with Hugs on Linux CS190 Functional Programming Techniques Dr Hans Georg Schaathun University of Surrey Autumn 2008 Week 1 Dr Hans Georg Schaathun Getting started with Hugs on Linux Autumn
More informationCS 2400 Laboratory Assignment #1: Exercises in Compilation and the UNIX Programming Environment (100 pts.)
1 Introduction 1 CS 2400 Laboratory Assignment #1: Exercises in Compilation and the UNIX Programming Environment (100 pts.) This laboratory is intended to give you some brief experience using the editing/compiling/file
More informationIntroduction to Unix and Linux. Workshop 1: Directories and Files
Introduction to Unix and Linux Workshop 1: Directories and Files Genomics Core Lab TEXAS A&M UNIVERSITY CORPUS CHRISTI Anvesh Paidipala, Evan Krell, Kelly Pennoyer, Chris Bird Genomics Core Lab Informatics
More informationCMSC 201 Spring 2018 Project 3 Minesweeper
CMSC 201 Spring 2018 Project 3 Minesweeper Assignment: Project 3 Minesweeper Due Date: Design Document: Friday, May 4th, 2018 by 8:59:59 PM Project: Friday, May 11th, 2018 by 8:59:59 PM Value: 80 points
More information: the User (owner) for this file (your cruzid, when you do it) Position: directory flag. read Group.
CMPS 12L Introduction to Programming Lab Assignment 2 We have three goals in this assignment: to learn about file permissions in Unix, to get a basic introduction to the Andrew File System and it s directory
More informationPrinciples of Bioinformatics. BIO540/STA569/CSI660 Fall 2010
Principles of Bioinformatics BIO540/STA569/CSI660 Fall 2010 Lecture Five Practical Computing Skills Emphasis This time it s concrete, not abstract. Fall 2010 BIO540/STA569/CSI660 3 Administrivia Monday
More informationLab 1: Getting Started with Linux The Extremely Illustrated Version. Graham Northup
Lab 1: Getting Started with Linux The Extremely Illustrated Version Graham Northup In today s lab, we ll be getting started with Linux and, perhaps more importantly, it s terminal. As we will be using
More informationUsing LINUX a BCMB/CHEM 8190 Tutorial Updated (1/17/12)
Using LINUX a BCMB/CHEM 8190 Tutorial Updated (1/17/12) Objective: Learn some basic aspects of the UNIX operating system and how to use it. What is UNIX? UNIX is the operating system used by most computers
More informationDue: February 26, 2014, 7.30 PM
Jackson State University Department of Computer Science CSC 438-01/539-01 Systems and Software Security, Spring 2014 Instructor: Dr. Natarajan Meghanathan Project 1: Exploring UNIX Access Control in a
More informationScience One CS : Getting Started
Science One CS 2018-2019: Getting Started Note: if you are having trouble with any of the steps here, do not panic! Ask on Piazza! We will resolve them this Friday when we meet from 10am-noon. You can
More informationCSC 101 Spring 2010 Lab #8 Report Gradesheet
CSC 101 Spring 2010 Lab #8 Report Gradesheet Name WFU Username Lab Section: A B C D Partner s Name (if you had one): Topic Points Notes Pre-lab questions 20 total - 5 at 4 points each Lab report questions
More informationIntroduction to the Emacs Editor
Introduction to the Emacs Editor Scott D. Anderson Wellesley College Scott.Anderson@acm.org c Fall 2004 1 What is Emacs? Emacs is an editor: a program that allows you to modify files. Many of you have
More information15-122: Principles of Imperative Computation
15-122: Principles of Imperative Computation Lab 0 Navigating your account in Linux Tom Cortina, Rob Simmons Unlike typical graphical interfaces for operating systems, here you are entering commands directly
More informationGetting Started. Excerpted from Hello World! Computer Programming for Kids and Other Beginners
Getting Started Excerpted from Hello World! Computer Programming for Kids and Other Beginners EARLY ACCESS EDITION Warren D. Sande and Carter Sande MEAP Release: May 2008 Softbound print: November 2008
More informationHello World! Computer Programming for Kids and Other Beginners. Chapter 1. by Warren Sande and Carter Sande. Copyright 2009 Manning Publications
Hello World! Computer Programming for Kids and Other Beginners by Warren Sande and Carter Sande Chapter 1 Copyright 2009 Manning Publications brief contents Preface xiii Acknowledgments xix About this
More informationCS1600 Lab Assignment 1 Spring 2016 Due: Feb. 2, 2016 POINTS: 10
CS1600 Lab Assignment 1 Spring 2016 Due: Feb. 2, 2016 POINTS: 10 PURPOSE: The purpose of this lab is to acquaint you with the C++ programming environment on storm. PROCEDURES: You will use Unix/Linux environment
More informationIntroduction in Unix. Linus Torvalds Ken Thompson & Dennis Ritchie
Introduction in Unix Linus Torvalds Ken Thompson & Dennis Ritchie My name: John Donners John.Donners@surfsara.nl Consultant at SURFsara And Cedric Nugteren Cedric.Nugteren@surfsara.nl Consultant at SURFsara
More informationIntroduction to Linux
Introduction to Linux The command-line interface A command-line interface (CLI) is a type of interface, that is, a way to interact with a computer. Window systems, punched cards or a bunch of dials, buttons
More informationEXCEL BASICS: MICROSOFT OFFICE 2010
EXCEL BASICS: MICROSOFT OFFICE 2010 GETTING STARTED PAGE 02 Prerequisites What You Will Learn USING MICROSOFT EXCEL PAGE 03 Opening Microsoft Excel Microsoft Excel Features Keyboard Review Pointer Shapes
More informationIntroduction to Linux Spring 2014, Section 02, Lecture 3 Jason Tang
Introduction to Linux Spring 2014, Section 02, Lecture 3 Jason Tang Topics What is an Operating System Overview of Linux Linux commands Shell Submit system What is an Operating System? Special type of
More informationDEPARTMENT OF MATHEMATICS. RAMLab User Guide. An Introduction to the Ryerson Applied Mathematics Laboratory
DEPARTMENT OF MATHEMATICS An Introduction to the Ryerson Applied Mathematics Laboratory 11/10/2010 Deparment of Mathematics Ryerson University 350 Victoria Street M5B 2K3 2010 by Department of Mathematics,
More informationSPEECH RECOGNITION COMMON COMMANDS
SPEECH RECOGNITION COMMON COMMANDS FREQUENTLY USED COMMANDS The table below shows some of the most commonly used commands in Windows Speech Recognition. The words in italics indicate that many different
More informationThis lab exercise is to be submitted at the end of the lab session! passwd [That is the command to change your current password to a new one]
Data and Computer Security (CMPD414) Lab II Topics: secure login, moving into HOME-directory, navigation on Unix, basic commands for vi, Message Digest This lab exercise is to be submitted at the end of
More informationIntroduction: What is Unix?
Introduction Introduction: What is Unix? An operating system Developed at AT&T Bell Labs in the 1960 s Command Line Interpreter GUIs (Window systems) are now available Introduction: Unix vs. Linux Unix
More informationINTRODUCTION TO BIOINFORMATICS
Introducing the LINUX Operating System BecA-ILRI INTRODUCTION TO BIOINFORMATICS Mark Wamalwa BecA- ILRI Hub, Nairobi, Kenya h"p://hub.africabiosciences.org/ h"p://www.ilri.org/ m.wamalwa@cgiar.org 1 What
More information