
문제. 알파벳 소문자로만 이루어진 단어 S가 주어진다. 각각의 알파벳에 대해서 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력하는 프로그램을 작성하시오. 입출력. 첫째 줄에 단어 S가 주어진다. 단어의 길이는 100을 넘지 않으며, 알파벳 소문자로만 이루어져 있다. 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출력한다. 단어의 첫 번째 글자는 0번째 위치이고, 두 번째 글자는 1번째 위치이다. 방법. 알파벳 개수는 총 52개이므로, 단어에 포함되어 있는 여부를 확인하기위한 용도로 52개의 요소를 가지는 배열..

📌 파이썬 기초 속성 강의 복습 강의를 들으면서 노션에 필기해둔 거를 그냥 한번 읽은 다음에 복사 붙여넣기 하려다가 하나하나 타이핑하다보면 뭐라도 머리에 남겠지 싶어서 다시 작성해나가며 복습해보겠다. 👉 파이썬의 특징 # 한 줄 주석하기 """여러 줄 주석하기""" '''큰 따옴표와 작은 따옴표 모두 사용 가능''' ✔ 한 줄 주석을 할 때에는 #을 사용하고, 여러 줄을 주석처리 할 때에는 큰 따옴표나 작은 따옴표를 3개 사용한다. ✔ 일반적으로 문장의 끝에 세미콜론을 사용하지 않아서 들여쓰기를 탭에 맞춰 해주는 것이 중요. ✔ 세미콜론을 붙여도 에러가 발생하지 않으므로 만약 한 줄에 여러 구문을 사용할 때에는 세미콜론으로 구분해주자. 👉 Hello World 출력하기 print("Hello World"..

📌 학습 준비하기 먼저 파이썬 기초 속성 강의 1시간짜리를 들은 적 있는데 그때 정리해놓았던 내용을 복습한다. 그리고 그 다음 진도는 엘리스 트랙의 혼자 공부하는 파이썬을 따르고, 추가 공부가 필요할 때에는 코딩 도장을 참고하기로 한다. 본 과정 시작 전에 많은 내용을 공부해도 좋겠지만, 워밍업 한다는 생각으로 무리하지 않도록 하자. (+) 그리고 공부 진도에 맞춰서 코드업 100제를 파이썬으로 풀어봐야겠다. 👉 Window 에서 Python 작업 환경 구축하기 1. 아래 링크에서 파이썬 3.9.2 버전을 다운로드 Download Python The official home of the Python Programming Language www.python.org 2. vscode를 켜서 Python 확장..

문제. 알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을 때, 주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오. 입출력. 알파벳 소문자, 대문자, 숫자 0-9 중 하나가 첫째 줄에 주어진다. 입력으로 주어진 글자의 아스키 코드 값을 출력한다. 방법. 문자를 입력받아 char형 변수에 저장하고, 출력 함수에서 형식 지정자 %d를 사용해서 출력하자. #include int main(){ char c; scanf("%c",&c); printf("%d\n",c); return 0; } Insight. 7단계부터 차근차근 풀어보기로 마음먹어서 일단 풀었는데 생각보다 너무 간단한 문제였어서 오늘 하나 더 풀어야겠다. 11654번: 아스키 코드 알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을..

2021.03.06.토 공용체 ✔ 공용체는 선언 방식이 구조체와 같지만, 공용체는 모든 멤버가 하나의 저장 공간을 같이 사용한다. union student{ int num; double grade; }; ✔ 공용체는 union 예약어를 사용해 선언하며, 구조체와 마찬가지로 공용체 변수를 선언해 사용할 수 있다. ✔ 공용체 역시 선언 후 세미콜론을 붙여 마무리해야한다. ✔ 이 때, 저장 공간이 할당되는 방식과 초기화하는 방식은 다음 규칙을 따른다. //공용체 변수의 크기는 멤버 중 가장 큰 자료형의 크기로 설정 printf("st1의 크기 : %lu\n", sizeof(st1)); ✔ 공용체 변수의 크기는 멤버 중 크기가 가장 큰 멤버로 결정된다. ✔ student 공용체의 경우 가장 큰 double형만큼..

