2025년, 코딩은 선택이 아닌 필수!

2025년 모든 학교에서 코딩이 시작 됩니다. 먼저 준비하는 사람만이 기술을 선도해 갑니다~

강의자료 343

[알고리즘 수학] 등수 구하기

원당이 반 인원은 10명인데 이번에 시험을 보았는데 친구들 성적을 물어 보니 다음과 같았습니다. [ 85, 90,95,75,100,85,70,95,100] 원당이는 점수는 90점입니다. 그렇다면 원당이는 반에서 몇등을 했을까요? 문제풀이 자신보다 높은 점수가 몇명인지 세어 주면 4명입니다. 4명이 원당이보다 잘했기 때문에 원당이의 등수는 5등입니다. 프로그래밍 문제의 기초문제에서 자주 보이는 유형의 문제입니다. 이러한 문제를 해결 하기 위해서 자신의 등수를 알고 싶을 때 전체를 모두 찾아 보면서 자신 보다 높은 점수의 인원을 센 다음 +1 을 해 주면 자신의 등수가 나옵니다. 만약 모든 사람의 등수를 판별하기 위해서는 이중 반복문으로 첫번째 반복문에서는 구하고 싶은 사람을 선택 해 주고 그 다음 반복문에..

[초등 1학년 1학기] 여러가지 모양 살펴 보기 엔트리로 코딩하기

오늘은 초등 1학년 1학기 2단원 문제에서 나오는 여러가지 모양 살펴 보기를 해 볼께요~​ 수학시간에 배운 모양은 아마도 다음과 같은 모양이었을거예요~ 생활 주변에서 사물의 모양을 보고 어떤 모양인지 찾아 보고 분류 해 볼 수가 있는데요~​ 오늘은 엔트리로 이러한 모양을 이용해서 코딩을 해 볼께요~ ​ 준비하기 ​ 1. 엔트리 사이트 접속(https://playentry.org/) 2. 로그인 한 다음(네이버 아이디 또는 회원가입) 3. 만들기 -> 작품 만들기 로 들어가면 다음과 같은 화면이 뜹니다. ​ 작품만들기 오늘 만들 작품은 엔트리봇이 아닌 무대 위에 정육면체,구모양,원기둥모양의 오브젝트를 올려 놓고 해당 오브젝트를 클릭하면 내가 정육면체인지 구모양인지 원기둥 모양인지 말하도록 코딩을 해 볼꺼예..

[초등 1학년 1학기] 1부터 5까지의 수 세기 엔트리로 만들어 보기

문제 출처 ] https://ko.khanacademy.org/math/kor-1st-1/x22720cd23d5246e1:1-1-1 1. 9까지의 수 | 초등 1학년 1학기 | 수학 | Khan Academy 사물의 성질이 달라도 집합수 측면에서 수가 같음을 인식하여 수 개념을 구성하고 수가 필요한 상황을 통하여 수를 이용했을 때의 편리함을 인식한다. 또한 실생활의 여러 상황에서 9까지의 수 ko.khanacademy.org 오늘은 초등 1학년 1학기 1단원 문제를 엔트리를 이용해서 1부터 5까지의 수세기 문제를 코딩으로 풀어 보겠습니다. ​ 학교에서 배운 수 세기~ 코딩으로 연습하면서 복습하는 시간을 만들어 볼께요. ​ 1은 '하나' 또는 '일'이라고 읽습니다. 2는 '둘' 또는 '이'라고 읽습니다. ..

[인공지능수학]MNIST

MNIST란? 숫자 0부터 9까지의 이미지로 구성된 손글씨 데이터 집합입니다. 컴퓨터에 숫자 이미지를 입력하면 머신러닝을 통해서 숫자 이미지가 의미하는 값을 출력하는데요~ 이러한 기술은 우체국에서 사람들이 손으로 적은 우편번호를 인식하여 분류한다거나 주차장에 차량이 진입할 때 자동으로 차량 번호를 인식 하는 등 많은 곳에 활용을 하고 있습니다. 그렇다면 컴퓨터가 이러한 손글씨를 어떻게 인식하는지 살펴 봅시다. 이미지데이터셋 이미지 데이터셋을 살펴보면 위와 같이 손글씨용 숫자 0~9 까지의 데이터로 이루어져 있습니다. MNIST 이미지 위와 같은 흑백 이미지의 데이터는 다음과 같은 형태의 숫자 모음으로 표현 됩니다. 검은색 부분은 0 흰색부분은 255에 가까운 숫자로 표현이 됩니다. 위의 이미지는 28 *..

[인공지능수학] 경사하강법으로 학습하는 방법 알아 보기

경사하강법(Gradient descent)란? 경사하강법의 기본 개념은 함수의 기울기를 구하고 경사의 반대 방향으로 계속 이동 시켜 극값에 이를때 까지 반복 시켜 제시된 함수의 기울기로 최소값을 찾아내는 머신러닝의 알고리즘입니다. 이것은 머신러닝에서 훈련데이터를 훈련을 마친 후 타겟데이터와 비교해서 손실값을 찾게 됩니다. 이러한 손실값이 최소화 하는 위치가 가장 좋은 훈련을 한 모델이 되는 것이므로 이러한 손실값이 최소화 되는 위치를 찾을때 경사하강법을 사용하게 됩니다. 선형회귀와 경사하강법의 관계 선형회귀의 목표는 산점도 그래프를 잘 표현하는 직선의 방정식 y = ax + b 에서 입력데이터(x)와 타깃데이터(y)를 통해 기울기 (a)와 절편 (b) 를 찾는 것입니다. 경사하강법은 모델이 데이터를 잘 ..

