1/24
A set of vocabulary flashcards defining key foundational topics in algorithms, flowcharts, pseudocode, programming paradigms, and object-oriented programming pillars.
Algorithm
A finite, ordered sequence of well-defined, unambiguous instructions that transforms given inputs into a desired output.
Input (Algorithm Characteristic)
Zero or more well-defined inputs provided to an algorithm.
Output (Algorithm Characteristic)
At least one defined output produced by an algorithm.
Definiteness
An algorithm characteristic where every step is precise and unambiguous.
Finiteness
An algorithm characteristic where the process terminates after a finite number of steps.
Effectiveness
An algorithm characteristic where each step is simple enough to be carried out.
Flowchart
A diagram that represents an algorithm using standard graphical symbols, connected by arrows to show the flow of control.
Terminal (Flowchart Symbol)
An oval-shaped symbol that marks the Start or End of a flowchart.
Process (Flowchart Symbol)
A rectangle-shaped symbol that represents a processing step or computation.
Decision (Flowchart Symbol)
A diamond-shaped symbol that represents a yes/no or true/false branch.
Input/Output (Flowchart Symbol)
A parallelogram-shaped symbol that represents data entry or display.
Connector (Flowchart Symbol)
A small circle symbol that links parts of a flowchart on the page.
Flow Line
An arrow symbol that shows the direction of control flow in a flowchart.
Pseudocode
Describes an algorithm in plain, structured, English-like statements using simple keywords (READ, WRITE, IF, WHILE, FOR) without following the strict syntax of any programming language.
Programming Paradigm
A fundamental style or approach for structuring code and organizing program logic.
Procedural Paradigm
A programming approach that structures code as a sequence of steps grouped into functions, seen in languages like C, Pascal, and FORTRAN.
Object-Oriented Paradigm
A programming approach that structures code as interacting objects bundling data and behavior, seen in languages like C++, Java, and Python.
Functional Paradigm
A programming approach that structures code as the evaluation of pure functions with no shared state, seen in languages like Haskell and Lisp.
Event-Driven Paradigm
A programming approach where code reacts to events such as clicks or messages, seen in languages like JavaScript (UI) and VB.
Procedural Programming
Organizes a program as a top-down sequence of instructions grouped into reusable functions (procedures) that operate on data, which is often shared globally.
Object-Oriented Programming (OOP)
Organizes a program around objects—self-contained units bundling data (attributes) and behavior (methods)—modeling real-world entities.
Encapsulation
An OOP pillar defined as bundling data and methods together, hiding internal details.
Inheritance
An OOP pillar defined as creating new classes based on existing ones to reuse code.
Polymorphism
An OOP pillar defined as letting one interface take on many implementations.
Abstraction
An OOP pillar defined as exposing only essential features while hiding complexity.