Compsci exam notes Flashcards

1
Q

Variables

A

A variable is a named storage location in a computer program.
Different types of variables are used to store different data types.
To define a variable, you need to specify its name and initial value.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Assignment Statement

A

Use the assignment statement ‘=’ to place a new value into a variable.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Assignment Statement Example

A

cansPerPack = 6
Note: ‘=’ is not used for comparison; it copies the value on the right into the variable on the left.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Variable Types

A

There are three types of data in Python: integers (int), floating-point numbers (float), and strings.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Variable Types Examples

A

cansPerPack = 6 # int, canVolume = 12.0 # float

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Updating a Variable

A

If an existing variable is assigned a new value, that value replaces the previous contents.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Updated Variable Example

A

cansPerPack = 6 and then cansPerPack = 8
Computed update: cansPerPack = cansPerPack + 2

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Variable Naming

A

Variable names should describe the purpose of the variable.
Follow rules: start with a letter or underscore, continue with letters, digits, or underscore.
Use ‘camelCase’ notation, avoid reserved words.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Constants

A

In Python, a constant is a variable whose value should not change after the initial assignment.
Constants are conventionally named in ALL_CAPS.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Arithmetic Operations

A

Python supports basic arithmetic operations: addition ‘+’, subtraction ‘-‘, multiplication ‘*’, division ‘/’.
Precedence follows PEMDAS (Parenthesis, Exponent, Multiply/Divide, Add/Subtract).
Mixing numeric types results in a floating-point value.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Arithmetic Operations (Contd.)

A

