Difference between revisions of "IU:TestPage"

From IU
Jump to navigation Jump to search
Line 1: Line 1:
   
  +
= Introduction to Programming =
= Mathematical Analysis I =
 
* '''Course name''': Mathematical Analysis I
+
* '''Course name''': Introduction to Programming
 
* '''Code discipline''':
 
* '''Code discipline''':
  +
* '''Subject area''': ['Basic concept - algorithm, program, data', 'Computer architecture basics', 'Structured programming', 'Object-oriented programming', 'Generic programming', 'Exception handling', 'Programming by contract (c)', 'Functional programming', 'Concurrent programming']
* '''Subject area''': ['Differentiation', 'Integration', 'Series']
 
   
 
== Short Description ==
 
== Short Description ==
Line 22: Line 22:
 
! Section !! Topics within the section
 
! Section !! Topics within the section
 
|-
 
|-
| Sequences and Limits ||
+
| Introduction to programming ||
  +
# Basic definitions – algorithm, program, computer, von Neumann architecture, CPU lifecycle.
# Sequences. Limits of sequences
 
  +
# Programming languages history and overview. Imperative (procedural) and functional approaches.
# Limits of sequences. Limits of functions
 
  +
# Translation – compilation vs. interpretation. JIT, AOT. Hybrid modes.
# Limits of functions. Continuity. Hyperbolic functions
 
  +
# Introduction to typification. Static and dynamic typing. Type inference. Basic types – integer, real, character, boolean, bit. Arrays and strings. Records-structures.
  +
# Programming – basic concepts. Statements and expressions. 3 atomic statements - assignment, if-check, goto. Control structures – conditional, assignment, goto, case-switch-inspect, loops.
  +
# Variables and constants.
  +
# Routines – procedures and functions.
 
|-
 
|-
  +
| Introduction to object-oriented programming ||
| Differentiation ||
 
  +
# Key principles of object-oriented programming
# Derivatives. Differentials
 
  +
# Overloading is not overriding
# Mean-Value Theorems
 
  +
# Concepts of class and object
# l’Hopital’s rule
 
  +
# How objects can be created?
# Taylor Formula with Lagrange and Peano remainders
 
  +
# Single and multiple inheritance
# Taylor formula and limits
 
# Increasing / decreasing functions. Concave / convex functions
 
 
|-
 
|-
  +
| Introduction to generics, exception handling and programming by contract (C) ||
| Integration and Series ||
 
  +
# Introduction to generics
# Antiderivative. Indefinite integral
 
  +
# Introduction to exception handling
# Definite integral
 
  +
# Introduction to programming by contract (C)
# The Fundamental Theorem of Calculus
 
# Improper Integrals
 
# Convergence tests. Dirichlet’s test
 
# Series. Convergence tests
 
# Absolute / Conditional convergence
 
# Power Series. Radius of convergence
 
# Functional series. Uniform convergence
 
|}
 
== Intended Learning Outcomes (ILOs) ==
 
 
=== What is the main purpose of this course? ===
 
understand key principles involved in differentiation and integration of functions, solve problems that connect small-scale (differential) quantities to large-scale (integrated) quantities, become familiar with the fundamental theorems of Calculus, get hands-on experience with the integral and derivative applications and of the inverse relationship between integration and differentiation.
 
 
=== ILOs defined at three levels ===
 
 
==== Level 1: What concepts should a student know/remember/explain? ====
 
By the end of the course, the students should be able to ...
 
* Derivative. Differential. Applications
 
* Indefinite integral. Definite integral. Applications
 
* Sequences. Series. Convergence. Power Series
 
 
==== Level 2: What basic practical skills should a student be able to perform? ====
 
By the end of the course, the students should be able to ...
 
* Derivative. Differential. Applications
 
* Indefinite integral. Definite integral. Applications
 
* Sequences. Series. Convergence. Power Series
 
* Taylor Series
 
 
==== Level 3: What complex comprehensive skills should a student be able to apply in real-life scenarios? ====
 
By the end of the course, the students should be able to ...
 
* Take derivatives of various type functions and of various orders
 
* Integrate
 
* Apply definite integral
 
* Expand functions into Taylor series
 
* Apply convergence tests
 
== Grading ==
 
 
=== Course grading range ===
 