2021.03.06.토 구조체 배열 ✔ 구조체 변수는 멤버가 여러 개지만 구조체 변수 자체는 하나의 변수로 취급된다. ✔ 따라서 같은 형태의 구조체 변수가 많이 필요하면 배열을 선언할 수 있다. struct person { char *name; int age; char *addr; }; int main(void){ struct person list[3] = { {"짱구", 5, "서울"}, {"유리", 5, "부산"}, {"철수", 5, "제주"} }; return 0; } ✔ 구조체 배열을 선언하면 구조체 변수가 배열의 요소가 된다. ✔ 각 요소는 일정한 크기로 연속된 저장 공간에 할당된다. ✔ 구조체 배열의 초기화는 배열의 초기화 방식이 동일하다. 다만 요소가 구조체이므로 중괄호를 2개 사용하자. p..

문제. 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력하는 프로그램을 작성하시오. 입출력. 첫째 줄에 1,000보다 작거나 같은 자연수 N이 주어진다. 첫째 줄에 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력한다. 방법. n은 1000보다 작거나 같다. for문을 돌려서 1부터 n까지의 숫자 중 한수가 있는지 확인한다. i가 100보다 작은 수는 무조건 등차수열이므로 한수의 개수를 저장하는 cnt 변수의 값을 +1 한다. 100 이상의 수는 모든 자릿수의 차이가 동일할 때에 한수이므로, cnt 값을 +1 한다. #inc..

2021.03.05.금 구조체 변수의 초기화와 대입 연산 struct student{ int num; char name[20]; double grade; }; struct student s1 = { 21, "홍길동", 2.4 }; ✔ 구조체 변수도 일반 변수와 같이 선언과 동시에 초기화가 가능하다. ✔ 하지만 여러 멤버를 초기화해야 하므로, 배열 초기화와 비슷한 방법을 사용해야 한다. ✔ 초깃값을 중괄호로 묶고 각 멤버의 형태에 맞는 값으로 초기화. struct student temp; struct student s1={315, "유리", 2.4}; struct student s2={316, "짱구", 3.7}; struct student s3={317, "철수", 4.4}; temp = s1; //s1..

2021.03.05.금 구조체 선언과 멤버 사용 ✔ 구조체는 사용자가 임의로 정의한 자료형이라고 볼 수 있다. ✔ 구조체를 선언하면 새로운 자료형이 만들어지고, 그 이후부터는 구조체 변수를 만들어 사용할 수 있다. struct student{ int num; double grade; }; ✔ 구조체는 struct 예약어를 사용해 선언한다. ✔ 구조체의 이름은 성격에 맞는 적절한 이름을 붙이고, 중괄호 내부 블록 안에 필요한 멤버를 나열한다. ✔ 멤버 선언은 구조체를 구성하는 자료형 종류와 이름을 컴파일러에게 알리는 역할을 한다. ✔ 선언 형태는 변수와 유사하나, 메모리 저장 공간을 할당받지 않는다는 차이점이 있다. ✔ 그리고 마지막으로 중괄호로 블록을 닫아준 뒤에는 반드시 세미콜론을 붙여야 한다. #in..

📌 조건문 조건식과 문장을 포함하는 {블록}으로 구성되어 있으며, 조건식의 연산 결과에 따라 실행문이 달라져 프로그램의 실행 흐름을 변경할 수 있다. 조건식의 결과는 반드시 참이나 거짓 이어야 한다. 조건문 마지막에는 세미콜론을 붙이지 않으니 주의하자. 👉 if 문 1. if 문 if (조건식) { // 조건식이 참일 때 실행될 문장 } ✔ 조건식이 참이라면, if문 내부의 명령문이 실행. ✔ 조건식이 거짓이라면, if문 내부의 명령문이 실행되지 않고 다음 명령문으로 이동한다. 2. if-else문 if (조건식) { // 조건식이 참일 때 실행될 문장 }else { // 조건식이 거짓인 경우 실행될 문장 } ✔ 조건식이 참이라면, if문 내부의 명령문이 실행. ✔ 조건식이 거짓이라면, if문 내부의 명..