Use ‘**’ for exponentiation.
Floor division (//) discards the fractional part.
Remainder calculation uses the ‘%’ operator.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Arithmetic Operations (Contd.) Example

A

Convert pennies to dollars and cents
pennies = 1729
dollars = pennies // 100 # Calculates the number of dollars
cents = pennies % 100 # Calculates the number of pennies
print(“I have”, dollars, “and”, cents, “cents”)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Math Module

A

Python’s standard library includes the math module for advanced mathematical functions.
Import functions using from math import sqrt.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Strings

A

Strings are sequences of characters in Python.
Use single or double quotes to define string literals.
String length is obtained using len().

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

String Operations

A

Concatenate strings using ‘+’. Example: firstName + lastName
Repetition using ‘*’. Example: “-“ * 50
Convert numbers to strings using str().

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

String Methods

A

strings have built-in methods like upper(), lower(), etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

String Methods Example

A

Example: name.upper() converts all characters to uppercase.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Input and Output

A

Use input() to read from the console.
Format output using % format specifiers.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Commenting Code

A

Use comments for explanation and documentation.
Two common styles include starting each line with # or using “”” “”” for multiline comments.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

The if Statement

A

Allows a program to execute different actions based on data.
Keywords: if and else.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

The if Statement example

A

floor = int(input(“Enter floor number: “))
if floor > 13:
actualFloor = floor - 1
else:
actualFloor = floor
print(“The elevator will travel to the actual floor %d” % actualFloor)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Relational Operators

A

Used in if statements for comparisons.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Floating Point Considerations

A

Floating-point numbers may have precision issues.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Relational Operators Examples

A

if floor > 13:
if floor >= 13:
if floor < 13:
if floor <= 13:
if floor == 13:
if floor != 13:

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Floating Point Considerations Examples

A

EPSILON = 1E-14
r = math.sqrt(2.0)
if abs(r * r - 2.0) < EPSILON:
print(“sqrt(2.0) squared is approximately 2.0”)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

String Comparison

A

Strings compared lexicographically.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

String Comparison Examples

A

if name1 == name2:
print(“The strings are identical”)
if name1 != name2:
print(“The strings are not identical”)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

Nested Branches

A

Using nested if statements for multiple conditions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

Nested Branches Examples

A

if maritalStatus == “s”:
if income <= RATE1_SINGLE_LIMIT:
tax1 = RATE1 * income
else:
tax1 = RATE1 * RATE1_SINGLE_LIMIT
tax2 = RATE2 * (income - RATE1_SINGLE_LIMIT)
else:
# Handle married case similarly

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

Multiple Alternatives

A

Using if, elif, and else for multiple conditions

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

Input Validation Example

A

floor = int(input(“Enter floor number: “))
if floor == 13:
print(“Error: There is no thirteenth floor.”)
elif floor <= 0 or floor > 20:
print(“Error: The floor must be between 1 and 20.”)
else:

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

Multiple Alternatives Example

A

if richter >= 8.0:
print(“Most structures fall”)
elif richter >= 7.0:
print(“Many buildings destroyed”)
elif richter >= 6.0:
print(“Many buildings damaged, some collapse”)
else:
print(“No destruction of buildings”)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

Input Validation

A

Ensuring valid user input

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

The while Loop

A

A while loop is a control structure that repeats a set of instructions as long as a specific condition is true.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

The while Loop Example

A

balance = 10.0
target = 100.0
year = 0
rate = 0.025
while balance < target:
year += 1
interest = balance * rate / 100
balance += interest

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q

Sentinel Values

A

Sentinel values are special characters or numbers used to indicate the end of a data set.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
36
Q

Sentinel Values Example

A

salary = 0.0
while salary >= 0:
salary = float(input())
if salary >= 0.0:
total += salary
count += 1

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
37
Q

The for Loop

A

The for loop is used to iterate over the contents of a container or as a count-controlled loop.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
37
Q

Common Loop Algorithms Examples

A

uppercase = 0
for char in my_string:
if char.isupper():
uppercase += 1

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
38
Q

The for Loop Example

A

state_name = “Virginia”
for letter in state_name:
print(letter)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
39
Q

Nested Loops Example

A

for i in range(4):
for j in range(i + 1):
print(“*”, end=” “)
print()

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
40
Q

Nested Loops

A

Nested loops are loops inside other loops. Useful for complex iterations, like processing cells in a table.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
41
Q

Processing Strings Example

A

vowels = 0
for char in word:
if char.lower() in “aeiou”:
vowels += 1

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
42
Q

Random Numbers & Simulation Example

A

from random import randint
for i in range(10):
d1 = randint(1, 6)
d2 = randint(1, 6)
print(f”Dice 1 is: {d1} and Dice 2 is {d2}”)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
43
Q

Functions as Black Boxes

A

Functions Overview
Definition: A function is a named sequence of instructions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
44
Q

Functions as Black Boxes Example

A

def square(number):
return number ** 2

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
45
Q

Function Call

A

Calling a function executes its instructions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
46
Q

Function Call Example

A

result = square(5) # Calls the square function with 5 as an argument

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
47
Q

Implementing & Testing Functions

A

A function consists of a header (name and parameters) and a body (instructions).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
48
Q

Implementing & Testing Functions Example

A

def greet(name):
return f”Hello, {name}!”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
49
Q

Testing a Function

A

To test a function, call it with specific inputs and check the output.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
50
Q

Testing a Function Example

A

greeting = greet(“Alice”)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
51
Q

Parameter Passing

A

Parameters are inputs passed to a function.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
52
Q

Parameter Passing Example

A

def add(a, b):
return a + b

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
53
Q

Sentinel Values

A

Sentinel values are special inputs to indicate the end of data.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
54
Q

Sentinel Values Example

A

total = 0
while salary >= 0:
salary = float(input())
if salary >= 0:
total += salary

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
55
Q

Functions with & without Return Values

A

Return Statement
Definition: The return statement ends a function and sends a value back

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
56
Q

Functions with & without Return Values Example

A

def cube_volume(side_length):
return side_length ** 3

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
57
Q

No Return Value

A

Functions are not required to return a value.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
58
Q

No Return Value Example

A

def greet(name):
print(f”Hello, {name}!”)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
59
Q

Variable Scope
Scope of Variables

A

The scope of a variable is where it’s visible.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
59
Q

Stepwise Refinement
Break Down Problems

A

Stepwise refinement is breaking down a problem into smaller tasks.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
59
Q

Stepwise Refinement
Break Down Problems
Example

A

Breaking down a check-writing program into functions like digitName, tensName, etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
60
Q

Variable Scope
Scope of Variables Example

A

def main():
total = 0 # local to main
for i in range(10):
square = i ** 2 # local to the loop

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
61
Q

Global Variables

A

Global variables are visible to all functions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
62
Q

Global Variables Example

A

balance = 1000
def withdraw(amount):
global balance
balance -= amount

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
63
Q

Basic Properties of Lists

A

Lists store a sequence of elements.
Accessed using the subscript operator ([]).
Lists can hold values of any type.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
64
Q

Basic Properties of Lists Example

A

Creating a list
values = [32, 54, 67.5, 29, 35, 80, 115, 44.5, 100, 65]

Accessing a list element
print(values[5]) # Output: 80

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
65
Q

List vs. Strings

A

Lists are mutable; strings are immutable.
Lists can hold values of any type.

66
Q

List vs. Strings Example

A

values = [2.3, 4.5, 7.2, 1.0, 12.2, 9.0, 15.2, 0.5]
values[8] = 5.4 # Out-of-range error as the index can range from 0 to 7

67
Q

List Operations Example

A

Appending Elements
friends = []
friends.append(“Harry”)
friends.append(“Emily”)
friends.append(“Bob”)

Inserting an Element
friends.insert(1, “Cindy”)

Finding an Element
if “Cindy” in friends:
print(“She’s a friend”)

Removing an Element
friends.pop(1)

67
Q

List Operations

A

Appending, inserting, finding, removing, concatenation, equality testing, and more.

68
Q

Common List Algorithms

A

Filling a list, combining list elements, linear search, etc.

69
Q

Common List Algorithms Example

A

Linear Search
limit = 100
pos = 0
found = False
while pos < len(values) and not found:
if values[pos] > limit:
found = True
else:
pos = pos + 1

70
Q

Creating Tables

A

Lists can be used to store two-dimensional data.

71
Q

Creating Tables Example

A

Creating a table (2D list)
table = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]

