분류 전체보기
Remix와 Ganache로 컨트랙트 호출 & 배포 해보기
Remix에서 Ganache 프라이빗 네트워크에 컨트랙트 배포, 호출 하기 우선 프라이빗 네트워크를 구동해주고 ganache-cli -d -m -p 7545 -a 5 Remix에서 Environment를 Ganache Provider로 변경한다 *여기서는 3_Ballot.sol 파일을 이용하여 진행하였음 배포를 해보면 ganache에서 결과를 확인할 수 있다 Console에서 Ganache 프라이빗 네트워크에 컨트랙트 배포, 호출 하기 배포하기 다른 cmd 창을 열어서 프라이빗 네트워크에 연결을 해준다 geth attach http://localhost:7545 컨트랙트를 배포하기 위해서는 ABI와 바이트코드가 필요하다 ABI는 Remix에서 컴파일한 결과로 얻을 수 있다 바이트 코드는 Remix에서 컨..
트랜잭션에 데이터 담아 보내기
이전 글에서 트랜잭션을 이용하여 이더를 전송하였다 2022.08.23 - [프로그래밍/블록체인] - 이더리움 프라이빗 네트워크 만들고 MetaMask로 송금하기 이번에는 더 나아가 트랜잭션에 "hello erthereum" 메시지를 담아 보내보자 트랜잭션에서 data 필드에 데이터를 담아 보낼 수 있다 예시 eth_sendTransaction(from = '0xb117a8bc3ecf2c3f006b89da6826e49b4193977a', data = '0x8f8a0d190000000000000000000000000000000000000000000000000000000 0000000060000000000000000000000000000000000000000000000000000000000000002') et..
이더리움 프라이빗 네트워크 만들고 MetaMask로 송금하기
사전 설치 세팅 Cholocatey 설치 https://chocolatey.org/install 위 사이트 들어가서 다음 코드 복사 Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1')) PowerShell 관리자 권한으로 실행한 후 코드 붙여 넣기 기타 프로그램 설치 git, golan..
[코드잇] 다양한 프로그래밍 인강 추천
개발 공부에 푹 빠져있을 때 다양한 분야의 프로그래밍에 대해 알고 싶어서 코드잇을 수강한 적이 있다 코드잇에는 다양한 강의가 있다 웹, 데이터베이스, 서버, 인공지능, 자동화, 깃 등등 무제한 수강 멤버십이기 때문에, 결제 한 번으로 코드 잇의 전체 강의를 수강할 수 있어서 나는 지난 100일 동안 HTML, CSS, Javascript, React, 데이터 사이언스, 머신러닝, 딥러닝, Django SQL, Git, 알고리즘, 자료구조.. 등등 많은 강의를 들었다 100일 동안 무려 총 2350개의 강의 들었다;; 강의 하나의 길이는 대략 5분~10분 정도 되므로 가볍게 들을 수 있는 장점이 있다 그리고 강의를 들으면서 코드를 직접 작성하면서 테스트할 수 있는 환경도 제공해 준다 또한 커뮤니티를 통해 ..
싸피 모바일반 비전공자 4개월차 후기
ssafy 지원 시기에 맞춰 조회수를 빨아(?) 먹어야 하니🤑 싸피 지원했을 때부터 지금까지의 후기를 적어본다 유용한 정보는 이미 다른 블로그들에 많으니 후기를 중심으로 말해볼까 한다 본인 스펙 학교 - 지거국 학과 - 전자공학과 학점 - 4.39 토익 - 845 대외활동 - x 개발경험 - 어플로 용돈좀 벌어볼까 하고 만든 하꼬 유튜브 스트리밍 어플 면접 면접 준비는 별로 안 했다 많이들 하는 면접스터디도 안 했다 왜냐면 개발자가 되고 싶은 이유와 싸피에 들어가고 싶은 이유가 확고했기 때문이었다 누군가 나한테 불꽃싸따구를 날려서 나를 때려눕히는 한이 있더라도, 무조건 싸피를 가고 싶은 마음뿐이었다 그냥 가서 무지성으로 내 광기 어린 의지를 뽐내고 왔다🔥 면접 내용을 공개할 수는 없다 학점이 높다보니 면..
순열, 조합, 중복순열, 중복조합을 만드는 방법
순열, 조합, 중복순열, 중복조합을 만들 수 있는 여러가지 방법을 설명하겠다 마지막에는 한가지 방법으로 순열, 조합, 중복순열, 중복조합을 모두 만들 수 있는 방법을 알려주겠다 사용할 배열에는 1 2 3이 저장되어 있는 상태이다 이 배열을 이용하여 3개 중에서 2개를 뽑는 순열, 조합, 중복순열, 중복조합을 생성해보겠다 순열을 만드는 방법 1. 반복을 이용한 순열 가장 쉽게 만들 수 있는 순열이다 2~3개를 뽑는 경우에는 간단하게 사용할 수 있지만 뽑는 수가 많아지면 코드가 더러워(?)진다 static int[] arr = {1, 2, 3}; public static void per() { for (int i = 0; i < 3; i++) { for (int j = 0; j n) 함수를 종료시킨다 sta..
위상 정렬을 구하는 두 가지 방법
위상 정렬이란 다음과 같은 그래프가 있다 각 노드는 해야할 작업이며 작업은 이전 작업이 끝나야 시작할 수 있다 예를 들어 3번 작업을 하기 위해서는 2번 작업을 먼저 해야하고 2번 작업을 하기 위해서는 1번 작업을 먼저해야한다 그러므로 작업순서는 1 2 3이 된다 그러면 다음과 같은 경우를 보자 3번이나 5번 작업을 하기 위해서는 2번 작업을 먼저 해야하고 2번 작업을 하기 위해서는 1번과 4번 작업을 해야한다 그러므로 작업 순서는 1 4 2 3 5 or 4 1 2 3 5 or 1 4 2 5 3 or 4 1 2 5 3 이 될 수 있다 이처럼 작업 순서가 있는 경우 작업 순서를 구하는 것을 위상 정렬이라 한다 위상 정렬하는 방법 위상 정렬을 구하는 방법에는 두 가지가 있다 진입 차수가 0인 노드를 지우면서..
스택 - 후위표기식
계산기 문자열로 된 계산식이 주어질 때, 스택을 이용하여 계산식의 값을 계산할 수 있다 중위 표기법의 수식을 스택을 이용하여 후위 표기법으로 바꾼다 후위 표기법의 수식을 스택을 이용하여 계산한다 중위 표기법의 수식을 후위 표기법으로 변환하는 방법 수식을 하나씩 읽는다 수식이 피연산자이면 출력한다 수식이 연산자이면 스택에 push한다 연산자의 우선순위를 따진다 더이상 읽을 수식이 없으면 스택에 있는 연산자를 모두 pop한다 변환 방법의 예 1. 덧셈과 뺄셈의 경우 연산자는 스택에 push, 피연산자는 출력하기 스택에 사칙연산 우선순위가 동등한 연산이 있을 경우 해당 연산을 pop한 후 push하기 중위 표기식이 3+4+5 인 경우의 예 3은 피연산자이므로 출력한다 +는 연산자이므로 push한다 4는 피연산..
스택 - 괄호검사, DFS
스택의 구현 스택을 구현하기 위해서 필요한 자료구조 - 자료를 선형으로 저장할 저장소. 배열을 이용하여 스택 구현이 가능하다 스택의 연산 삽입(push) - 저장소에 자료를 저장한다 삭제(pop) - 저장소에서 자료를 꺼낸다 isEmpty - 스택이 공백인지 아닌지를 확인한다 peek - 스택이 top에 있는 item을 반환한다 static int st[] = new int [10]; int top = -1; // 스택에 마지막 삽입된 원소의 위치를 가리킴 st[++top] = 1; // 단순하게 구현한push st[top--] // 단순하게 구현한 pop // 간단하게 push 구현 void push(int x) { if (++top > st.length) { // overflow } else { st..
다차원 배열의 clone
배열의 복사 배열을 복사할 때는 clone을 이용한다 int[] a = {1,2,3}; int[] b = a.clone(); 복사된 배열을 출력해보면 배열의 요소들이 잘 복사된 것을 확인할 수 있다 System.out.println("a 배열"); for (int i : a) { System.out.print(i); } System.out.println("\n"); System.out.println("b 배열"); for (int i : b) { System.out.print(i); } 출력결과 a 배열 123 b 배열 123 서로 참조하는 대상이 다른 것도 확인할 수 있다 System.out.println("a 배열의 주소"); System.out.print(a); System.out.println("..