230 likes | 253 Views
CMSC104 is a course that introduces students to problem solving and computer programming using the C programming language. Topics covered include computer hardware and software concepts, basic computer use, problem solving, and basic programming in C.
E N D
CMSC104 Problem Solving and Computer Programming Fall 2011 Section 4 Richard Chang
Contact Information • Who am I? • Richard Chang • Associate Professor • 20th year at UMBC • BS in Mathematics/Computer Science • PhD in Computer Science • Computational Complexity
Contact Information • Best way to contact me? • Email! chang@umbc.edu • Office hours: • Where? ITE 326 • When? Tues & Thurs: 2:30 – 3:30pm
Am I in the Right Class? • CMSC 104 • Assumes NO programming experience • Prepares you for CMSC 201 • Does NOT count towards the CS major • Meets a requirement for other majors: i.e. Physics, Financial Economics • CMSC 201 • Assumes some programming experience • First CMSC course for CS majors • MUCH more challenging
CMSC100 vs CMSC104 • CMSC100: less technical, less programming, more overview of computer science. • CMSC104: concentrates on programming, you have to learn programming to pass this class.
What Will We Cover? General computer hardware and software concepts Basic computer use Problem solving Basic computer programming in the C programming language
1. General Hardware and Software Concepts • Introduction to computer architecture • Data representation and memory usage • Introduction to operating systems Linux
2. Basic Computer Use • Basic use of • an operating system (Linux) • e-mail (pine) • a text editor
3. Problem Solving • Problem solving and algorithm development • learn problem solving by solving problems • use of top-down design • lots of practice
4. Basic Computer Programming in the C Programming Language • Compiling, linking, and executing a computer program • Testing and debugging a computer program • C programming language basics
Course Web Page • Location: http://umbc.edu/~chang/cs104 • Announcements • Course Syllabus • Homework Assignments • Lecture Notes
Getting a myUMBC Account • You MUST have a myUMBC account • You can get one by going to: http://accounts.umbc.edu (NO www.) • Your account can be used in ~½ hour • Grades, etc.
Computer Science at UMBC • CSEE Student Services Office (Advising) • ITE 203 - 206 • CSHC (Computer Science Help Center) • ITE 201E • Linux Users Group (LUG) • http://lug.umbc.edu
OIT Labs • The Office of Information Technology is responsible for all lab computers. • On Web at: http://www.umbc.edu/doit • Labs with PCs: • ENG021, ENG104, ENG122, ENG122A, ENG333 • Labs may be on reserve for classes, so plan ahead! • Print Dispatch -- ENG 019 (10? cents/page) • Hours of Operations • OIT will post outside of labs or go to: https://wiki.umbc.edu/display/doit/Computing+Labs+and+Facilities
Consultants vs. Tutors • OIT labs are staffed by consultants • using software (pine, Internet Explorer, etc.) • some text editors (xemacs) • operating system commands (Linux) • communicating with UMBC computers (TeraTerm)
Consultants vs. Tutors (con’t) • CSHC is staffed by student tutors • Help with homework and projects • xemacs and Linux questions • ITE 201E – Hours TBA
Hardware and Software Needs • Do I need my own computer? • No, but it is more convenient for you. • If I have my own computer, can I use it? • Yes, but there’s limited help for using your own. • Do I need a C Compiler? • Don’t buy one, the GNU C compiler is free.
Hardware and Software Needs • Windows: TeraTerm (from OIT), WinSCP, NotePad++ • Mac: Developer Tools (free), Terminal + Unix commands, TextWrangler • Linux: Installation is on your own • More later...
Booting into Linux Modify instructions posted on the walls: • press CTRL-ALT-DEL • select “Restart” from pop-up menu next to the shutdown button on bottom right • select “Linux” using arrow key • log in using usual password
Simple UNIX commands • lslists files in the current directory • cat filenamedisplays content of specified file • mkdir dirnamemakes a new directory (a.k.a. folder) • cat > newfilestores console input to file.end using ctrl-D
Classwork #1 • use cat > filenameto store your best(clean) joke or personal motto in a file. • use cat filename to check that your joke or motto was correctly saved. • have neighbor check if joke is funny. If not, rm filenameand try another joke/motto. • submit usingsubmit cs104_chang cw01 filename • check your submission withsubmitls cs104_chang cw01