72
Q

Accessing Elements in Tables

A

Use two indices (row and column).

73
Q

Accessing Elements in Tables Examples

A

Accessing elements in a table
element = table[1][2] # Accessing row 1, column 2

74
Q

Reading from a File

A

Reading data from a text file involves opening the file and accessing its content.

74
Q

Adding Rows and Columns

A

Compute totals for rows and columns.

75
Q

Adding Rows and Columns Examples

A

Sum of elements in each row
for i in range(len(table)):
row_total = sum(table[i])

Sum of elements in each column
for j in range(len(table[0])):
col_total = sum(table[i][j] for i in range(len(table)))

76
Q

Reading from a File Example

A

Opening a file for reading
infile = open(“input.txt”, “r”)

Reading a line from the file
line = infile.readline()

77
Q

Writing to a File Example

A

Opening a file for writing
outfile = open(“output.txt”, “w”)

Writing a string to the file
outfile.write(“Hello, World!\n”)

77
Q

Writing to a File

A

Writing data to a text file involves opening the file in write mode and providing the data to be written.

78
Q

Processing Text Input

A

Processing text input involves reading text from files or user input and handling it based on the program’s requirements.

79
Q

Processing Text Input Example

A

Reading words from a file
for line in inputFile:
words = line.rstrip().split()
# Process each word as needed

80
Q

Handling Input Errors

A

Handling input errors involves managing unexpected issues, such as incorrect file formats or missing files, during file processing.

81
Q

Handling Input Errors Examples

A

try:
data = readFile(filename)
# Process data
except IOError:
print(“File not found.”)
except ValueError:
print(“File contents invalid.”)
except RuntimeError as error:
print(“Error:”, str(error))

82
Q

Detecting Errors

A

Detecting errors involves identifying issues that can occur during runtime, such as file not found or incorrect data format.

83
Q

Detecting Errors Examples

A

if amount > balance:
raise ValueError(“Amount exceeds balance”)

84
Q

Handling Errors

A

Handling errors involves dealing with exceptions using try, except, and optionally finally blocks to ensure proper error management.

85
Q

Handling Errors Examples

A

try:
# Code that may cause an exception
except IOError:
print(“Error: file not found.”)
except ValueError as exception:
print(“Error:”, str(exception))
finally:
# Code to be executed whether an exception occurs or not

86
Q

Set

A

A set is a container that stores a collection of unique values. The elements in a set are not stored in any particular order, and duplicates are not allowed.

87
Q

Set Example

A

colors_set = {“red”, “green”, “blue”}

88
Q

Set Operations

A

Operations performed on sets, such as union, intersection, and difference, follow mathematical set operations.

88
Q

Intersection Example

A

intersection_set = set1.intersection(set2) # Result: {3}

89
Q

Union Example

A

set1 = {1, 2, 3}
set2 = {3, 4, 5}
union_set = set1.union(set2) # Result: {1, 2, 3, 4, 5}

90
Q

Difference Example

A

difference_set = set1.difference(set2) # Result: {1, 2}

91
Q

Membership Test

A

Checking whether an element is present in a set.

92
Q

Membership Test Example

A

if “red” in colors_set:
print(“Red is present in the set.”)

93
Q

Iterating Over a Set

A

Since sets are unordered, you use a loop to iterate over elements.

94
Q

Dictionary

A

A dictionary is a container that stores associations between keys and values. Keys are unique, and each key has an associated value.

94
Q

Iterating Over a Set Example

A

for color in colors_set:
print(color)

95
Q

Dictionary Example

A

contacts = {“Fred”: 7235591, “Mary”: 3841212, “Bob”: 3841212}

96
Q

