Introduction
CMSC 104
Problem Solving and Computer Programming
Section 401, Tues -Thurs. 7:10-8:25 pm, MP-008
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 Intro to Programming” by Deitel / Burt
Second Edition,
ISBN# = 0536975795
First edition: ISBN# = 0536841306
CMSC 104, Lecture 01 2
Optional Text Books
C How to Program 4 th 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-19803-4
880 pages
CMSC 104, Lecture 01 3
Optional Text Books
Foundations of Computer Science by: Behrouz A. Forouzan
ISBN # = 0534-37968-0
The Computer Continuum by: Kurt Lauckner
ISBN # = 0130898139
CMSC 104, Lecture 01 4
Am I in the right class?
CMSC 104 o
Assumes NO programming experience o
Does NOT count towards your CS major o
Prepares you for CMSC 201
CMSC 201 o
Assumes some programming experience o
First CMSC course for CS majors o
Also required for IFSM majors o
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/Linux, Windows 95,98,NT,2000
CMSC 104, Lecture 01 7
Basic Computer Use
• Basic use of
• an operating system (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 ECS 021 & 021a - PCs, MACs, SGI Workstations o ECS 005 - SGI Workstations o ECS 104 - PCs o ECS 104A - SGI Workstations o ECS 122A - PCs o ECS 333 - PCs o ECS 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 using software (pine, xrn, netscape, etc.) o some text editors (emacs, pico) o operating system commands (Unix/Linux) o Formatting / Cleaning floppy disks o communicating with UMBC computers
CSHC is staffed by tutors o Help with homework and projects o emacs and Unix / Linux questions o ITE 201-E - Hours to be announced o 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 Top-
Down Design
Compiling, Linking and Execution
C Programming
Reuse Based on Algorithm Selection and Design
Techniques
CMSC 104, Lecture 01 22