전체 글

전체 글

    [Linux, Ubuntu] neovim 설치 및 설정

    nvim 설치sudo apt-get install neovimsudo apt-get install ripgrepsudo apt-get install nodejssudo apt-get install npmnvim 설정 및 플러그인 설치mkdir -p ~/.config/nvimcd ~/.config/nvimtouch init.luamkdir -p lua/user/coremkdir -p lua/user/pluginstouch lua/user/lazy.lua vi lua/user/core/options.lua (아래 입력 후 저장)vim.cmd("let g:netrw_liststyle = 3") vi init.lua (아래 입력 후 저장)require(“user.core.options") vi lua/user/..

    [C/C++] 행렬의 연산 : 상등

    상등: 두 행렬의 크기가 같고 각각 대응하는 성분이 모두 같은 두 행렬아래 두 행렬은 상등이다.C++로 구현하기메소드 오버라이딩을 통해 행렬의 상등 연산을 구현해보자.#include #include "matrix.h"using namespace std;int main() { Matrix m1(3, 4); Matrix m2(3, 4); Matrix m3(3, 3); if (m1 == m2) printf("m1과 m2는 같은 행렬\n"); else printf("m1과 m2는 다른 행렬\n"); if (m2 == m3) printf("m2과 m3는 같은 행렬\n"); else printf("m2과 m3는 다른 행렬\n"); return 0;}...class Matr..

    [C/C++] 전치 행렬

    전치 행렬: 기존 행렬의 행과 열을 교환하여 얻은 행렬, MijT = Mji행과 열을 교환하기 때문에 기존 행렬과 크기 달라진다. m X n 행렬 -> n X m 행렬C++로 구현하기Matrix 클래스의 메소드로 transpose()를 추가했다.#include #include "matrix.h"using namespace std;int main() { Matrix m1(3, 4); printf("기존 행렬\n"); m1.print(); m1.transpose(); printf("전치 행렬\n"); m1.print(); return 0;}...class Matrix { int **mat; int row; int col;public: ... void..

    [C/C++] 단위행렬, 영행렬

    단위 행렬: 주대각선 원소가 모두 1이며 나머지 원소는 모두 0인 정사각 행렬(정사각 행렬은 행과 열의 크기가 같은 행렬)영 행렬: 모든 원소가 0인 행렬 (행렬 덧셈의 항등원)C++로 구현하기사실 단위행렬은 정사각행렬이어야 하지만 정사각행렬이 아니어도 처리하도록 코드를 짰다.기존 생성자 함수를 오버로딩해 type이라는 인자를 하나 더 받는 경우를 추가했다.type 인자 값이 0이면 해당 행렬은 영행렬이고, 1이면 단위행렬이다.두 함수의 경우 값을 입력할 필요가 없기 때문에 입력을 받지 않고 자동으로 값을 할당한다.#include #include "matrix.h"using namespace std;int main() { // 영행렬 Matrix m1(2, 3, 0); // 단위 행렬 ..

    [C/C++] 행렬

    선형대수를 복습하며 C++ 클래스로 만들어보려고 한다. (코드의 효율은 일단 좀 미뤄두고....)행렬: 수 또는 문자들을 행과 열을 갖는 직사각형 모양으로 나열하여 묶어둔 것위 행렬은 m X n 크기의 행렬이다.원소 Amn는 m행 n열의 값을 나타낸다.C++로 구현하기Matrix라는 클래스로 행렬을 구현했다.생성자 파라미터로 배열의 크기를 전달받고 생성자에서 배열 크기에 맞는 2차원 배열을 동적할당 및 원소 값 입력을 받는다. 아래와 같은 main() 함수로 행렬을 생성 및 출력해보자.#include #include "matrix.h"using namespace std;int main() { Matrix m1(3, 3); Matrix m2(3, 2); m1.print(); m2.pr..

    [Linux, Ubuntu] tmux 설정

    아래 명령어로 tmux와 필요한 플러그인을 설치하자.sudo apt-get install tmuxgit clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm아래 내용을 ~/.tmux.conf 파일에 입력 후 설정 파일을 적용시키고, 플러그인을 설치해야 한다.Ctrl+a 입력 후 :source-file ~/.tmux.conf 를 입력하면 설정 파일을 적용시킬 수 있다.후에 Ctrl+a 입력 후 대문자 i를 입력하면 플러그인이 설치된다.set -g default-terminal "screen-256color"set -g prefix C-aunbind C-bbind-key C-a send-prefixunbind %bind | split-window -h..

    [Linux, Ubuntu] vim 파일 탐색기 netrw 사용법

    netrw는 vim에서 기본으로 제공하는 파일 탐색기이다.기본 프로그램이기 때문에 별도의 설치나 설정 없이도 사용할 수 있다.vim 화면에서 :Explore 명령어를 사용하거나 터미널 화면에서 vi . 를 통해 진입할 수 있다.(블로그 주인장은 .vimrc에서 지정한 단축키로 진입함, 아래 글에 있음)netrw에 오게되면 vim에서와 같이 j/k로 위아래 이동한 뒤 파일/디렉토리를 엔터키로 선택할 수 있다. [Linux, Ubuntu] 나의 .vimrc 설정vim의 설정파일 .vimrc은 다음과 같이 설정되어 있다.마지막 세션 Key Setting 파트는 단축키 설정이라 취향에 맞게 설정하면 될 것 같다."""""""""""""""""""""""" GENERAL """""""""""""""""""""""..

    [Linux, Ubuntu] 모든 계정에서 같은 vimrc 파일 적용하기

    vim 설정 파일(.vimrc)을 계정마다 설정해주는게 귀찮아서 모든 계정에 같은 설정이 적용되는 방법을 찾아봤다."/etc/vim/vimrc.local"이라는 파일을 만들어 해당 파일에 vim 설정을 해두면 모든 계정(root까지도 동일하게 적용됨)에서 같은 vim 설정이 적용된다는 것을 알게 됐다. 아래 글에 블로그 주인장이 사용하는 vimrc 내용을 볼 수 있다..vimrc의 내용을 위에서 소개한 경로 파일에 넣고 사용하고 있다. [Linux, Ubuntu] 나의 .vimrc 설정vim의 설정파일 .vimrc은 다음과 같이 설정되어 있다.마지막 세션 Key Setting 파트는 단축키 설정이라 취향에 맞게 설정하면 될 것 같다."""""""""""""""""""""""" GENERAL """""""..