ALGORITHM & PROGRAMMING LANGUAGE BY BAGJA GUMILAR COPYRIGHT2013
COPYRIGHT2013 Lecture Contents : ‣ Architecture and System of Computer (review) ‣ Introduction of Algorithms ‣ Introduction of Programming Language ‣ C Programming Language ‣ Assembly Programming Language ‣ Design Algorithms & Programming Language (practices) These Lectures are using Student Centred Learning (SCL) Methodes Probably , You need use Laptop or CBT to interaction and practices (learning by doing)
COPYRIGHT2013 Architecture and System of Computer Hardware Software Brainware Computer : - Interfacing - Communication - Networking Operating System : Windows 98/XP/7, Ubuntu (linux), Android, etc. Programming Language : - Assembler (Machine Language) - Programme Editor & Compiler/Interpreter - GUI (Graphic User Interface) Application Programmes : - Communication/Network & Protocol - Multimedia - Interfacing - Office Tools - Database - etc. USER : Programmer, Operator, Cracker & Hacker, etc.
COPYRIGHT2013 Architecture and System of Computer Hardware Software Brainware Computer : - CPU, Memory and I/O-port Interface - Monitor Display - Keyboard Operating System : Windows 98/XP/7, Ubuntu (linux), Android, etc. Programming Language : - Assembler - BASIC - FORTRAN - COBOL - C/C++/C# - JAVA - etc. Application Programmes : - MS-Office - MS-DOS (MS-Windows) - Winamp - Text Editor - Mozilla Firefox - etc. USER : Programmer, Operator, Cracker & Hacker, etc.
COPYRIGHT2013 Introduction of Algorithms Programme Instructions ≈ Source Code statement ≈ Syntax Input Process Output Programme is the source code that have logic and systematically intructions to get right of problem solving. Three main components of programme are input, process and Output.
COPYRIGHT2013 Introduction of Algorithms Algorithms terminology from : Abu Ja’far Mohammed Ibn Musa Al-Khawarizmi (Al-Jabr W’al-muqabala / Rules of Restoration and Reduction) Algorithms Logical Flow Write down Logical Thinking of each person is different Flowchart Pseudocode Fundamental Algorithm (Knuth 1973)
COPYRIGHT2013 Introduction of Algorithms Input Process Output Requirement Design Implementation Testing Application Software Development Need Assesment determine of programme that user needed Programme Interface Prototype, unfunctionality Programme Coding Real function Validation and Verification Requirement programme justify Maintenance Update , Back-up, Up-grade, patched etc.
COPYRIGHT2013 Introduction of Algorithms ALGORITHM STANDARD Donald E. Knuth  Algorithms Criteria : 1. INPUT zero input is undirect input by user, but it’s executing declarated variables. Direct input, user can type in text- box (icon display programme) or using server data-base. 2. OUTPUT minimum : one output for objective programme. It ca be displayed, saved in file/database or saved in clipboard so it can be used (called) on another programme. 3. FINITENESS Absolutly it has to be finished, so it doesn’t hang-up or not responding (unfinitly carry-on). 4. DEFINITENESS it has clearly objectives (what for), when it’s start and when it’s stop. 5. EFFECTIVENESS/EFFECIENCY it doesn’t use memory too much and it has short execute-time.
COPYRIGHT2013 Introduction of Algorithms ALGORITHM TYPE Generally of Basic Algorithm Type: 1. SEQUENCE it has series process, arrangement order. 2. LOOPING/ITERATION it has cycle carry-on, until meet requirement conditions. 3. SPLIT/CONDITION it has fork of choice process, determine of conditions.
COPYRIGHT2013 Introduction of Programming Languages Programming Languages History Language Description Notes 1st Machine Machine code -> microcode Binary code Fast execution but it’s hard to understand by human 2nd Assembly It’s the Robotic and H/W Interfacing programme language. Simple Code (english) with standard instruction (mov, djnz etc.) for simple Arithmatic-operation like as MUL, SUB, ADD and DIV Fast execution, it’s still hard but more simple than binary/microcode. Programme very long. 3rd High Level Language It’s using Syntax in English to building/programming applications. C, BASIC, FORTRAN and PASCAL Easy to use, Program is short but slowly execution.
COPYRIGHT2013 Introduction of Programming Languages Language Description Notes 4th Specific Problem Oriented Visually programme : SQL, HTML, Visual Basic, Delphi and Fox-Pro. Application types: Report Generators, Forms Generators (GUI), Computer Aided S/W Engineering (CASE) and Database Query Language. Directly problem oriented but it’s one specific only. 5th Based-on Problem Solving with Constraints Computer programme will be resulting problem-solving by give contraints (define of variable problem and conditions requirement). PROLOG, OPS5 etc. Intelligent system, programmer need another deep- knowledge. Programming Languages History
COPYRIGHT2013 Introduction of Programming Languages Programming Languages Translation ASSEMBLER File ASM Assembling File EXE / COM Source : Assembly Language Out-put : Executable Machine Language
COPYRIGHT2013 Introduction of Programming Languages Programming Languages Translation INTERPRETER Source Code Interpreter Machine/Assembly Language Source : High Level Language (3rd – 5th ) Web Script, Java script, PHP, ASP Classic, Visual Basic and Basic. Out-put : Machine/Assembly Language Data input
COPYRIGHT2013 Introduction of Programming Languages Programming Languages Translation COMPILER Source Code Compiler Object Code Source : High Level Language (3rd – 5th ) C Language, Pacal, Fortran and C++. Out-put : Machine/Assembly Language Linker EXE RESULT Data input Preprocessor Libraries Compile time Runtime
COPYRIGHT2013 Introduction of Programming Languages Programming Languages Translation COMPILER & INTERPRETER Source Code Compiler Object Code Source : High Level Language (3rd – 5th ) programme.NET and JAVA Out-put : Middle Level Language Linker EXE Interpreter Data input Preprocessor Libraries Compile time Runtime environ ment (O.S.) RESULT
COPYRIGHT2013 Introduction of Programming Languages TO MAKE A PROGRAMME 1. Define a problem 2. Finding solution / problem solving 3. Determine Algorithm and Data Structure 4. Writing programme platform : Desktop, web and mobile Prog. Lang. : .NET (VB, C#, C++, F#, J#) and Java 5. Validation and Verification 6. Documentation 7. Maintenance
COPYRIGHT2013 Thank’s for your kind attention

1_BJ_Introduction algoritm and programming language

  • 1.
  • 2.
    COPYRIGHT2013 Lecture Contents : ‣Architecture and System of Computer (review) ‣ Introduction of Algorithms ‣ Introduction of Programming Language ‣ C Programming Language ‣ Assembly Programming Language ‣ Design Algorithms & Programming Language (practices) These Lectures are using Student Centred Learning (SCL) Methodes Probably , You need use Laptop or CBT to interaction and practices (learning by doing)
  • 3.
    COPYRIGHT2013 Architecture and Systemof Computer Hardware Software Brainware Computer : - Interfacing - Communication - Networking Operating System : Windows 98/XP/7, Ubuntu (linux), Android, etc. Programming Language : - Assembler (Machine Language) - Programme Editor & Compiler/Interpreter - GUI (Graphic User Interface) Application Programmes : - Communication/Network & Protocol - Multimedia - Interfacing - Office Tools - Database - etc. USER : Programmer, Operator, Cracker & Hacker, etc.
  • 4.
    COPYRIGHT2013 Architecture and Systemof Computer Hardware Software Brainware Computer : - CPU, Memory and I/O-port Interface - Monitor Display - Keyboard Operating System : Windows 98/XP/7, Ubuntu (linux), Android, etc. Programming Language : - Assembler - BASIC - FORTRAN - COBOL - C/C++/C# - JAVA - etc. Application Programmes : - MS-Office - MS-DOS (MS-Windows) - Winamp - Text Editor - Mozilla Firefox - etc. USER : Programmer, Operator, Cracker & Hacker, etc.
  • 5.
    COPYRIGHT2013 Introduction of Algorithms ProgrammeInstructions ≈ Source Code statement ≈ Syntax Input Process Output Programme is the source code that have logic and systematically intructions to get right of problem solving. Three main components of programme are input, process and Output.
  • 6.
    COPYRIGHT2013 Introduction of Algorithms Algorithmsterminology from : Abu Ja’far Mohammed Ibn Musa Al-Khawarizmi (Al-Jabr W’al-muqabala / Rules of Restoration and Reduction) Algorithms Logical Flow Write down Logical Thinking of each person is different Flowchart Pseudocode Fundamental Algorithm (Knuth 1973)
  • 7.
    COPYRIGHT2013 Introduction of Algorithms InputProcess Output Requirement Design Implementation Testing Application Software Development Need Assesment determine of programme that user needed Programme Interface Prototype, unfunctionality Programme Coding Real function Validation and Verification Requirement programme justify Maintenance Update , Back-up, Up-grade, patched etc.
  • 8.
    COPYRIGHT2013 Introduction of Algorithms ALGORITHMSTANDARD Donald E. Knuth  Algorithms Criteria : 1. INPUT zero input is undirect input by user, but it’s executing declarated variables. Direct input, user can type in text- box (icon display programme) or using server data-base. 2. OUTPUT minimum : one output for objective programme. It ca be displayed, saved in file/database or saved in clipboard so it can be used (called) on another programme. 3. FINITENESS Absolutly it has to be finished, so it doesn’t hang-up or not responding (unfinitly carry-on). 4. DEFINITENESS it has clearly objectives (what for), when it’s start and when it’s stop. 5. EFFECTIVENESS/EFFECIENCY it doesn’t use memory too much and it has short execute-time.
  • 9.
    COPYRIGHT2013 Introduction of Algorithms ALGORITHMTYPE Generally of Basic Algorithm Type: 1. SEQUENCE it has series process, arrangement order. 2. LOOPING/ITERATION it has cycle carry-on, until meet requirement conditions. 3. SPLIT/CONDITION it has fork of choice process, determine of conditions.
  • 10.
    COPYRIGHT2013 Introduction of ProgrammingLanguages Programming Languages History Language Description Notes 1st Machine Machine code -> microcode Binary code Fast execution but it’s hard to understand by human 2nd Assembly It’s the Robotic and H/W Interfacing programme language. Simple Code (english) with standard instruction (mov, djnz etc.) for simple Arithmatic-operation like as MUL, SUB, ADD and DIV Fast execution, it’s still hard but more simple than binary/microcode. Programme very long. 3rd High Level Language It’s using Syntax in English to building/programming applications. C, BASIC, FORTRAN and PASCAL Easy to use, Program is short but slowly execution.
  • 11.
    COPYRIGHT2013 Introduction of ProgrammingLanguages Language Description Notes 4th Specific Problem Oriented Visually programme : SQL, HTML, Visual Basic, Delphi and Fox-Pro. Application types: Report Generators, Forms Generators (GUI), Computer Aided S/W Engineering (CASE) and Database Query Language. Directly problem oriented but it’s one specific only. 5th Based-on Problem Solving with Constraints Computer programme will be resulting problem-solving by give contraints (define of variable problem and conditions requirement). PROLOG, OPS5 etc. Intelligent system, programmer need another deep- knowledge. Programming Languages History
  • 12.
    COPYRIGHT2013 Introduction of ProgrammingLanguages Programming Languages Translation ASSEMBLER File ASM Assembling File EXE / COM Source : Assembly Language Out-put : Executable Machine Language
  • 13.
    COPYRIGHT2013 Introduction of ProgrammingLanguages Programming Languages Translation INTERPRETER Source Code Interpreter Machine/Assembly Language Source : High Level Language (3rd – 5th ) Web Script, Java script, PHP, ASP Classic, Visual Basic and Basic. Out-put : Machine/Assembly Language Data input
  • 14.
    COPYRIGHT2013 Introduction of ProgrammingLanguages Programming Languages Translation COMPILER Source Code Compiler Object Code Source : High Level Language (3rd – 5th ) C Language, Pacal, Fortran and C++. Out-put : Machine/Assembly Language Linker EXE RESULT Data input Preprocessor Libraries Compile time Runtime
  • 15.
    COPYRIGHT2013 Introduction of ProgrammingLanguages Programming Languages Translation COMPILER & INTERPRETER Source Code Compiler Object Code Source : High Level Language (3rd – 5th ) programme.NET and JAVA Out-put : Middle Level Language Linker EXE Interpreter Data input Preprocessor Libraries Compile time Runtime environ ment (O.S.) RESULT
  • 16.
    COPYRIGHT2013 Introduction of ProgrammingLanguages TO MAKE A PROGRAMME 1. Define a problem 2. Finding solution / problem solving 3. Determine Algorithm and Data Structure 4. Writing programme platform : Desktop, web and mobile Prog. Lang. : .NET (VB, C#, C++, F#, J#) and Java 5. Validation and Verification 6. Documentation 7. Maintenance
  • 17.