Accessing Dictionary Values

A

Values in a dictionary are accessed using keys.

97
Q

Accessing Dictionary Values Examples

A

print(“Fred’s number is”, contacts[“Fred”])

98
Q

Adding/Modifying Items

A

You can add new items or modify existing items in a dictionary.

99
Q

Adding/Modifying Items Example

A

contacts[“John”] = 4578102 # Adding
contacts[“John”] = 2228102 # Modifying

100
Q

Iterating Over a Dictionary

A

You can iterate over keys, values, or items in a dictionary.

101
Q

Iterating Over a Dictionary Example

A

for key in contacts:
print(key, contacts[key])

102
Q

Dictionary of Sets

A

A dictionary where each key is associated with a set of values.

103
Q

Dictionary of Sets Example

A

index_entries = {“example”: {7, 10}, “index”: {7}, “program”: {7, 11}}

104
Q

Building an Index

A

Using a dictionary of sets to build an index, associating terms with the pages on which they occur.

105
Q

Building an Index Example

A

Using a dictionary of sets to build an index, associating terms with the pages on which they occur.

106
Q

Object-Oriented Programming

A

Object-Oriented Programming (OOP) is a programming paradigm that uses objects, which are instances of classes, to design and structure code. It involves the concept of encapsulation, where data and methods that operate on the data are bundled into a single unit known as a class.

107
Q

Object-Oriented Programming Example

A

class Car:
def __init__(self, capacity, shape):
self.capacity = capacity
self.shape = shape

108
Q

Python Classes

A

A class in Python is a blueprint for creating objects. It defines the properties (attributes) and behaviors (methods) that the objects created from the class will have.

109
Q

Python Classes Example

A

class Dog:
def __init__(self, name, age):
self.name = name
self.age = age

110
Q

Testing a Class

A

Testing a class involves verifying that its methods perform as expected. This is often done through unit testing, where individual methods of the class are tested in isolation.

111
Q

Testing a Class Example

A

Assuming a class named MyClass with a method ‘add’
obj = MyClass()
result = obj.add(3, 4)
assert result == 7, “Addition method failed”

112
Q

Pattern for Object Methods & Data

A

This likely refers to the practice of organizing class methods and data to achieve a clear structure. Methods in a class typically act on the class’s data, and this pattern helps maintain a logical organization.

113
Q

Pattern for Object Methods & Data Example

A

class Rectangle:
def __init__(self, length, width):
self.length = length
self.width = width

def calculate_area(self):
    return self.length * self.width
114
Q

Object References

A

Object references in Python are variables that store references (memory addresses) to objects. Multiple references can point to the same object.

115
Q

Object References Example

A

obj1 = MyClass()
obj2 = obj1 # Both obj1 and obj2 reference the same object

116
Q

Python Special Methods

A

Special methods, also known as magic or dunder methods, are prefixed and suffixed with double underscores (e.g., __init__). They provide functionality to classes, allowing customization of object creation, comparison, etc.

117
Q

Python Special Methods Example

A

class MyClass:
def __init__(self, value):
self.value = value

def \_\_eq\_\_(self, other):
    return self.value == other.value
118
Q

Encapsulation

A

Hiding the implementation details and exposing only the public interface of a class to users.

118
Q

Class Methods

A

Methods defined within a class that operate on class-level attributes.

118
Q

Instance Variables

A

Variables that store data unique to each instance of a class.

119
Q

Constructors

A

Special methods, like __init__, that initialize instance variables when an object is created.

120
Q

Unit Testing

A

Testing individual methods of a class in isolation to ensure they work as expected.

121
Q

Class

A

A blueprint for creating objects, defining their behavior.

122
Q

Class Example

A

class CashRegister:
# class definition

123
Q

Initialization (__init__ method)

A

Special method used to initialize the object’s attributes when it’s created.

124
Q

Initialization (__init__ method) Example

A

def __init__(self, itemCount=0, totalPrice=0.0):
self._itemCount = itemCount
self._totalPrice = totalPrice

125
Q

Method

A

A function that is associated with an object.

126
Q

Method Example

A

def addItem(self, price):
# method definition

127
Q

Mutator Method

A

Alters the object it’s called on.

128
Q

Accessor Method Example

A

def getTotal(self):
return self._totalPrice

129
Q

Mutator Method Example

A

def addItem(self, price):
self._itemCount += 1
self._totalPrice += price

130
Q

Accessor Method

A

Retrieves information from the object without altering it.

131
Q

Unit Test

A

Verifies that a class works correctly in isolation.

132
Q

Unit Test Example

A

