Escrito por estudiantes que aprobaron Inmediatamente disponible después del pago Leer en línea o como PDF ¿Documento equivocado? Cámbialo gratis 4,6 TrustPilot
logo-home
Resumen

Summary Problem Solving and Programming

Puntuación
-
Vendido
-
Páginas
7
Subido en
28-08-2023
Escrito en
2022/2023

This document can summarize the unit 2.2 in computer Science, which covers: Programming techniques Constructs Recursion Variables Integrated Development Environment Object Oriented Techniques Computational Methods

Institución
Grado

Vista previa del contenido

Programming Techniques:
Programming Constructs:
A crucial part of solving a problem is simplifying it to represent it in a way that makes it easier to
understand and therefore program. The following constructs are used to represent a program’s
control flow in a popular subsection of procedural programming called structured programming.

 Sequence
Code is executed line-by-line from top to bottom.
 Branching
A certain block of code is executed if a specific condition is met, using IF statements or
selection statements.
 Iteration
A block of code is executed a certain number of times or while a condition is met. Iteration
uses FOR, WHILE or REPEAT UNTIL loops.
o Count Controlled:
Iteration is repeated a given number of times.
For I in range (0,10):
Print i
Next i
o Condition Controlled
Iteration continues until a given condition is met:
While I <= 20:
Print “Not true;
I=I+1
endwhile

Recursion:
Recursion is a programming construct in which a subroutine calls itself during its execution. This
continues until a certain condition, which is called the stopping condition, is met, at which point, the
recursion stops. Recursion produces the same result as iteration but is more suited to certain
problems which are more easily expressed using recursion.

The advantage of using recursion for certain problems is that they can be represented in fewer lines
of code, which makes them less prone to errors. However, it is essential that recursive subroutines
are clearly defined so as to reach a stopping condition after a finite number of function calls.

A common example of a naturally recursive function is factorial, shown below:

Function factorial(number)

If number == 0 or 1:

Return 1

Else:

Return number + factorial(number – 1);

Endif

End function

, Each time the function calls itself, a new stack frame is created within the call stack, where
parameters, local variables and return addresses are stored. A call stack is a Last in First Out data
structure which stores details about the order in which subroutines have been called. This
information allows the subroutine to return to that particular point during its execution. A finite
number of stack frames are created until the stopping condition, or base case is reached at which
point the subroutine unwinds. This refers to the process of information from the call stack being
popped off the stack.

There are some disadvantages to recursion, the biggest being its inefficient use of memory. If the
subroutine calls itself too many times, there is a danger of a stack overflow, which is when the call
stack runs out of memory. This would cause the program to crash. Tail recursion is a form of
recursion which is implemented in a more efficient way in which less stack space is required.
Another problem is recursion is that it is difficult to trace, especially with more and more function
calls.

Global and Local Variables:
Variables can be defined as either global or local scope. Scope refers to the section of code in which
the variable is available.

Local variables have limited scope which means that they can only be accessed within the block of
code in which they were defined. If a local variable is defined within a subroutine, it can only be
addressed in that subroutine. Therefore, multiple local variables with the same name can exist in
different subroutines and will remain unaffected by each other. Using local variables is considered to
be good programming practice, because it ensures subroutines are self-contained, with no danger of
variables being affected by code outside of the subroutine.

Global variables, on the other hand, can be accessed across the whole program. All variables used in
the main body of the program are automatically declared to be global. These are useful for values
that need to be used by multiple parts of the program. On the whole, however global variables
aren’t recommended as they can be unintentionally overwritten and edited. As global variables
aren’t deleted until the program terminates, they require more memory than local variables which
are deleted once the subroutine has been completed.

In the event that a local variable exists within a subroutine with the same name as a global variable,
the local variable will take precedence.

Modularity, Functions and Procedures:
Modular programming is a programming technique used to split large, complex programs into
smaller, self-contained modules. Modularity is essential to making a problem easier to understand
and approach. A modular design also makes it easier to divide tasks between a team and manage,
whilst simplifying the process of testing and maintenance, as each component can be dealt with
individually. This improves the reusability of components, as once a module has been tested, it can
be reused with confidence.

A popular technique used to modularise programs is called the top-down approach, in which the
problem is continually broken down into sub-problems, until each can be represented as an
individual, self-contained black box which performs a certain task.

This process is also known as stepwise refinement. These modules form blocks of code called
subroutines, which can be categorised as either functions or procedures.

Escuela, estudio y materia

Nivel de Estudio
Editores
Tema
Curso

Información del documento

Subido en
28 de agosto de 2023
Número de páginas
7
Escrito en
2022/2023
Tipo
RESUMEN

Temas

$10.95
Accede al documento completo:

¿Documento equivocado? Cámbialo gratis Dentro de los 14 días posteriores a la compra y antes de descargarlo, puedes elegir otro documento. Puedes gastar el importe de nuevo.
Escrito por estudiantes que aprobaron
Inmediatamente disponible después del pago
Leer en línea o como PDF

Conoce al vendedor
Seller avatar
michaellawther

Documento también disponible en un lote

Conoce al vendedor

Seller avatar
michaellawther Huddersfield New College
Seguir Necesitas iniciar sesión para seguir a otros usuarios o asignaturas
Vendido
-
Miembro desde
2 año
Número de seguidores
0
Documentos
12
Última venta
-

0.0

0 reseñas

5
0
4
0
3
0
2
0
1
0

Documentos populares

Recientemente visto por ti

Por qué los estudiantes eligen Stuvia

Creado por compañeros estudiantes, verificado por reseñas

Calidad en la que puedes confiar: escrito por estudiantes que aprobaron y evaluado por otros que han usado estos resúmenes.

¿No estás satisfecho? Elige otro documento

¡No te preocupes! Puedes elegir directamente otro documento que se ajuste mejor a lo que buscas.

Paga como quieras, empieza a estudiar al instante

Sin suscripción, sin compromisos. Paga como estés acostumbrado con tarjeta de crédito y descarga tu documento PDF inmediatamente.

Student with book image

“Comprado, descargado y aprobado. Así de fácil puede ser.”

Alisha Student

Preguntas frecuentes