C# Programming for UFAR
Last update 2024.03.16
Albert S. Darbinyan
www.albdarb.com
User: ufar
Psw: “ufar”
Email:
[email protected]………………………………………………………………………………………………………………...………….
TASKs solutions Submit on GitHub
C# Task1. Show the knight strokes in the matrix [8,8]
C# Task2. Show the queen strokes in the matrix [8,8]
C# Task3. Randomly place queens on the chessboard so that they do not hit each other. Matrix [8,8] (0.3)
C# Task4. The knight will step from the mentioned field with random free fields once. Matrix [8,8] (0.3)
C# Task5. Saddle point. Given an MxN integer size matrix. Determine and find the matrix element that is
largest in its row and smallest in its column. If no such element exists, display the message "no". (0.2)
C# Task6. Randomly fill non-repeating numbers in an NxM matrix. (0.2)
Deadline 2024.02.02
C# Task7. q Queen placement in Matrix [8,8] with heuristic method. Place queens on a chessboard so that
they do not hit each other, using the heuristic of maximum free for queen fields. Display the current results
of the heuristic run. Explanation in more detail in the classroom. (1 point)
C# Task8. n Knight moving in Matrix [8,8] with heuristic method. Any next move of the knight in the free
field is selected by a special template with minimum value. Template is the number of knight moves in the
initial chessboard. Display the current results of the heuristic run. Explanation in more detail in the
classroom. (1 point)
Deadline 2024.02.16
C# Task9. ax2 +bx +c=0. Solve the quadratic equation by methods and return x1, x2 . 1.With ref parameters.
2. With Tuple 3.With Array 4.With Deconstructing in class. (0.1 point)
Deadline 2024.03.08 (deadline is extended)
C# Task10. Based on a class with autopropertys: id, name, age. Create a local data storage by entering,
displaying, sorting by age, sorting by name, searching by age, searching by name and removing a record with
id. Implement with WPF. Use Array to store data and do not use Array.Sort() and BinarySearch() methods.
You can use the practical example of C#OOP lesson 26. (0.5 point)
Deadline 2024.03.15 (deadline is extended)
C# Task11. Chess Play (1 point)
The following position is given. The man plays with white. Computer in black. Take control of the move of
the white pieces. The computer must make a move with the following strategy: 1. win to eat white's king 2.
declare check if possible even by eating a pawn. 3. In other cases, make a random permissible move.
Implement the project with WPF.
[Տրված է հետևյալ դիրքը: Մարդը խաղում է սպիտակով: Համակարգիչը սևով: Կատարել սպիտակ
ֆիգուրների քայլի հսկում: Համակարգիչը պետք է քայլ կատարի հետևյալ ստրատեգիայով՝ 1.փոձել
ուտել սպիտակի արքային 2. շախ հայտարարել, եթե դա հնարավոր է: 3.Այլ դեպքերում կատարել
պատահական թույլատրելի քայլ: Ծրագիրը իրականացնել WPF -ով:]
Deadline 2024.03.22
Task12. Template Method OOP Pattern for Sorting Algorithms (0.4 point)
The Task will be presented.
Deadline 2024.03.29
Course objective: Knowledge C# Programming
ADDITIONAL
TOPIC HOURS CORE RESOURCES
RESOURCES
C#sharp Basics 14
1. Built-in Types Schildt-37; Troelsen-57
2. Methods Schildt-118
3. Classes and Objects Schildt -111; Troelsen-183
4. Access Modifiers, Schildt-167; Troelsen-196
Encapsulation Schildt-167; Troelsen-192 Price-232
5. Constructors Schildt-128; Troelsen-186 Nagel-88
6. Namespaces, global:: Troelsen-625; Schildt-450 Nagel-44
7. Value and Reference Data Troelsen-158; Nagel-440 Richter-118
Types
8. Nullable Types, null, ?, ?? Schildt-618; Troelsen-165
9. Structures Schildt-334; Troelsen-151 Nagel-92
10. Copy Constructor Liberty-66; albdarb
11. Static Members Schildt-213; Troelsen-196 Solis-135
12. Static Constructors, Static Schildt-218; Troelsen-200 *Nagel-91
Classes
13. Singleton Pattern Nash-80; Sarcar-5
14. this Reference Schildt-135; Troelsen-190
15. Arrays, Jagged Arrays Schildt-139; Troelsen-119,123 *Nagel-194; Nash-253
16. foreach Statements Troelsen-101; Nagel
System.Range, System.Index Troelsen-126; Albahari-13 Olsson-100
17. System.Array Troelsen-125; Liberty-144
18. Constant Field Data, readonly Troelsen-231
19. Enumerations Schildt-340; Troelsen-144
20. String Type Schildt-691, Troelsen-78 Nagel-236
21. StringBuilder Type Troelsen-89; *Nagel-240
22. Main( ) Method Troelsen-53; Schildt-208
Top-Level Statements Troelsen-54
23. Properties Schildt-262; Troelsen-212 Richter-277
Automatic Properties Troelsen-222; Schildt -267
24. Operator Overloading Schildt-221; Troelsen-432
25. Indexers Schildt-253,259; Troelsen-427
26. Use ref, out, in Parameters Schildt-178; Troelsen-131 Nash-120; *Nagel-97
2
27. Use ref and out on Schildt-183; Troelsen-163
References Type
28. The params Modifier Schildt-184; Troelsen-137
29. partial Classes and partial Troelsen-234; Nash-76,77
Methods
30. var Implicitly Typed Variables Schildt-53, Troelsen-98
Anonymous Types Troelsen-450; *Nagel-83
31. Tuples Troelsen-161; Albahari-207 Griffiths-76; *Nagel
Deconstructing Tuples Albahari-102; Troelsen-177 Price-268
32. Using Records Type Troelsen-235; Albahari-214 Price-284
33. Extension Methods Troelsen-445; Nash-489
C# OOP 10
1. Inheritance, protected Schildt-277; Troelsen-245,254 Price-231
2. Inheritance new, base Schildt-290; Troelsen-252,274
3. Composition, Aggregation Troelsen-230; Troelsen-260
4. Virtual Methods and Schildt-302; Troelsen-264
Overriding
5. Polymorphic Support Schildt-12; Troelsen-270 Price-232
6. Type Conversions implicit, Nagel-183, Troelsen-443
explicit
7. Abstract Classes Troelsen-268; Schildt-309
8. Template Method Patterns Sarcar-299
9. Master Parent Class Object Troelsen-282; Nagel-106 Nash-101
10. Object.MemberwiseClone Nash-434
11. Prototype Pattern Sarcar-27
12. Dynamic Type Schildt-625; Troelsen-702 Nash-577
IronPython http://albdarb.com/
Visual C# (WPF), Entity, ASP 6
1. Content controls MacDonald-177,197,203 Nathan-263,315
2. Images, Play Chess Nathan-309
3. C# Entity Price-515; Perkins-733
4. ASP.NET Core Freeman-33
CORE REFERENCES
1. Herbert Schildt - “ С#4.0: The Complete Reference”, 2010.
2. Andrew Troelsen, Phillip Japikse – “Pro C# 10 with .NET 6”, 2022.
3. *Christian Nagel – ”Professional C# 2012 and .NET 4.5”, 2012
4. Christian Nagel - Professional C# And . NET, 2021
5. Joseph Albahari - C# 10 in a Nutshell, 2022
6. Joseph Albahari, Ben Albahari - C#12, Pocket Reference, 2024.
7. Trey Nash – “Accelerated C# 2010”, 2010.
8. Jeffrey Richter – “CLR via C#”, 2012.
9. Ian Griffiths – “ Programming C# 10, Cloud, Web, and Desktop Applications”, 2022.
10. Mark J. Price – “C# 12 and .NET 8 Modern Cross-Platform Development”, 2023.
11. Vaskaran Sarcar – “Design Patterns in C#”, 2020.
12. Jason Alls - High Performance Pprogramming C# and .NET, 2022.
13. Mikael Olsson – “C# 8 Quick Syntax Reference”, 2019.
14. Jesse Liberty – “Programming C#”, 2001.
3
ADDITIONAL REFERENCES
1. John Sharp - Microsoft Visual C#, step by step,10th, 2022
2. Daniel Solis –“Illustrated C# 7”, 2018.
3. Tiberiu Covaci…- ”MCSD Certification Toolkit (Exam 70-483): Programming in C#”, 2013.
4. Nathan Adam – “WPF 4 Unleashed”,2010.
5. Vaskaran Sarcar - Introducing Functional Programming using C#, 2023
6. Joseph Albahari - C#12 in a Nutshell, The Definitive Reference, 2024
7. Matthew MacDonald - “Pro WPF in C# 2010”, 2010.
8. Adam Freeman – “Pro ASP.NET Core 7”, 2023.
9. Benjamin Perkins .. – “Beginning C# 7 Programming with Visual Studio 2017”, 2018.
WEB RESOURCES
http://albdarb.com/
http://highcode.am/
Projects: Group 1
1. Adamyan Grisha
Entering a chess game in the database.
- Description: Unsupervised Chess Moves and Data Collection with Entity Framework. Showing party moves
from the base. WPF implementation.
2. Aghamyan Ani
Financial Goal Planner
- Description: Create a financial goal planner application using C# and MVC. The planner will allow users to
set short-term and long-term financial goals, track progress, and adjust strategies accordingly. It will encompass
C# basics and object-oriented programming principles.
3. Akopyan Aik
Automatic Savings Allocator
- Description: Develop an automatic savings allocator using C# and .NET Core. The allocator will automatically
transfer funds from users' income to savings accounts based on predefined rules and goals. It will involve C#
fundamentals and object-oriented programming techniques.
4. Aloyan Gnel
Investment Portfolio Manager
- Description: Develop an investment portfolio manager using C# and Xamarin. The manager will help users
track their investment portfolios, monitor asset allocation, and analyze portfolio performance. It will cover C#
fundamentals and object-oriented programming concepts.
5. Amiryan Arpine
Northwind SQL database
Establishing a Northwind database connection with the C# Entity Core system and created a query for the
Products, Suppliers and OrderDetalis tables. Implement with WPF. https://albdarb.com/
4
6. Arakelyan Davit
Financial Dashboard Application
- Description: Create a financial dashboard application using C# and Unity. The dashboard will display users'
financial data in a visually appealing way, allowing them to monitor income, expenses, and savings in real-time.
It will involve C# basics and object-oriented programming techniques.
7.Arakelyan Nare
Use Object Oriented Template Method pattern.
- Description: Given an array vector. Perform Selection, Merge and Shell sorting with Template Method
pattern that have matching code snippets. Compare execution speeds. C# Top Level Console implementation.
8.Arsenyan Davit
Income and Expense Analyzer
- Description: Build an income and expense analyzer using C# and ASP.NET. The analyzer will allow users to
import financial data, categorize income and expenses, and generate reports to analyze their financial situation.
It will encompass C# basics and object-oriented programming principles.
9.Arshakyan Maria
Use Object Oriented Template Method pattern.
- Description: Given an array vector. Perform Selection, Merge and Shell sorting with Template Method
pattern that have matching code snippets. Compare execution speeds. Console application.
10.Aslanyan Arman
Database Tables Relation in Entity Core
- Description: Creating a three-table database with Entity Core, where table B is related to table A with an all-
to-one associative relationship and table B is related to table C with a one-to-one associative relationship.
Perform data entry and execution of various query. Implement the program in C# WPF. https://albdarb.com/
11.Avagyan Ani
ASP.NET Core GRUD
Organiz (Create, Read, Update, Delete) system and storing with EntityCore data connect. Implement ASP.NET
Core platform. https. https://albdarb.com/
12.Avagyan Taron
Debt Repayment Planner
- Description: Design a debt repayment planner using C# and Blazor. The planner will help users create a
repayment plan for their debts, track progress, and visualize their journey to becoming debt-free. It will
encompass C# fundamentals and object-oriented programming principles.
13.Avanesyan Albert
Playing chess.
- Description: 1.Criteria: Material 2. MiniMax and alfa-betta calculation reduction
N step depth selection:
There is no control over the allowed moves of pieces.
WPF implementation.
5
14.Avetisyan Gayane
Expense Report Generator
- Description: Design an expense report generator using C# and Entity Framework. The generator will enable
users to generate detailed expense reports for business or personal use, categorize expenses, and export reports in
various formats. It will cover C# fundamentals and object-oriented programming concepts.
15.Avetisyan Vagharshak
Bill Reminder System
- Description: Build a bill reminder system using C# and Windows Services. The system will remind users of
upcoming bills, track payment history, and provide insights into their recurring expenses. It will cover C# basics
and object-oriented programming concepts.
16.Ayvazyan Yeva
ASP.NET Core with Entity release
- Description: ASP.NET Core MVC Twitter organization and EntityFrameworkCore data storage.
https://albdarb.com/
17.Badalyan Mikayel
One move deep chess player.
- Description: There is no control over the allowed moves of pieces.
Player program step criteria: 1. maximum material 2. heuristic: attack on the opponent's king.
Displaying the result of the heuristic criterion.
WPF implementation. Use object-oriented programming concepts.
18.Badalyan Sona
Northwind database ASP.NET Core MVC implimentation
- Description: Establishing a connection to the Northwind database with the C# Entity Core system and
creating a query with the Customers, Orders tables. Implement with ASP.NET Core. https://albdarb.com/
19.Balagozyan Karapet
Savings Goal Tracker
- Description: Design a savings goal tracker application using C# and WinForms. The application will enable
users to set savings goals, track their progress, and receive notifications when they reach milestones. It will
involve C# fundamentals and object-oriented programming techniques.
20.Davtyan Samvel
Personal Finance Education Platform
- Description: Create a personal finance education platform using C# and Entity Framework. The platform
will offer courses, tutorials, and resources to help users improve their financial literacy and make better financial
decisions. It will involve C# basics and object-oriented programming techniques.
21.Gabrielyan Anna
Computer Aided Design. Placing
- Description: Implementation of the iterative algorithm for placing elements. Console application.
[Friedman – p.482]
https://albdarb.com/ user: books psw: “alg”
Friedman A.,Menon P. – “Theory and Design of Switching Circuits”. (rus)
6
22.Galstyan Anahit
Computer Aided Design. Composition
- Description: Segmentation of graph elements by groups with a sequential algorithm. C# WPF implement.
[Friedman – p.456]
https://albdarb.com/ user: books psw: “alg”
Friedman A.,Menon P. – “Theory and Design of Switching Circuits”. (rus)
23.Galstyan Asya
Computer Aided Design. Tracing
- Description: Realization of connections of elements with the wavelet algorithm in the discrete field with the
presence of barriers. Criterion: propagation of a wave from two source with 1,2,3,4….N consecutive digits and
backtrace. C# WPF implement.
[Friedman – p.508]
https://albdarb.com/ user: books psw: “alg”
24.Galumyan Ani
Budget Management System
- Description: Create a budget management system using C# and WPF. The system will help users set budgets
for different categories, track expenses, and analyze their financial health. It will encompass C# basics and
object-oriented programming concepts.
25.Garabet Harut
Tax Calculator Application
- Description: Develop a tax calculator application using C# and ASP.NET Core. The calculator will help users
estimate their tax liabilities, deductions, and refunds based on their income and expenses. It will involve C#
basics and object-oriented programming techniques.
26.Gevorgyan Arman
One move deep chess player.
- Description: There is no control over the allowed moves of pieces.
Player program step criteria: 1. maximum material 2. heuristics: capturing the center and hitting the center.
Displaying the result of the heuristic criterion.
WPF implementation. Use object-oriented programming concepts.
27. Ghazaryan Suzanna
Computer Aided Design. Tracing
- Description: Realization of connections of elements with the wavelet algorithm in the discrete field with the
presence of barriers. Criterion: propagation of a wave from a single source with 11 and 22 consecutive digits and
backtrace. Console Application implement.
[Friedman – p.508]
https://albdarb.com/ user: books psw: “alg”
Friedman A.,Menon P. – “Theory and Design of Switching Circuits”. (rus)
7
Projects: Group 3
1.Abovyan Narek
Computer-Aided Design. Tracing
- Description: Realization of connections of elements with the wavelet algorithm in the discrete field with the
presence of barriers. Criterion: propagation of a wave from a single source with 1,2,3,4….N consecutive digits
and backtrace. C# WPF Implementation.
[Friedman – p.508]
https://albdarb.com/ user: books psw: “alg”
Friedman A.,Menon P. – “Theory and Design of Switching Circuits”. (rus)
2.Aramyan Yura
Credit Score Tracker
- Description: Create a credit score tracker application using C# and ASP.NET Core Web API. The application
will allow users to monitor their credit scores, receive credit alerts, and access personalized recommendations for
improving their credit health. It will encompass C# basics and object-oriented programming principles.
3.Babayan Levon
Loan Calculator Application
- Description: Develop a loan calculator application using C# and Windows Forms. The calculator will help
users calculate loan payments, interest rates, and repayment schedules for various types of loans. It will cover C#
basics and object-oriented programming concepts.
4.Babayan Artur
Financial Goal Visualization Tool
- Description: Build a financial goal visualization tool using C# and WPF. The tool will enable users to
visualize their financial goals, track progress visually, and stay motivated to achieve their targets. It will involve
C# fundamentals and object-oriented programming techniques.
5.Barkhudaryan Gor
Financial Dashboard for Small Businesses
- Description: Build a financial dashboard application using C# and ASP.NET Core MVC. The dashboard will
provide small business owners with insights into their financial performance, cash flow, and profitability. It will
encompass C# fundamentals and object-oriented programming principles.
6.Danielyan Suren
One move deep chess player.
- Description: There is no control over the allowed moves of pieces.
Player program step criteria:1. maximum material 2. heuristic: increasing the protection of the personal king.
Displaying the result of the heuristic criterion.
WPF implementation. Use object-oriented programming concepts.
7.Gevorgyan Artur
Real Estate Investment Analyzer
- Description: Design a real estate investment analyzer using C# and WinForms. The analyzer will assist users in
evaluating real estate investment opportunities, calculating potential returns, and analyzing risks associated with
property investments. It will cover C# fundamentals and object-oriented programming concepts.
8
8.Gevorgyan Arayik
Entity CRUD
- Description: Work with the database using the Entity Core system. Implement GRUD (Create, Read, Update,
Delete) technology for accessing data. Implement the program in the WPF system. Perform Reverse Engineering
to get the data into the new project in the Console Application. https://albdarb.com/
9.Ghulijoghlyan Arpi
- Description: Northwind database ASP.NET Core implimentation
Establishing a connection to the Northwind database with the C# Entity Core system and creating a query with
the Products, Cadegories tables. Implement with ASP.NET Core. https://albdarb.com/
10.Grigoryan Ashot
Investment Risk Analyzer
- Description: Build an investment risk analyzer using C# and ML.NET. The analyzer will help users assess the
risk levels of their investment portfolios, identify potential risks, and make informed decisions to manage risk
exposure. It will cover C# fundamentals and object-oriented programming concepts.
11.Gyurjinyan Hrant
Use Object Oriented Template Method pattern.
- Description: Given an array vector. Perform Insertion, Quick and Heap sorting with Template Method
pattern that have overlapping code segments. Compare execution speeds. C# Top Level Console implementation.
12.Hakobyan Aram
Expense Sharing Platform
- Description: Create an expense sharing platform using C# and SignalR. The platform will allow users to share
expenses with friends or family, split bills, and settle debts efficiently. It will cover C# basics and object-oriented
programming concepts.
13.Janoyan Elen
Financial Literacy Quiz Application
- Description: Design a financial literacy quiz application using C# and Xamarin.Forms. The application will
provide users with quizzes and educational content to improve their financial knowledge and skills. It will
involve C# fundamentals and object-oriented programming techniques.
14.Karamyan Irina
Computer Aided Design. Composition
- Description: Segmentation of graph elements by groups with a iteration algorithm. WPF implementation.
[Friedman – p.449]
https://albdarb.com/ user: books psw: “alg”
Friedman A.,Menon P. – “Theory and Design of Switching Circuits”. (rus)
15.Kirakosyan Erik
Computer-Aided Design. Placing
- Description: Implementation of a constructive sequential algorithm for placing elements. Console
Application.
[Friedman – p.489]
https://albdarb.com/ user: books psw: “alg”
Friedman A.,Menon P. – “Theory and Design of Switching Circuits”. (rus)
9
16.Martirosyan Arsen
Chess endgame
- Description: Using the king and rook, make heuristic moves and try to checkmate the opponent's king. The
heuristic used is that every move the rook and king must move as close as possible to the opponent's king and
limit his moves. Avoid Stalemate. WPF implementation.
17.Melkonyan Monika
One move deep chess player.
- Description: There is no control over the allowed moves of pieces.
Player program step criteria: 1. maximum material 2. heuristic: maximum hits on the opponent's pieces.
Displaying the result of the heuristic criterion.
WPF implementation. Use object-oriented programming concepts.
18.Mirzoyan Vahe
Expense Forecasting Tool
- Description: Develop an expense forecasting tool using C# and .NET Core. The tool will analyze users'
historical expenses, predict future spending patterns, and help users budget more effectively. It will involve C#
basics and object-oriented programming techniques.
19.Mkhitaryan Narek
ASP.NET Core with Entity release
- Description: Organizing Partyinvite invitation and storing EntityFrameworkCore data with ASP.NET Core
MVC platform. https://albdarb.com/
20.Mkrtchian Ogannes
Man against man chess.
- Description: Monitoring of illegal moves of Chess Pieces. Display step log, time and ability to go
back/forward in position. WPF implementation.
21. Mkrtchyan Luiza
One move deep chess player.
- Description: There is no control over the allowed moves of pieces.
Player program step criteria: 1. maximum material 2. heuristic: capturing maximum free fields.
Displaying the result of the heuristic criterion.
WPF implementation. Use object-oriented programming concepts.
22.Mnatsakanyan Ani
Northwind SQL database
- Description: Establishing a Northwind database connection with the C# Entity Core system and created a
query for the Employers, Orders և Shippers tables. Implement with WPF. https://albdarb.com/
23.Karapetyan Artak
Family Budget Tracker
- Description: Develop a family budget tracker using C# and Blazor WebAssembly. The tracker will enable
multiple users within a family to collaborate on budgeting, expense tracking, and financial planning. It will
encompass C# basics and object-oriented programming principles.
10
24.Mkrtchyan Mari
Retirement Savings Planner
- Description: Build a retirement savings planner using C# and Razor Pages. The planner will assist users in
setting retirement goals, calculating required savings, and monitoring progress towards retirement readiness. It
will encompass C# fundamentals and object-oriented programming principles.
25.Avagyan Vlad
Cryptocurrency Portfolio Tracker
- Description: Design a cryptocurrency portfolio tracker using C# and ASP.NET MVC Core. The tracker will
allow users to monitor their cryptocurrency investments, track prices, and analyze portfolio performance across
multiple exchanges. It will encompass C# fundamentals and object-oriented programming principles.
26.Markosyan Vahan
Expense Tracker Application
- Description: Develop an expense tracker application using C# and .NET framework. The application will
allow users to record their expenses, categorize them, and track their spending over time. It will cover C# basics
and object-oriented programming principles.
Playing Chess Description:
• Material weights of chess pieces: King 1000; Queen 90; Root 50; Bishop 33; Knight 30; Pown 10. White -
positive values, Black - negative values.
• A rank score is a number that has two components. The whole part of the number and the sum of all the
numbers in the matrix are represented materially. The heuristic criterion forms the fractional part of the
position estimate.
• Chess played with one move depth means one move for white and one move for black.
11