[알고리즘 수학] 쇼핑몰의 등급별 할인율을 계산해 주자.

원당 쇼핑몰에서는 회원등급에 따라 할인 서비스를 제공합니다. 회원 등급에 따른 할인율은 다음과 같습니다. 등급 할인율 Silver 5% Gold 10% VIP 20% 원당이는 원당 쇼핑몰에서 점원으로 일을 하고 있습니다. 그런데 원당이는 할인율에 대한 개념을 배우지 못해서 얼마를 계산해야 하는지 모릅니다. 여러분이 원당이를 도와서 다음 손님들에게서 얼마를 받아야 하는지 알려 주세요. 고객등급 물건 정가 Silver 35000 Gold 74000 VIP 154000 문제 풀이 1%는 1/100 을 의미 합니다. 5%는 원래 금액에서 5/100 을 빼 준 금액이므로 원래 금액 - (원래금액 * 0.05) = 원래 금액 * 0.95 와 동일합니다. 따라서 다음과 같이 계산을 하면 됩니다. Silver 고객 :..

[자료구조]Dynamic Segment Tree

Dynamic Segment Tree 는 다음과 같은 경우에 사용됩니다. 0으로 초기화 된 10억개의 수열이 있을 때 Q(10만)개의 질의에 대해 실시간으로 업데이트와 그에 대한 답을 구하는 경우 일반적인 세그먼트 트리로는 10억개의 공간을 모두 할당 할 수 없기 때문에 불가능 합니다. 하지만 이때 잘 생각해 보면 1번의 쿼리에 변경되는 노드의 갯수는 log2(10억) =(약)21의 갯수만 변경 되는 것을 알 수 있습니다. 따라서 최대 21 * Q(10만) 개의 공간만 있으면 가능하겠다는 아이디어에서 Dynamic Segment Tree 는 출발 합니다. 즉 다음과 같은 트리에서 2번 위치의 값이 변경이 된다면 노드의 갯수를 회색으로 색칠 된 3개만 만들어 놓겠다는 것이 Dynamic Segment Tr..

[머신러닝 따라하기] 01.데이터 준비

도미와 빙어를 분류하는 머신러닝을 만들기 위한 데이터 준비를 알아 보겠습니다. 1. 데이터 준비 먼저 도미와 빙어 데이터가 포함된 데이터를 구하러 가 보시죠. 캐글에는 많은 데이터가 제공되고 있습니다. 캐글에서 제공하는 물고기 데이터를 다운받아 보겠습니다. https://www.kaggle.com/datasets/aungpyaeap/fish-market Fish market Database of common fish species for fish market www.kaggle.com 해당 사이트에 들어가서 Download 버튼을 클릭하여 데이터를 다운 받을 수 있습니다. 다운을 받아 압축을 해제 하면 Fish.csv 파일이 있습니다. 이 파일을 구글 드라이버에 로딩 후 작업을 진행 하겠습니다. 자신의 ..

9.1 타이타닉 경진대회 참여하기

학습목표캐글 가입부터 결과 제출까지 전체 프로세스를 배우자. 학습순서캐글가입 -> 경진대회 참여 -> 주피터 노트북 설정 -> 결과 제출하기 -> 컨트리뷰터 되기 -> 예제코드 캐글 노트북 복사하기  1. 캐글 가입kaggle.com 에 접속홈페이지 우측 상단의 Register 클릭하여 가입구글 계정으로 가입 가능2. 경진대회 참여타이타닉 경진대회에 참여해 보자.이 대회는 타이타닉호를 탄 승객들의 이름,성별,나이,지불한 운임,가족수 등 여러 정보를 주고 각 승객이 살았는지 죽었는지 예측하는 경진대회로 대회라기 보다는 튜토리얼 성격이 강하다.1. Competitions 메뉴 클릭2. 검색창에 Titanic 이라고 검색한 뒤 Titanic:Machine Learning from Disaster 찾아 클릭3...

[정보올림피아드대비]11.소가 풀을 먹는 문제

목장에 같은 속도로 자라는 풀밭이 있는데 27마리 소가 6주 또는 23마리 소가 9주 동안 먹을 수 있습니다. 그러면 21마리 소가 몇주 먹을 수 있습니까? 이런 유형의 문제를 소가 풀을 먹는 문제라고 합니다. 이러한 문제를 푸는데 중요한 것은 풀의 총량이 변하고 매일, 매주마다 같은 속도로 자라며 시간이 많이 지날수록 풀의 총량도 많아지는 것입니다. 풀의 총량은 두개 부분입니다. 1) x시간 전에 풀밭에 있는 풀의 양 2) x시간 후에 풀밭에 매일(매주) 새로 자라는 풀의 양입니다. 그렇다면 위의 문제를 분석해 봅시다. 27마리 소가 6주동안 먹은 풀 : 원래의 풀 + 6주간 자라는 풀 23마리 소가 9주동안 먹은 풀 : 원래의 풀 + 9주간 자라는 풀 따라서 27마리 소가 6주동안 먹은 풀의 양은 1..