High School Curriculum for Mathematics and Computer Science Specialization



  1. Algorithms

    • Algorithm concept, characteristics
    • Data, variables, expressions, operations
    • Basic structures: linear, alternative, repetitive
    • Algorithm description, pseudocode representation

  2. Basic Elements of a Programming Language (Pascal or C, optional)

    • Language vocabulary
    • Constants, identifiers
    • Data type concept. Arithmetic, logical, relational operators
    • Defining data types
    • Variables. Variable declaration
    • Program structure. Comments
    • Expressions. Assignment statement
    • Data input/output
    • Control structures: compound statement, alternative and repetitive structures

  3. Predefined Subprograms

    • Subprograms. Parameter passing mechanisms
    • Predefined procedures and functions

  4. Structured Data Types

    • Array type
    • Character string type: operators, predefined procedures and functions for reading, displaying, concatenation, search, extraction, insertion, deletion
    • Record type

  5. Text Files

    • Text files. Access types
    • Predefined procedures and functions for text files

  6. Elementary Algorithms

    • Problems involving digits of a number
    • Divisibility. Prime numbers. Euclid's algorithm
    • Fibonacci sequence
    • Finding minimum/maximum
    • Sorting methods: bubble sort, selection sort
    • Merge sort
    • Search methods: sequential search, binary search
    • Analysis of algorithm complexity considering execution efficiency criteria and memory usage

  7. User-Defined Subprograms

    • Procedures and functions: declaration and invocation, formal parameters and actual parameters, value parameters, reference parameters, global variables and local variables, scope
    • Modular design of problem solving

  8. Recursion

    • Recursive procedures and functions

  9. Backtracking Method

    • Generation problems

  10. Generation of Combinatorial Elements

    • Permutations, arrangements, combinations
    • Cartesian product, subsets

  11. Graphs

    • Undirected graphs: terminology (node/vertex, edge, adjacency, incidence, degree, path, elementary path, cycle, elementary cycle, length, subgraph, partial graph), properties (connected, connected component, complete graph), memory representation methods (adjacency matrix, adjacency list)
    • Trees: terminology (node, edge, root, descendant, direct descendant/child, ancestor, direct ancestor/parent, siblings, leaf node), memory representation methods (adjacency matrix, parent array)

Color Contrast

Text Size

Text Spacing

Reading Aids


In this section you can generate a summary of the page content using AI! Feel free to use the button below whenever you are in a hurry and don't have time to learn everything!


Summary

In this section you can ask our expert robot anything related to the questions you encountered during the lessons! Feel free to use the button below whenever you need additional explanations!


Chatbot