Skip to content

Lab works from the "Algorithms and Data Structure " course

Art-Invis/Algo_programming-pt.3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

26 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ’» Algo_programming-pt.3

πŸ“– About This Repository

This repository contains a fully documented, multi-language collection of academic lab assignments for the course Algorithms and Data Structures. Each lab showcases algorithmic thinking, data processing, and systems-level logic, implemented across C, C++, and Rust β€” with clear formatting, modular functions, and that unmistakable Artem touch πŸ’‘

Labs are organized by language and topic, demonstrating key CS concepts through practical, well-commented code. This includes:

  • C labs:

    • Mastery of conditionals, loops, arrays, and pointers
    • Switch-case logic, input/output operations, and dynamic memory
    • Multidimensional matrix manipulations and structured function calls
  • C++ labs:

    • Function-based power series approximation
    • Matrix transposition, dynamic allocation, and memory-safe addition
    • String parsing, character analysis, and modular formatting
  • Rust labs:

    • Analytical function evaluation using Taylor series
    • Fixed-size array slicing, iteration via .iter() and .enumerate()
    • Algorithmic search and accumulation using safe, idiomatic patterns

Each lab is paired with a detailed Markdown assignment sheet under /docs, describing task goals, code structure, algorithms used, and sample outputs β€” so that reviewers, instructors, or future-you can follow the logic and admire the polish.


πŸ—‚ Repository Structure

β”œβ”€β”€ docs/                    # Markdown assignment descriptions for each lab
β”‚   β”œβ”€β”€ lab_1_assignment.md     # C: Basic types and formatted I/O
β”‚   β”œβ”€β”€ lab_2_assignment.md     # C: Conditionals, switch, loop basics
β”‚   β”œβ”€β”€ lab_3_assignment.md     # C: Iteration control, nested loops
β”‚   β”œβ”€β”€ lab_4_assignment.md     # C: Arrays, pointers, string manipulation
β”‚   β”œβ”€β”€ lab_5_assignment.md     # C: Multidimensional and dynamic arrays
β”‚   β”œβ”€β”€ lab_6_assignment.md     # C++: Power series via functions
β”‚   β”œβ”€β”€ lab_7_assignment.md     # C++: Matrix operations & transposition
β”‚   β”œβ”€β”€ lab_8_assignment.md     # C++: String analysis and character functions
β”‚   β”œβ”€β”€ lab_9_assignment.md     # Rust: Power series approximation
β”‚   β”œβ”€β”€ lab_10_assignment.md    # Rust: Array traversal and analysis

β”œβ”€β”€ src_code/
β”‚   β”œβ”€β”€ lab_1/              # C
β”‚   β”œβ”€β”€ lab_2/              # C
β”‚   β”œβ”€β”€ lab_3/              # C
β”‚   β”œβ”€β”€ lab_4/              # C
β”‚   β”œβ”€β”€ lab_5/              # C
β”‚   β”œβ”€β”€ lab_6/              # C++
β”‚   β”œβ”€β”€ lab_7/              # C++
β”‚   β”œβ”€β”€ lab_8/              # C++
β”‚   β”œβ”€β”€ lab_9/              # Rust
β”‚   β”œβ”€β”€ lab_10/             # Rust
β”‚   └── README.md           # Language-specific lab instructions (optional)

β”œβ”€β”€ .gitignore
β”œβ”€β”€ LICENSE
└── README.md               # You're reading it

πŸš€ Technologies Used

Language Highlights
C Pointers, arrays, loops, switch-case, memory access
C++ Functions, string manipulation, matrix logic, dynamic memory
Rust Series approximation, slicing, safe memory handling

Markdown used throughout for docs.


πŸ“Ž Lab Index

Lab Subject Language Topic
Lab 1 Algorithms & Data Structures C Types, I/O
Lab 2 Algorithms & Data Structures C Conditionals, Switch
Lab 3 Algorithms & Data Structures C Loop control
Lab 4 Algorithms & Data Structures C Arrays & Pointers
Lab 5 Algorithms & Data Structures C Multidimensional Arrays
Lab 6 Algorithms & Data Structures C++ Power Series Functions
Lab 7 Algorithms & Data Structures C++ Matrix Ops
Lab 8 Algorithms & Data Structures C++ String Logic
Lab 9 Algorithms & Data Structures Rust Power Series
Lab 10 Algorithms & Data Structures Rust Array Slicing & Sum

✍️ How to Use

  1. Clone the repo

    git clone https://github.com/.../Algo-programing-pt.3.git
  2. Navigate to a lab folder

    cd src_code/lab_6
  3. Compile or run the script depending on language:

    • C: gcc task_2.c -o task_2 && ./task_2
    • C++: g++ task_1.cpp -o task_1 && ./task_1
    • Rust: cargo run or rustc task.rs && ./task
  4. Open the corresponding lab description

    docs/lab_6_assignment.md
    

πŸ‘¨β€πŸŽ“ Attribution

All code authored and maintained by Artem Sokol
Feel free to fork or reference, but give credit where due πŸ™Œ
Educational purpose only.

Β© 2023–2024 Artem. All loops unrolled, all rights respected.

About

Lab works from the "Algorithms and Data Structure " course

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published