1 / 29

COSC 120 Computer Programming

COSC 120 Computer Programming. Instructor: Dr. Enyue (Annie) Lu Office hours: click here Office room: HS114 Email: ealu@salisbury.edu Course information: Website: http://faculty.salisbury.edu/~ealu/COSC120/COSC120.html. Course overview. Introduction to Programming Introduction to C++

kinsey
Download Presentation

COSC 120 Computer Programming

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. COSC 120 Computer Programming • Instructor: Dr. Enyue (Annie) Lu • Office hours: click here • Office room: HS114 • Email: ealu@salisbury.edu • Course information: • Website: http://faculty.salisbury.edu/~ealu/COSC120/COSC120.html.

  2. Course overview • Introduction to Programming • Introduction to C++ • Data types • Control structures • Functions • Scope, overloading functions, files • Arrays • Searching & Sorting Arrays • Characters, Strings, and the string Class • Structured Data • Introduction to class • Pointers • Operator overloading • Optional topics

  3. Chapter 1 Introduction to Computers and Programming

  4. Contents • Why Program? • Computer Systems: Hardware and Software • Programs and Programming Languages • What Is a Program Made of? • Input, Processing, and Output • The Programming Process • Procedural and Object-Oriented Programming

  5. Why Program: • Program: a set of instructions to a computer to perform a task • Computer can do many different jobs because of its programmability. Programmer->software->computer

  6. Elements of a Computer System • Hardware • CPU (central processing unit): CU, ALU Fetch/decode/execute • Main Memory: RAM • Byte, bits • Memory address • volatile • Secondary storage • Programs are stored in secondary memory and loaded into main memory • Hard disks, floppy disks, Zip disks and CD • Input/Output devices • Software

  7. Software – Programs That Run on a Computer • Categories of software: • Operating system: programs that manage the computer hardware and the programs that run on them. Ex: Windows, UNIX, Linux - Single tasking, multitasking - Single user, multiuser • Application software: programs that provide services to the user. Ex: word processing, games, programs to solve specific problems

  8. Programs and Programming Languages • Program: a set of instructions to a computer to perform a task • Programming Language: a language used to write programs

  9. Programs and Programming Languages • Types of languages: • Low-level (machine): used for communication with computer hardware directly. Often written in binary machine code (0’s/1’s) directly. • High-level: closer to human language • A compiler or interpreter are programs that make the translations from high-level to low-level languages.

  10. Table 1-1

  11. From a High-level Program to an Executable File connect hardware-specific code (library routines) to machine instructions, producing an executable file convert source file directives to source code program statements Object Code Source Code Linker Preprocessor convert source program statements into machine language instructions Modified Source Code Executable Code Compiler

  12. What Is a Program Made Of? • Common elements in programming languages: • Key Words • Programmer-Defined Symbols • Operators • Punctuation • Syntax

  13. Language Elements, Table 1-2

  14. Example Program #include <iostream> #include <string> using namespace std; int main() { string name; cout << "What is your name? "; cin >> name; cout << "Hello there, " << name; return 0; }

  15. Program 1-1 // This program calculates gross pay. #include <iostream> using namespace std; int main() { float hours, rate, pay; cout << “How many hours did you work? ”; cin >> hours; cout << “How much do you get paid per hour? ”; cin >> rate; pay = hours * rate; cout << “You have earned $” << pay << endl; return 0; }

  16. Key Words • Also known as reserved words • Have a special meaning in C++ • Can not be used for another purpose • Examples in program: • using, namespace, int, main

  17. Programmer-Defined Symbols( Identifiers ) • Names made up by the programmer • Not part of the C++ language • Used to represent various things: • variables (memory locations), functions, etc. • Example in program: • name, hours, rate, calcPay()

  18. Operators • Used to perform operations on data • Many types of operators: • Arithmetic: +, -, *, / • Assignment: = • Examples in program: • << stream insertion operator • >> stream extraction operator

  19. Punctuation • Characters that mark the end of a statement, or that separate items in a list • Examples in program: • ; (),}

  20. Syntax • The rules of grammar that must be followed when writing a program • Controls the use of: • key words • operators • programmer-defined symbols • punctuation

  21. Lines and Statements cout << "How many hours did you work? "; cout << "How many hours " << "did you work? "; There are 2 statements above. • The first statement uses one line • the second statement spans two lines • the semicolon ( ; ) is the statement terminator

  22. Variable Definitions • Two types of information: • numbers and characters • Numbers may be integers or floating-point • The statement below creates three variables in memory named hours, rate, and pay that each can store a floating-point number • float hours, rate, pay;

  23. Input, Processing, and Output Three steps many programs perform: • Gather input data: • from keyboard • from files on disk drives • Process the input data • Generate output: • send it to the screen • write it to a file

  24. Input, Processing, and Output • Output cout << "Enter your hours and rate " << "separated by a space: "; • Input: cin >> hours; cin >> rate; • Processing: pay = hours * rate; • Output cout << “You have earned $” << pay;

  25. Program Output How many hours did you work? 10 How much do you get paid per hour? 15 You have earned $150

  26. The Programming Process • The programming process consists of several steps, which include: • Design • Code • Test • Debug • Document

  27. The Programming Process • Clearly define what the program is to do. Purpose, Inputs /Outputs, Process • Visualize the program running on the computer • Design using a Hierarchy chart, flowchart or pseudocode. • Desk check for logical errors. • Enter/Edit the code and compile it. • Correct any errors found during compilation. • Compile-time error (syntax/grammatical error) • Repeat steps 5 and 6 as many times as necessary • Run the program with test data for input • Correct any errors found while running the program • Run-time errors • Repeat steps 5 through 8 as many times as necessary. • Validate the results of the program.

  28. Procedural and Object-Oriented Programming • Procedural programming: focus is on the process. Procedures/functions are written to process data. • Object-Oriented programming: focus is on objects, which contain data and the means to manipulate the data. Messages are sent to objects to perform operations.

  29. Class Review • Program • A set of instructions to a computer to perform a task • Why computer can do lots of job • Programmability • Elements of computer system • Hardware (CPU, main memory, second storage, I/O), software • Software categories • OS, application software • Programming languages • Low-level, high-level • Transfer a high-level program to an executable file • Preprocess, compile, link • Common elements in programming languages • Keyword, programmer-defined symbols, operators, punctuation, syntax • Which 3 steps most programs perform • Gather input data, process data, generate output

More Related