Introduction CMSC 104 Problem Solving and Computer Programming Section 301, M-W 7:10-8:25 pm Fred Kuss fkuss1@umbc.edu Office: ITE - 373 Mail Box is in: ITE 325 CMSC 104, Lecture 01 1 Text Books Required Text: “Problem Solving: An Introduction to Programming” by Deitel / Hanly Second Edition, ISBN# = 0-536-97579-5 First edition: ISBN# = 0-536-84130-6 CMSC 104, Lecture 01 2 Optional Text Books C How to Program 4th edition by: Deitel & Deitel ISBN# = 0-13-142644-3 1255 pages Problem Solving and Program Design in C by: Jeri Hanly and Elliot Koffman ISBN# = 0-321-40991-4 5th edition, copyright 2007, 899 pages CMSC 104, Lecture 01 3 Optional Text Books Foundations of Computer Science by: Behrouz A. Forouzan ISBN # = 0534-37968-0 Fluency with Information Technolgy Skills, Concepts, and Capabilities by: Lawrence Snyder in 2006 ISBN # = 0-321-35782-5 CMSC 104, Lecture 01 4 Am I in the right class? CMSC 104 o o o Assumes NO programming experience Does NOT count towards your CS major Prepares you for CMSC 201 CMSC 201 o o o o Assumes some programming experience First CMSC course for CS majors Also required for IFSM majors More challenging CMSC 104, Lecture 01 5 What Will We Cover? • General computer hardware and software concepts • Basic computer use • Problem solving • Basic computer programming in the C programming language CMSC 104, Lecture 01 6 General Hardware and Software Concepts • Introduction to computer architecture • Data representation and memory usage • Introduction to operating systems • UNIX / Red Hat Linux, Windows 95,98,NT,2000 CMSC 104, Lecture 01 7 Basic Computer Use • Basic use of • operating systems ( Windows XP, Red Hat Linux ) • e-mail (pine) • a text editor (pico/xemacs) • the Internet (Netscape and/or Internet Explorer) CMSC 104, Lecture 01 8 Problem Solving • Problem solving and algorithm development • general vs. specific solution to a problem • use of top-down design • use of pseudocode • algorithm (code) reuse CMSC 104, Lecture 01 9 Basic Computer Programming in the C Programming Language • Compiling, linking, and executing a computer program • Testing a computer program • C programming language basics CMSC 104, Lecture 01 10 Syllabus On the Web “Lecture Schedule” and Grades are also posted on the Web Refer to the Web throughout the semester CMSC 104, Lecture 01 11 Getting a GL Account at UMBC You MUST have a GL account Go to room ECS 020 (in the basement) and ask at the desk, OR Using the Internet, go to: accounts.umbc.edu (NO www.) Your account can be used in approximately 1/2 hour CMSC 104, Lecture 01 12 Changing your Linux password Login by entering your id and password given on the sheet At the Linux prompt type: passwd <Return> You will be prompted for your new password; type it in and press <Return> You will be asked to type the new password again CMSC 104, Lecture 01 13 Changing your Linux password (continued) You will be given a message that the password has been changed OR you will be given a message that rejects your new password Passwords should be at least 5 characters long, should be something you will remember. Your password will be rejected if it is a commonly used word or name CMSC 104, Lecture 01 14 Computer Science at UMBC CSEE Administrative Offices o ITE 325 CSEE Student Services Office o ITE 202 - 206 Undergrad Advising CSHC (Computer Science Help Center) o ITE 201E 410-455-6336 In the New Building. Advisors: Director = Cathy Bielawski bielawsk@umbc.edu • Courtney Topolski topolski@umbc.edu • Bethany Spore briege1@umbc.edu Help Desk 410-455-3838 Home Page: http://helpdesk.umbc.edu CMSC 104, Lecture 01 15 OIT Labs = www.umbc.edu/oit The Office of Information Technology is responsible for all the lab computers Labs: o ENGR 021 & 021a - PCs, MACs, SGI Workstations o ENGR 104 – 24 PCs Windows XP / Linux o ENGR 104 – 21 PCs Windows XP / Linux o ENGR 122 – 28 PCs Windows XP / Linux o ENGR 122A – 24 PCs Windows XP / Linux o ENGR 333 - PCs o ENGR 336 - MACs Labs may be on reserve so plan ahead ! CMSC 104, Lecture 01 16 OIT Labs (Cont'd) Print Dispatch -- ECS 019 (~cents / page) Hours of Operations o Beginning of Semester, • Monday – Friday 8:00 am – 10 pm • Saturday 8:00 am – 10 pm • Sunday 12:00 noon – 10 pm o During Semester, • Sunday 12 noon – Friday 12 midnight (24 hrs) • Saturday 8:00 am - 12:00 midnight. CMSC 104, Lecture 01 17 Consultants vs Tutors OIT Labs are staffed by consultants o o o o o using software (pine, xrn, netscape, etc.) some text editors (emacs, pico) operating system commands (Unix/Linux) Formatting / Cleaning floppy disks communicating with UMBC computers CSHC is staffed by tutors o o o o Help with homework and projects emacs and Unix / Linux questions ITE 201-E - Hours to be announced www.csee.umbc.edu/~cshc CMSC 104, Lecture 01 18 Logging on from Home High speed line1: 410 - 719 - 1094 High speed line2: 301 - 322 - 6199 o 56. k bps. Settings for both lines o No parity, 8 data bits, 1 stop bit On your computer, you must have o Communications software (Free CD Rom from UMBC Computer Services ECS 020) o A modem CMSC 104, Lecture 01 19 telnet (not used at UMBC), ssh now used Connect to your Internet Service Provider (ISP) Windows 95/NT/98/2000 o click: Start o click: Run o Type: telnet linux1.gl.umbc.edu Login with your UMBC loginname & password. CMSC 104, Lecture 01 20 Hardware & Software Needs Do I need my own computer? o No, but it is more convenient for you If I have my own computer, can I use it? o Sure, but you will using it mostly to login to your GL account or for word processing Do I need a C Compiler? o No, and if you buy one, you may be wasting your $$$. All programming should be done in your GL account. CMSC 104, Lecture 01 21 Course Overview Introduction to Computer Organization and Architecture Data Representation and Memory Usage Introduction to Operating Systems Problem Solving and Algorithm Development Introduction to Software Engineering Using TopDown Design Compiling, Linking and Execution C Programming Reuse Based on Algorithm Selection and Design Techniques CMSC 104, Lecture 01 22