{| class="wikitable"
 
|+
 
 
|-
 
|-
  +
| Introduction to programming environments ||
! Grade !! Range !! Description of performance
 
  +
# Concept of libraries as the basis for reuse.
  +
# Concept of interfaces/API. Separate compilation.
  +
# Approaches to software documentation.
  +
# Persistence. Files.
  +
# How to building a program. Recompilation problem. Name clashes, name spaces
 
|-
 
|-
  +
| Introduction to concurrent and functional programming ||
| A. Excellent || 90-100 || -
 
  +
# Concurrent programming.
|-
 
  +
# Functional programming within imperative programming languages.
| B. Good || 75-89 || -
 
|-
 
| C. Satisfactory || 60-74 || -
 
|-
 
| D. Poor || 0-59 || -
 
 
|}
 
|}
 
=== Course activities and grading breakdown ===
 
{| class="wikitable"
 
|+
 
|-
 
! Activity Type !! Percentage of the overall course grade
 
|-
 
| Labs/seminar classes || 20
 
|-
 
| Interim performance assessment || 30
 
|-
 
| Exams || 50
 
|}
 
 
=== Recommendations for students on how to succeed in the course ===
 
 
 
== Resources, literature and reference materials ==
 
 
=== Open access resources ===
 
* Zorich, V. A. “Mathematical Analysis I, Translator: Cooke R.” (2004)
 
 
=== Closed access resources ===
 
 
 
=== Software and tools used within the course ===
 
= Teaching Methodology: Methods, techniques, & activities =
 
 
== Activities and Teaching Methods ==
 
{| class="wikitable"
 
|+ Activities within each section
 
|-
 
! Learning Activities !! Section 1 !! Section 2 !! Section 3
 
|-
 
| Homework and group projects || 1 || 1 || 1
 
|-
 
| Midterm evaluation || 1 || 1 || 0
 
|-
 
| Testing (written or computer based) || 1 || 1 || 1
 
|-
 
| Discussions || 1 || 1 || 1
 
|}
 
== Formative Assessment and Course Activities ==
 
 
=== Ongoing performance assessment ===
 
 
==== Section 1 ====
 
{| class="wikitable"
 
|+
 
|-
 
! Activity Type !! Content !! Is Graded?
 
|-
 
| Question || A sequence, limiting value || 1
 
|-
 
| Question || Limit of a sequence, convergent and divergent sequences || 1
 
|-
 
| Question || Increasing and decreasing sequences, monotonic sequences || 1
 
|-
 
| Question || Bounded sequences Properties of limits || 1
 
|-
 
| Question || Theorem about bounded and monotonic sequences || 1
 
|-
 
| Question || Cauchy sequence The Cauchy Theorem (criterion) || 1
 
|-
 
| Question || Limit of a function Properties of limits || 1
 
|-
 
| Question || The first remarkable limit || 1
 
|-
 
| Question || The Cauchy criterion for the existence of a limit of a function || 1
 
|-
 
| Question || Second remarkable limit || 1
 
|-
 
| Question || Find a limit of a sequence || 0
 
|-
 
| Question || Find a limit of a function || 0
 
|}
 
==== Section 2 ====
 