register1 = CashRegister()
register1.addItem(1.95)

133
Q

Expected Result

A

The anticipated outcome of a test program.

134
Q

Expected Result Example

A

print(register1.getTotal()) # Expected: 1.95

135
Q

Object Tracing

A

Visualizing object behavior using index cards with method details on the front and instance variables on the back.

136
Q

Object Tracing Example

A

Index card for CashRegister object
# Front: addItem, getTotal, …
# Back: _itemCount, _totalPrice, …

137
Q

Pattern

A

Common strategies for designing instance variables and methods.

138
Q

Keeping a Total Pattern

A

class CashRegister:
def addItem(self, price):
self._itemCount += 1
self._totalPrice += price

139
Q

Object Reference

A

Specifies the location of an object in memory.

140
Q

Object Reference Example

A

reg1 = CashRegister()

141
Q

Shared References

A

Multiple variables pointing to the same object.

142
Q

Shared References Example

A

reg2 = reg1

143
Q

None Reference

A

Represents no object.

144
Q

None Reference Example

A

reg = None

145
Q

Special Methods

A

Methods in Python with double underscores, used for operator overloading.

146
Q

Example: __eq__: Used for defining equality between objects.

A

Used for defining equality between objects.
def __eq__(self, other):
return self._itemCount == other._itemCount and self._totalPrice == other._totalPrice

147
Q

Special Python Methods

A

Defined to customize behavior when objects are used with Python built-in functions.

148
Q

Example: __float__:

A

Converts an object to a floating-point number.
def __float__(self):
return float(self._totalPrice)

149
Q

isinstance() Function

A

Checks if an object is an instance of a specified type.

150
Q

Fractional Addition

A

Involves adding fractions with a common denominator or using a formula for different denominators.

151
Q

Fractional Addition Example

A

def __add__(self, other):
# Addition of Fraction objects

152
Q

isinstance() Function Example

A

if not isinstance(numerator, int) or not isinstance(denominator, int):
raise TypeError(“Numerator and denominator must be integers.”)

153
Q

Price and Performance Advances

A

Moore’s Law: The observation that the number of transistors on a microchip doubles approximately every two years, leading to improved performance.
Data Storage and Network Capacity: Continual advancements in both storage and network capabilities.

154
Q

The Network is the Thing

A

Power of the Network: Emphasizes the importance of network access in the realm of IT.
Cloud Computing: Leveraging remote servers over the internet for data storage and processing

154
Q

Smaller is Better

A

Mobility: The trend towards smaller, more portable devices.

155
Q

Hardware Components

A

Power Supply:

Converts AC to DC: Critical for providing suitable power to components.
Motherboard:

Main Circuit Board: Facilitates communication among hardware components.
Central Processing Unit (CPU):

Executes Instructions: Performs computations and is measured in Hertz.
RAM (Random Access Memory):

Main Memory: Volatile and fast, serves as a “waiting room” for instructions.
GPU (Graphics Processing Unit):

Dedicated Graphics Processor: Manipulates computer graphics, image processing, and video rendering.
Storage:

Non-volatile Storage: Persistent secondary memory, examples include HDD, SSD, optical discs, flash drives, and cloud storage.
Servers:

PC on Steroids: More powerful and redundant compared to personal computers.

156
Q

Computer Data Representation

A

Binary to Decimal Conversion: Understanding how binary numbers represent decimal values.
Text Representation: Mapping characters to binary and decimal numbers.
Image, Graphics, and Video Representation: Pixel encoding, color representation, and data sizes.

157
Q

Hardware Trends

A

Advances in Servers: Described as “PC on Steroids,” emphasizing differences and redundancies.
Evolution of Storage: From traditional HDD to SSD and cloud storage.
Data Size and Significance: Illustrating the magnitude of data sizes in various contexts.

158
Q

Operating System and Application Programs

A

Operating System (OS):

Resource Control: Manages computer resources, deals with errors, and controls I/O.
Application Programs:

Native and Web Applications: Describing programs based on their platform and delivery.

158
Q

Software Licensing and Types of Applications

A

Proprietary Software License:

Payment for License: Closed source, limited customization, may include support.
Open Source:

Free and Customizable: Allows modification and redistribution, supported by the community.
Types of Applications:

One-of-a-kind, Horizontal, Vertical: Describing the nature and purpose of different software applications.

158
Q

Firmware and Virtualization

A

Firmware:

Special Software on ROM: Embedded logic in devices, changeable by IT professionals.
Virtualization:

Hosts Virtual Machines: One physical computer hosting multiple virtual machines, controlled by a host operating system.