**Math**

- Actions on matrices. Own vectors and eigenvalues.
- Equation of a straight line on a plane and in space. Equation of plane in space.
- Investigation of the function of one variable using the derivative (monotony, extremum, convexity).
- Calculation of the Riemann integral (Newton-Leibniz’s formula, replacement of a variable, integration with parts).
- Convergence and amount of a row. The sign of the convergence of Dalmber.
- The general solution of a linear homogeneous differential equation with constant coefficients. Finding a solution to the Cauchy problem for this equation.
- The function of the distribution of a random variable. Distribution density.
- The mathematical expectation of a discrete random variable and a random variable whose distribution is given by density.
- Operations over sets. Inclusion-exclusion formula.
- Binomial coefficients. Pascal Triangle. Newton’s Binom Formula. The number of all subsets of
*n**is an*elemental set.

**Computer Science**

**Structural programming and algorithms**

- Concept of data type. Basic data types. Submitting basic types of data to a computer.
- Work with features. Appointment of functions. Description (signature), definition and function call. Formal and actual parameters.
- Indicators, dynamic variables. Appointment and application. Operations of address picking and churning. Operations over pointers, address arithmetic.
- Arrays (static and dynamic). Appointment of arrays. Allocate the memory and location of elements, the principle of access to the elements.
- Structures and associations. Appointment of structures (unions). Allocate the memory and location of elements, the principle of access to the elements.
- Work with files. Standard and system levels. Text and binary files. The concept of a file variable, its representation in a computer. Basic file operations. The concept of a buffer.
- Linked lists. Appointment and application. Organize and locate items in your computer’s memory. Comparison with arrays. Insert and delete operations.
- Binary trees. Types of binary trees. Appointment and application of each type. Balanced search trees. Insert and delete operations.
- Sort algorithms. Classification of sorting algorithms, their comparative analysis.
- Search algorithms. Classification of search algorithms, their comparative analysis.

**Object-Oriented Programming**

- The concept of a class, a constructor, a class operation. Protocol class. Class object Data members, member functions. Static members of the class. Designer copy. Indicators and links to classes.
- Encapsulation and methods for its provision. Private, protected, open class members.
- Inheritance as a method for modeling the ratio is_a. Redefining methods in derived classes.
- Polymorphism and its application. Concept of polymorphism. Early and late binding. Virtual functions Pure virtual features. The concept of the abstract class. Virtual destructors. Multiple inheritance, its types and rules of application.
- Aggregation as a way to simulate the “has_a” ratio. The concept of the inner class. Static internal classes. Local and anonymous internal classes.
- Abstract classes, interfaces. The concept of the interface, the implementation of the interface. Inheriting interfaces.
- Exclusion mechanism. Exception handling, end issue.
- I / O streams, serialization mechanism. Analysis and flow control.

**Databases**

- Conceptual model of the DB (ER diagram).
- Data models. Relational data model. Relationships, attributes, tuples, domains, keys.
- Integrity of the data in the relational model. Integrity by entities and domain integrity.
- SQL language. Multi-table and final sample requests.
- Types of associations of relations. Internal and external association.
- Languages DDL (Data Definition Language) and DML (Data Manipulation Language).

**literature**

**Math**

- Ter-krikorov AM, Shabunin MI Course of Mathematical Analysis. – M.: Fizmatlit, 2003.
- Kudryavtsev LD Short course of mathematical analysis. – M .: Nauka, 1989.
- Pontryagin L.S. Ordinary differential equations. – Moscow: Nauka, 1974.
- Samoilenko AM, Krivoshey SA, Perestyuk NA Differential equations. Examples and tasks. – M .: Higher school, 1989.
- Gelfand I. M., Lectures on linear algebra. – M.: Science, 1970.
- Ilyin VA, Pozdnyak E. G. Linear algebra. – M.: Science, 1984.
- Pogorelov AV Analytical geometry. – M .: Nauka, 1978.
- Borisenko O.A., Ushakova L.M. An analytical geometry. – X.: Basis, 1993.
- Bondarenko M.F., Belous N.V., Rutkus A.G. Computer discrete mathematics. Kh., Company SMIT, 2004.
- Kolmogorov AN, Zhurbenko IG, Prokhorov AV Introduction to Probability Theory. M., Science, 1982.
- Gnedenko B.V., Khinchin A.Ya. An elementary introduction to the theory of probabilities. M., Science, 1982.
- B.V. Gnedenko The course of probability theory. M., 1980.

**Computer Science**

**Structural programming and algorithms**

- B. Kernigan, D. Ritchie. Programming Language, C, 2nd Edition, M: Williams, 2009 – 292 p.
- S. Pratt, Programming language C ++. Lectures and exercises, 5th ed. – M .: Williams, 2007. – 1184 p.
- Shield St. Petersburg Reference Guide: Williams, 2011-1056 pp.
- N. Wirth Algorithms and data structures. + CD-ROM .: DMKPress, 2011.- 272 p.
- Ahoy, Ulman. Algorithms and structures of daniyah.M: Williams, 2009 – 384 p.
- Robert Sedgwick. Fundamental algorithms. Analysis Data structures. Sorting and searching. C ++. Parts 1-4, Diasoft, 2001.
- Robert Sedgwick. Fundamental algorithms. Algorithms in graphs. C ++. Part 5, M: DiaSoftUp, 2002.

**Object Oriented Programming**

