CSC 419 Group 1
CSC 419 Group 1
programming languages
Group 1 members
Unit 1
1) Adebayo Precious
190404048
2) Daniel olabambo ayomide
190404117
3) Boluwaji Eniola Daniel
190404033
4) Balogun Praise Ayomide
190404042
5) Oladejo Oluwatamilore Iremide
190404102
6) Okiti Peter Moyinoluwa
190404055
7) Oludare olawale oluwatobi
190404026
Unit 2
8) Adams Olamilekan Ayoola
190404121
9) Ijiwade Isaiah Adekunle
190404021
10) Jegede Samuel oluwatosin
190404032
11) Akinola Francis Temidayo
190404035
12) Agunloye Adetola oluwaseyi
190404118
13) Emmanuel Olajide Akeredolu-Ale
190404023
14) Olubumi victor
190404011
Unit 3
15) Shokoya Damilola Samson
190404088
16) Adejoro Tobi Joseph
190404072
17) Ahmad fahad
190404087
18) Adesoji Temidayo Abidemi
190404041
19) Oladejo Eniola Demilade
200404172
20) Adeola Oluwatimilehin Faith
200404138
21) TONY-AKINLOSOTU Favour A
19040404089
22) Akinkoye Ayodeji peace
190404038
2. Declarative Programming:
- Functional Programming: Functional programming
emphasizes the evaluation of expressions and the use of
functions as primary building blocks. Languages like Haskell,
Lisp, and Erlang adhere to this paradigm.
- Logic Programming: Logic programming involves
describing the problem domain in terms of logical relationships
and constraints. Prolog is a well-known logic programming
language.
Structured Programming:
Unstructured Programming:
1. Block:
- A block is a group of statements or declarations enclosed
within braces `{}` in many programming languages.
- Blocks are used to define the scope of variables, to group
statements that should be treated as a single unit, and to control
the flow of execution.
- In languages like C, C++, Java, and JavaScript, blocks are
commonly used within functions, conditionals, loops, and other
control structures.
2. Selection:
- Selection refers to the process of making decisions in a
program based on certain conditions.
- Selection is typically implemented using conditional
statements such as `if`, `else if`, and `else` in most
programming languages.
- Based on the evaluation of a condition, the program decides
which branch of code to execute.
- Selection statements allow programs to perform different
actions based on the state of the program or the input data.
3. Iteration:
- Iteration, also known as looping or repetition, refers to the
process of executing a block of code repeatedly.
- Iteration is often used when the same set of instructions
needs to be executed multiple times until a certain condition is
met or for a specified number of iterations.
- Common loop constructs include `for`, `while`, and `do-
while` loops in programming languages like C, Java, Python,
and JavaScript.
- Iteration is essential for tasks such as traversing arrays,
processing lists, and performing repetitive computations.
4. Nesting:
- Nesting refers to the practice of placing one construct inside
another, such as placing a loop within another loop or placing
conditional statements within other conditional statements.
- Nesting allows for the creation of complex program logic
by combining multiple levels of control flow constructs.
- For example, a `for` loop may contain an `if` statement
inside it, or an `if` statement may contain another `if` statement
within its block.
- Proper indentation and formatting are crucial for
maintaining readability when nesting multiple levels of
constructs.
5. Subroutine:
- A subroutine, also known as a function or procedure, is a
named block of code that performs a specific task.
- Subroutines are reusable units of code that can be called
from different parts of a program.
- They help in modularizing code, promoting code reuse, and
improving the readability and maintainability of programs.
- Subroutines typically accept parameters, perform operations
based on those parameters, and optionally return a value.
- Languages like C, C++, Java, Python, and JavaScript
support the definition and invocation of subroutines.
1. Procedural Programming:
- Procedural programming is a structured programming
paradigm that focuses on organizing code into procedures or
functions.
- It emphasizes the use of procedures to break down tasks into
smaller, reusable units of code.
- Programs are structured around procedures that perform
specific tasks, with a main program coordinating the execution
of these procedures.
- Languages like C, Pascal, and BASIC are examples of
procedural programming languages.
3. Model-Based Programming:
- Model-based programming is a structured approach where
programs are built around models that represent real-world
entities, processes, or systems.
- It emphasizes the use of models to define the structure,
behavior, and interactions of software components.
- Models are used to generate executable code, perform
simulations, or analyze system behavior.
- Model-based programming is common in domains such as
embedded systems, control systems, and software engineering.
- Tools like MATLAB/Simulink, LabVIEW, and UML
(Unified Modeling Language) support model-based
programming.
1. Procedural Programming:
- Procedural programming is a structured programming
paradigm that focuses on organizing code into procedures
or functions.
- It emphasizes the use of procedures to break down
tasks into smaller, reusable units of code.
- Programs are structured around procedures that
perform specific tasks, with a main program coordinating
the execution of these procedures.
- Languages like C, Pascal, and BASIC are examples of
procedural programming languages.
3. Model-Based Programming:
- Model-based programming is a structured approach
where programs are built around models that represent
real-world entities, processes, or systems.
- It emphasizes the use of models to define the structure,
behavior, and interactions of software components.
- Models are used to generate executable code, perform
simulations, or analyze system behavior.
- Model-based programming is common in domains
such as embedded systems, control systems, and software
engineering.
- Tools like MATLAB/Simulink, LabVIEW, and UML
(Unified Modeling Language) support model-based
programming.
1. Limited Expressiveness:
- Structured programming languages may lack the expressive
power to represent certain complex algorithms or problem
domains efficiently.
- Some programming tasks may require convoluted
workarounds or compromises to fit within the structured
paradigm, leading to less elegant or less efficient solutions.