CSE1010: Computer Science 1
Students explore hardware, software and processes. This includes an introduction to the algorithm as a problem-solving tool, to programming languages in general and to the role of programming as a tool for implementing algorithms.
Practical
Using this notebook on Callysto Hub (sign in with your school Google account) or Google Colab.
Use full sentences to answer the following questions in a document:
- What is an algorithm?
- How many vowels are in the word
onomatopoeia
?
- How many vowels are in Shakespeare’s Sonnet 18?
- What is the minimum value from the list
[4, 3, 6, 7]
?
- What were the mean, maximum, and minimum temperatures at the Edmonton International Airport during July 2022?
- Define the terms decision structures and iterative structures.
- What are some data types that are used in the notebook?
- Convert the decimal number
42
to binary and hexadecimal.
- What is one thing you found interesting about this notebook?
- (Optional) Advanced: Design an algorithm to convert a binary number to a decimal number without using int().
- (Optional) Advanced: Design an algorithm to convert a hexadecimal number to a decimal number without using int().
Theory
Write an essay, make a slide deck, produce a video or audio track, or create other (approved) ways to answer the following questions in full sentences and paragraphs.
- What is computer science?
- Why should we study computer science?
- How is it similar to and different from computer engineering and information technology?
- What are some common misconceptions about computer science?
- Briefly describe each of the following areas of interest of computer science:
- computer programming
- data structures
- computer architecture
- user interface design
- application programming interfaces (APIs)
- automation
- artificial intelligence and machine learning
- image, audio, and video storage and rendering
- How do computer programming languages:
- relate to a simplified version of natural language?
- change over time as hardware and algorithms change? Why are new programming languages being developed?
- The Systems Development Life Cycle often uses flowcharts, pseudocode, or IPO charting. How do these help with the analysis and design of information systems?
- Explain the nature, evolution and basic architecture of a von Neumann computer system:
- Create a block diagram of a stereotypical von Neumann machine.
- Describe a number of typical devices associated with each block.
- Show the flow of data through the computer under the direction of a program.
Complete an Employability Skills Self-Assessment and a Personal Inventory Checklist.
Check that you have answered everything, and submit your document(s).