{| class="wikitable"
 
|+
 
|-
 
! Activity Type !! Content !! Is Graded?
 
|-
 
| Question || A plane curve is given by <math>{\displaystyle x(t)=-{\frac {t^{2}+4t+8}{t+2}}}</math> , <math>{\textstyle y(t)={\frac {t^{2}+9t+22}{t+6}}}</math> Find || 1
 
|-
 
| Question || the asymptotes of this curve; || 1
 
|-
 
| Question || the derivative <math>{\textstyle y'_{x}}</math> || 1
 
|-
 
| Question || Derive the Maclaurin expansion for <math>{\textstyle f(x)={\sqrt[{3}]{1+e^{-2x}}}}</math> up to <math>{\textstyle o\left(x^{3}\right)}</math> || 1
 
|-
 
| Question || Differentiation techniques: inverse, implicit, parametric etc || 0
 
|-
 
| Question || Find a derivative of a function || 0
 
|-
 
| Question || Apply Leibniz formula || 0
 
|-
 
| Question || Draw graphs of functions || 0
 
|-
 
| Question || Find asymptotes of a parametric function || 0
 
|}
 
==== Section 3 ====
 
{| class="wikitable"
 
|+
 
|-
 
! Activity Type !! Content !! Is Graded?
 
|-
 
| Question || Find the indefinite integral <math>{\textstyle \displaystyle \int x\ln \left(x+{\sqrt {x^{2}-1}}\right)\,dx}</math> || 1
 
|-
 
| Question || Find the length of a curve given by <math>{\textstyle y=\ln \sin x}</math> , <math>{\textstyle {\frac {\pi }{4}}\leqslant x\leqslant {\frac {\pi }{2}}}</math> || 1
 
|-
 
| Question || Find all values of parameter <math>{\textstyle \alpha }</math> such that series <math>{\textstyle \displaystyle \sum \limits _{k=1}^{+\infty }\left({\frac {3k+2}{2k+1}}\right)^{k}\alpha ^{k}}</math> converges || 1
 
|-
 
| Question || Integration techniques || 0
 
|-
 
| Question || Integration by parts || 0
 
|-
 
| Question || Calculation of areas, lengths, volumes || 0
 
|-
 
| Question || Application of convergence tests || 0
 
|-
 
| Question || Calculation of Radius of convergence || 0
 
|}
 
=== Final assessment ===
 
'''Section 1'''
 
# Find limits of the following sequences or prove that they do not exist:
 
# <math>{\displaystyle a_{n}=n-{\sqrt {n^{2}-70n+1400}}}</math> ;
 
# <math>{\textstyle d_{n}=\left({\frac {2n-4}{2n+1}}\right)^{n}}</math> ;
 
# <math>{\textstyle x_{n}={\frac {\left(2n^{2}+1\right)^{6}(n-1)^{2}}{\left(n^{7}+1000n^{6}-3\right)^{2}}}}</math>
 
'''Section 2'''
 
# Find a derivative of a (implicit/inverse) function
 
# Apply Leibniz formula Find <math>{\textstyle y^{(n)}(x)}</math> if <math>{\textstyle y(x)=\left(x^{2}-2\right)\cos 2x\sin 3x}</math>
 
# Draw graphs of functions
 
# Find asymptotes
 
# Apply l’Hopital’s rule
 
# Find the derivatives of the following functions:
 
# <math>{\textstyle f(x)=\log _{|\sin x|}{\sqrt[{6}]{x^{2}+6}}}</math> ;
 
# <math>{\textstyle y(x)}</math> that is given implicitly by <math>{\textstyle x^{3}+5xy+y^{3}=0}</math>
 
'''Section 3'''
 
 
 
=== The retake exam ===
 
'''Section 1'''
 
 
'''Section 2'''
 
 
'''Section 3'''
 

Revision as of 18:01, 19 April 2022

Introduction to Programming

  • Course name: Introduction to Programming
  • Code discipline:
  • Subject area: ['Basic concept - algorithm, program, data', 'Computer architecture basics', 'Structured programming', 'Object-oriented programming', 'Generic programming', 'Exception handling', 'Programming by contract (c)', 'Functional programming', 'Concurrent programming']

Short Description

Prerequisites

Prerequisite subjects

Prerequisite topics

Course Topics

Course Sections and Topics
Section Topics within the section
Introduction to programming
  1. Basic definitions – algorithm, program, computer, von Neumann architecture, CPU lifecycle.
  2. Programming languages history and overview. Imperative (procedural) and functional approaches.
  3. Translation – compilation vs. interpretation. JIT, AOT. Hybrid modes.
  4. Introduction to typification. Static and dynamic typing. Type inference. Basic types – integer, real, character, boolean, bit. Arrays and strings. Records-structures.
  5. Programming – basic concepts. Statements and expressions. 3 atomic statements - assignment, if-check, goto. Control structures – conditional, assignment, goto, case-switch-inspect, loops.
  6. Variables and constants.
  7. Routines – procedures and functions.
Introduction to object-oriented programming
  1. Key principles of object-oriented programming
  2. Overloading is not overriding
  3. Concepts of class and object
  4. How objects can be created?
  5. Single and multiple inheritance
Introduction to generics, exception handling and programming by contract (C)
  1. Introduction to generics
  2. Introduction to exception handling
  3. Introduction to programming by contract (C)
Introduction to programming environments
  1. Concept of libraries as the basis for reuse.
  2. Concept of interfaces/API. Separate compilation.
  3. Approaches to software documentation.
  4. Persistence. Files.
  5. How to building a program. Recompilation problem. Name clashes, name spaces
Introduction to concurrent and functional programming
  1. Concurrent programming.
  2. Functional programming within imperative programming languages.