1 / 22

Introduction to Computer Programming Concepts

Introduction to Computer Programming Concepts. M. Uyguro ğlu R. Uyguroğlu. Computer Programming. Computers do what we tell them to do, NOT what we want them to do Computer Programming involves writing instructions and giving them to the computer to complete a task.

feo
Télécharger la présentation

Introduction to Computer Programming Concepts

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. Introduction to Computer Programming Concepts M. Uyguroğlu R. Uyguroğlu

  2. Computer Programming • Computers do what we tell them to do, NOT what we want them to do • Computer Programming involves writing instructions and giving them to the computer to complete a task.

  3. What is a Computer Program? • A computer program is a set of instructions written in a computer language, in order to be executed to perform a specific task. • There are tens of programming languages, used nowadays. • Computer Programs are also named as SOFTWARE.

  4. What is a Computer Program? • There are different types of software available. Some of them are: • Operating System Software (Win 9x, 2000, Unix, Linux, …). • Compilers and Interpreters (Used with Programming Lang.). • Application Software (Payroll system, Accounting System). • Embedded System Software (Used in TV sets, telephones). • Utilities and Tools for productivity (MS Word, Excel, …).

  5. Who is a Programmer? • A programmer is a person who writes the required computer programs. • Programmers translate the expected tasks given in human understandable form into machine understandable form by using compilers and interpreters.

  6. Compiler & Interpreter • Compiler is a specific software that gets the whole Source Code (Computer program written in human understandable form) and translates it into Object Code (Computer Program that is in machine understandable form) all at a time. • Interpreter is translating and executing one statement (command of Computer Program) of Source Code into Object Code at a time. (It means, interpreters translate and execute computer programs line by line).

  7. Execution of a Program. Using Compiler: Object Code Compiler Source Code Execute Program Using Interpreter: Interpreter Source Code Execute a line of Program

  8. Well Designed Programs. • Well designed programs must be: • Correct and accurate • Easy to understand • Easy to maintain and update • Efficient • Reliable • flexible

  9. Programming Process • Problem definition • What must the program do? • What outputs are required and in what form? • What inputs are available and in what form? Example: Find a maximum of two numbers • Input two numbers, compare them and print the maximum value • Inputs and outputs are decimal numbers • Inputs are entered from the keyboard • Result is shown on the monitor

  10. Programming Process 2. Program Design involves creating an algorithm – sequence of steps, by which a computer can produce the required outputs from the available inputs Top-down design • The main problem is split into subtasks • Then each subtask is divided into simpler subtasks, etc. unless it is clear how to solve all such subtasks

  11. Programming Process #include <stdio.h> int main() { int number1, number2; int maximum; printf("Please, enter two numbers: "); scanf("%d %d", &number1, &number2); if (number1 >= number2) maximum = number1; else maximum = number2; printf(“%d is maximum\n“, maximum); return 0; } 3. Program Coding means expressing the algorithm developed for solving a problem, in a programming language • Example of source code is on the right

  12. Programming Process • Program Compilation – translation of a program written in a high-level programming language into machine language instructions • Compilation step converts a source program into an intermediate form, called object code • Linking step is necessary to combine this object code with other code to produce an executable program • The advantage of this two-step approach: • Source of the large program may be split into more than one file • These files are worked on and compiled separately • Object code may be stored in libraries and used for many programs • Then they will be combined into one executable code

  13. Programming Process 4. Program Testing & Debugging • Initially, almost all programs may contain a few errors, or bugs • Testing is necessary to find out if the program produces a correct result. Usually it is performed with sample data • Debugging is the process of locating and removing errors

  14. Types of Errors. • Syntax Errors: Violation of syntactic rules in a Programming Language generates syntax errors. • Effect? Interpreter or Compiler finds it in Syntax Check Phase. • Semantic Errors: Doing logical mistakes causes semantic errors in Source code. • Effect? Interpreters and Compilers can not notice them, but on execution, they causes unexpected results. • Run-time Errors: Occur on program execution. Mostly caused by invalid data entry or tries to use not existing resources. • Effect? It occurs on run time and may crash the program execution

  15. Successful Programming • For successful programming • give no ambiguity in program instructions • give no possibility of alternative interpretations • make sure there is only one course of action

  16. Programming • Programming task can be made easier • by breaking large and complex programsinto smaller and less complex subprograms (modules) • Programming task can be separated into 2 phases (see Fig. 1) • problem solving phase • produce an ordered sequence of steps that describe solution of problem • this sequence of steps is called an algorithm • implementation phase • implement the program in some programming language (Pascal, Basic, C)

  17. Programming Difficult way

  18. What is structured programming • a programming technique that splits the program into smaller segments (modules) to • decrease program development time • decrease program maintenance cost • improve the quality of software • structured programming achieves these goals by using • top-down design and use of modules • use of limited control structures (sequence, selection and repetition) • management control

  19. Types of Programming Languages. • Low-level languages (Machine Lang., Assembly Lang.). • Machine language is • made up of binary 1s and 0s • this is the only programming language the computers can understand • advantages of machine languages are: • fast execution speed and efficient use of main memory • disadvantages of machine languages are • writing machine language is tedious, difficult and time consuming

  20. Types of Programming Languages • Assembly language is a low-level interface to CPU functions • Example: Mov ax, 1 Mov bx, 2 Add bx

  21. Types of Programming Languages. Assembly Language • Writing programs can be very time-consuming, as you have to directly manipulate CPU registers and use complicated interfaces to I/O devices • Code is assembled to make Machine Language (consisting only of 1’s and 0’s) which is the real language of the CPU

  22. Types of Programming Languages. • High Level Languages. Slower, needs more resources but more user friendly (needs less programming time and it is more easier to develop a program). • Major high-level languages are • FORTRAN, COBOL, PL/I, BASIC, PASCAL, C, LISP, Prolog, Logo

More Related