IB HL Computer Science - Topic 4: Computational Thinking and Programming

0.0(0)
studied byStudied by 35 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/25

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

26 Terms

1
New cards

Pseudocode

A high-level representation of an algorithm expressed in informal language that emphasizes the logical structure and functionality of a program, as opposed to its specific syntax.

2
New cards

Counter-variables

Specific types of variables in programming that are designated to maintain a count of the occurrences or completions of a particular process.

3
New cards

Incrementing

The process of changing the value of a variable by a fixed amount (ex. C = C+1).

4
New cards

Iteration

The process of repeating a set of instructions or statements in a program until a certain condition is met, often used to perform repetitive tasks efficiently.

5
New cards

Sub-procedures

Small and manageable steps of a procedure that help in breaking down a larger problem into simpler parts, facilitating easier problem-solving and organization in programming; also known as Top-Down procedure.

6
New cards

Procedural Thinking

Thinking in a structured/sequential manner to identify the most efficient and appropriate solution to a problem by systematically breaking it down into smaller, manageable steps (known as sub-procedures).

7
New cards

Logical Thinking and Decision Making

A cognitive process that involves reasoning and making choices based on the critical evaluation of information, often used in programming to create algorithms and solve problems effectively.

8
New cards

Thinking Ahead

The process of anticipating future steps or outcomes in programming and problem-solving, as well as identifying the desired end-goal of the program before starting the programming process, allowing for better planning and execution of solutions.

9
New cards

Thinking Concurrently

The ability to consider multiple tasks or processes simultaneously in programming to ensure all parts of the algorithm can work together effectively and efficiently to solve the problem.

10
New cards

Thinking Abstractly

Thinking about the broader/overall “picture” in terms of a program, allowing for the removal or the hiding of unnecessary or irrelevant details of a program from the end user.

11
New cards

(HL) Thinking Recursively

In ways similar to procedural thinking, recursive thinking involves solving a large problem by breaking it down into smaller problems of the same form.

12
New cards

Data Structure

A way of organizing and storing data in a computer so that it can be accessed and modified efficiently.

13
New cards

Array

A type of data structure that holds multiple items/values of the same type.

14
New cards

Static Array/Data Structure

A data set of fixed size which has a specific amount of RAM allocated to it upon the starting/compile time of the program, meaning the size of the array cannot be changed during runtime.

15
New cards

Dynamic Array/Data Structure

A data set the size/RAM allocation of which can be changed during runtime rather than being fixed at the start/compile time of the program. (ex. an Array List)

16
New cards

Parallel Array

Multiple interlinked arrays of the same size being used to represent one collective set of data. (ex. in a database, one array for first names and one for last names) The positions/indexes of these arrays are linked. (ex. position 4 in both arrays represents the full name of person 4)

17
New cards

Flag

A Boolean variable used to represent the existence of a condition by using True or False indicators, where True implies that said condition exists and False implies the opposite.

18
New cards

Method

A set of code which runs only when called upon. Data can be passed through methods as parameters (although not all methods require them).

19
New cards

Parameter

A special type of variable used to run data through a method or subroutine.

20
New cards

Array of Objects

An array which consists of reference variables, where each variable is an individual element of the array points to an object in a given class.

21
New cards

Accessors/Getters

Methods used to retrieve the value of a specific variable without modifying it in any way.

22
New cards

Mutators

Methods used to modify, adjust, or update the value of a specific variable.

23
New cards

Constructor Method

A method used to initialize a new object within a class, as well as the initial values of all instance variables.

24
New cards

Instance Variables

Variables that are declared during the initialization of a new object within a class, outside of all methods, which allows them to be accessed by all methods within the class.

25
New cards

Two-Dimensional (2D) Arrays

Arrays that can be indexed by two subscripts, as they store data in a two-dimensional “row and column” system. All values in these arrays must be of the same type.

26
New cards

Nested Loop

A loop within a loop.