Procedural Programming

Paradigm using sequential procedures/functions.

Procedural programming is an imperative paradigm where programs are organized as sequences of instructions grouped into procedures (functions/subroutines).

Key characteristics:
1. Sequential Execution: Code runs top to bottom
2. Procedures: Reusable blocks of code (functions)
3. Global/Local Variables: Scope determines access
4. Modularity: Breaking code into smaller procedures
5. Structured Control Flow: if/else, loops, function calls

        graph LR
  Center["Procedural Programming"]:::main
  Rel_object_oriented_programming["object-oriented-programming"]:::related -.-> Center
  click Rel_object_oriented_programming "/terms/object-oriented-programming"
  Rel_functional_programming["functional-programming"]:::related -.-> Center
  click Rel_functional_programming "/terms/functional-programming"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧒 Explain Like I'm 5

Procedural programming is like following a recipe step by step. You read instruction 1, then 2, then 3. Functions are like mini-recipes for tasks you repeat often, like 'mix ingredients' or 'bake for 30 minutes'.

🤓 Expert Deep Dive

Structured programming theorem: any computable function can be expressed with sequence, selection, and iteration. Stack frames manage local variables and return addresses. Procedure inlining eliminates call overhead.

📚 Sources