- B. Stroustrap. Programming language C ++. – M .: Binom
- G. Buch, J. Rambo, A. Jacobson. UML language. – M .: DMK – 2000.
- G. Buch. Object – oriented analysis and design. – M .: Bean. – 1999
- K. Arnold, J. Gosling, D. Holmes. Java programming language. – M. Williams. – 2001
- P. Noulton, G. Schildt. Java 2. – SPb. : BHV – St. Petersburg. – 2001
- B. Eckel Java philosophy. – St. Petersburg : Peter – 2001
- S. Prata Programming language C ++. Lectures and exercises. – SPb .: DiaAsoft. – 2003
- H. Shildt A complete C ++ directory. 4th and e – M .: Williams. – 2003
- M. Morgan. Java 2. Developer Guide. – M. Williams. – 2000

**Databases**

- Mayer D. Theory of relational databases, – M .: Mir, 1987. – 608 p.
- Cycridzis D., Lokhovsky F. Data models – Moscow: Finance and Statistics, 1985. – 344 pp.
- Diet K. J. Introduction to Database Systems, 6th Edition. – Moscow – St. Petersburg – Kiev: Williams, 1999. – 846 p.
- Ulman J. Basics of database systems. – Moscow: “Finance and Statistics”, 1983. – 334 p.
- T. T., Fry J. Designing of database structures. (In two volumes) – M .: Mir, 1985.

**Examples of tasks.**

**Math**

- Give function definition, convex (down) in the interval.
- Formulate a sufficient condition of convexity (downward) on the interval in terms of the second derivative
- Check that the function is convex (down) in the interval
- Explore the function with the derivative and build its graph

**Computer Science**

**Structural programming and algorithms**

The file contains several snippets of text, separated by one empty line, followed by two sets of empty lines of a set of keywords, each keyword in a separate line. It is necessary to construct a directory of frequencies for entering keywords into fragments of the text in the following form: for each fragment it is indicated by its sequential number in the file followed by a list of keywords in the sequence of decreasing their repetition frequencies in this fragment (words that do not occur in this fragment, Do not have to be in the list).

- Describe the data structures for storing the directory in the form of an array, the size of which is equal to the number of fragments of the text, and each element contains the address of the search tree, the information box of each node of which contains the keyword and the frequency of occurrence of the word in the corresponding fragment of the text (the tree is ordered by frequency).
- Record the algorithm for solving the problem.
- Declare a dynamic array to store the directory and ensure memory allocation.
- It is assumed that there is a ready wordInTexts (…) function that searches for a given word in every fragment of the text in a file, generates an array of its occurrence in fragments and returns the address of the beginning of this array. Write a signature for wordInTexts (…). Declare the variables for the array return function and the search tree described in clause 1.
- Write the function of adding information obtained by calling the wordInTexts (…) function for a particular keyword in the array of search trees (p.1).
- Write the function of displaying the directory on the screen as follows: fragment number

A list of keywords in the order of reduction of frequencies (words with a zero frequency are not deduced).

**Object Oriented Programming**

The file contains several snippets of text separated by one empty line, followed by two sets of keywords followed by two empty lines for each fragment – their keywords in a separate line, separated by one or more spaces (the keyword does not contain spaces). It is necessary to construct a directory of the frequencies of the appearance of the keywords in the text fragments in the following form: for each fragment it is indicated by its serial number in the file, followed by a list of its keywords, indicating the frequency of their appearance in descending order.

- Develop a basic TextFragment class to work with a piece of text, provide the necessary set of constructors, operations to add and delete a set of characters at a given position.
- Develop a derived TextFragmentWithKeyWords class to work with a piece of text in order to search for keywords specified in this class. Provide the necessary set of constructors, operations of adding and removing keywords, as well as the operation of determining the frequency of each keyword in the fragment.
- Create a class-container of objects of the class TextFragmentWithKeyWords and initialize its elements with the data from the file.
- Apply the TextFragmentWithKeyWords class operations to construct the desired directory task.
- Ensure results are displayed as follows:

Fragment number

A list of keywords in the order of reduction of frequency (words with zero frequency are not deduced).

**Databases**

Description of the subject area

You work in a company that sells spare parts for automobiles. Your task is to monitor the financial side of the company.

The bulk of your business activity is related to working with suppliers. The company has a certain set of suppliers, for each of which the name of the supplier company is known, address and telephone. You will acquire parts from these suppliers. Each item along with the name is characterized by the article and the price (the price is constant). Some suppliers may supply the same parts (same article). Every fact of purchase of spare parts from suppliers is recorded in the database, besides obligatory for storage is the date of purchase and the quantity of purchased parts.

**Task**

- Construct an ER diagram of a domain (a conceptual database model).
- Construct an ER-diagram of the base diagram in the form of a set of relationships and relationships between them.
- For each relationship define: keys (primary and external), attribute domains, mandatory attributes.
- Implement the following queries in SQL language:
- Repeat the name of all supplier companies that shipped the “Stoy” item for the current month. Sort by the name of the supplier company. Effective table: <company name, phone>.
- Output the names of those parts that were never delivered during the current year without repeating. Effective table: <item name>.
- For each item name, show the total number of parts purchased in the current month. The resultant voter should not have details that were not purchased this month. Effective table: <item name, total quantity>.

- Give the key to the relation. What properties should a key be? What is the difference between the primary and the potential key? What is a superkey?
- Name the 4 main SQL statements of the DML language operator.

Approved at the meeting of the Academic Council of the Faculty of Mathematics and Informatics, Minutes No. 1 dated 07.02.2017

Dean of the Faculty of Mathematics and Informatics G. M. Zholtkevich

Approved at the meeting of the admissions committee, protocol No. 2 dated 10.04.2017

O.A. Anoshchenko, Executive Secretary of the Admissions Committee