Skip to content

Here you can find basically most of the exercises I'm solving during my University journey. This repo will contain lots of folders inside of it, each of one related to one subject. It won't be limited to one language.

License

Notifications You must be signed in to change notification settings

BrenoFariasdaSilva/University

Repository files navigation


This repo is made with the objective of showing the content learned at my Computer Science university course.
Here you can find basically all exercises I'm solving during my University journey. This repo will contain lots of folders inside of it, each of one related to one subject, so it won't be limited to one language, but any exercise related to my university course at UTFPR-CM.
You can use this repository as a way to measure your learning to ensure you know all the fundamentals taught in college.


Build Status GitHub Build/WorkFlow GitHub code size in bytes GitHub last commit (by committer) License wakatime

RepoBeats Statistics

Table of Contents

Languages:

c   c++   Elixir   java   javascript   python   ruby   typescript  

Setup

Clone without Submodules

In order to clone this repository without the submodules (DataBase, Research-Methodology, Scientific Research, Simpsons-Family-Recognizer, TextSync, Worked-Example-Miner), you can use the following command:

git clone https://github.com/BrenoFariasdaSilva/University.git

Clone with Submodule

In order to clone this repository with the submodules (DataBase, Research-Methodology, Scientific Research, Simpsons-Family-Recognizer, TextSync, Worked-Example-Miner), you can use the following command:

git clone --recurse-submodules https://github.com/BrenoFariasdaSilva/University.git

Clone Submodule

In case you have already cloned the repository and forgot to clone the submodules, you can use the following command to clone the submodule:

git submodule init
git submodule update

Installation

  • C:

    # C:
    sudo apt install build-essential -y
    sudo apt install manpages-dev -y
  • C++:

    # C++:
    sudo apt install clang-12 -y
  • Python:

    # Python:
    sudo apt install python3 python3-venv python3-pip -y
  • Zip and Unzip Tools: Zip and Unzip might be some necessary tools to install SDKMAN

    # Unzip:
    sudo apt install unzip -y
    
    # Zip:
    sudo apt install zip -y
  • SDKMAN Tool: SDKMAN is a tool for managing parallel versions of multiple Software Development Kits on most Unix based systems.
    It provides a convenient Command Line Interface (CLI) and API for installing, switching, removing and listing Candidates.

    # SDKMAN:
    curl -s "https://get.sdkman.io" | bash
    source "$HOME/.sdkman/bin/sdkman-init.sh"
    sdk version
  • Java Language via SDKMAN:

    # Java:
    sdk install java
    java -version

How to Run

  • If there is a file in the folder called Makefile:

    make
  • If there isn't a file in the folder called Makefile:

    • C:
      C is a general-purpose computer programming language.

      # if there is external file to link
      gcc -c linkedLibrary.c  # Linked files here
      gcc main.c linkedLibrary.o -o main
      ./main
      
      # if there isn't external file to link
      gcc {ProgramName}.c -o {OutProgramName}
      # Example: gcc main.c -o main
      ./{ProgramName}
      #Example: ./main
    • C++:
      C++ is a high-level, general-purpose programming language.

      g++ -o {OutputProgramName} {ProgramName}.cpp
      # Example: g++ -o main main.cpp
      ./{ProgramName}
      #Example: ./main
    • Python:
      Python is a high-level, general-purpose programming language.

      python3 ./{ProgramName}.py
      # Example: python3 ./main.py 
    • Java:
      Java is a high-level, class-based, object-oriented programming language.

      # Compile the application using the Java compiler (JVM):
      javac ./{ProgramName}.java
      # Example: javac ./main.java 
      
      # Run the application.
      java ./{ProgramName without extension}
      # Example: javac ./main

Contributing

Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated. If you have suggestions for improving the code, your insights will be highly welcome. In order to contribute to this project, please follow the guidelines below or read the CONTRIBUTING.md file for more details on how to contribute to this project, as it contains information about the commit standards and the entire pull request process. Please follow these guidelines to make your contributions smooth and effective:

  1. Set Up Your Environment: Ensure you've followed the setup instructions in the Setup section to prepare your development environment.

  2. Make Your Changes:

    • Create a Branch: git checkout -b feature/YourFeatureName
    • Implement Your Changes: Make sure to test your changes thoroughly.
    • Commit Your Changes: Use clear commit messages, for example:
      • For new features: git commit -m "FEAT: Add some AmazingFeature"
      • For bug fixes: git commit -m "FIX: Resolve Issue #123"
      • For documentation: git commit -m "DOCS: Update README with new instructions"
      • For refactorings: git commit -m "REFACTOR: Enhance component for better aspect"
      • For snapshots: git commit -m "SNAPSHOT: Temporary commit to save the current state for later reference"
    • See more about crafting commit messages in the CONTRIBUTING.md file.
  3. Submit Your Contribution:

    • Push Your Changes: git push origin feature/YourFeatureName
    • Open a Pull Request (PR): Navigate to the repository on GitHub and open a PR with a detailed description of your changes.
  4. Stay Engaged: Respond to any feedback from the project maintainers and make necessary adjustments to your PR.

  5. Celebrate: Once your PR is merged, celebrate your contribution to the project!

License

MIT

About

Here you can find basically most of the exercises I'm solving during my University journey. This repo will contain lots of folders inside of it, each of one related to one subject. It won't be limited to one language.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published