<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>공대생의 살아온 흔적</title>
    <link>https://thpop.tistory.com/</link>
    <description>이런저런 이야기들을 기록합니다.</description>
    <language>ko</language>
    <pubDate>Wed, 17 Jun 2026 18:11:36 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>thpop</managingEditor>
    <image>
      <title>공대생의 살아온 흔적</title>
      <url>https://tistory1.daumcdn.net/tistory/7187455/attach/3659b161e6e24478b61498c0a617d683</url>
      <link>https://thpop.tistory.com</link>
    </image>
    <item>
      <title>《투자일기》 2. 고민되는 지금</title>
      <link>https://thpop.tistory.com/149</link>
      <description>&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: justify;&quot;&gt;최근들어 19일에 이란 전쟁 종전이 이루어진다는 소식이 들리면서 주식들이 하나둘씩 오르고 있는 상황이다.&lt;br&gt;&lt;br&gt;결론적으로 말하면 불과 6일전에 구매했던 엔비디아를 판매하고, 알파벳A와 QQQI에 추가로 진입하였다.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;/p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1080&quot; data-origin-height=&quot;1086&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/KfNct/dJMcageO53V/lHi3yhkk1DDzFtldAjM9Ik/tfile.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/KfNct/dJMcageO53V/lHi3yhkk1DDzFtldAjM9Ik/tfile.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/KfNct/dJMcageO53V/lHi3yhkk1DDzFtldAjM9Ik/tfile.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FKfNct%2FdJMcageO53V%2FlHi3yhkk1DDzFtldAjM9Ik%2Ftfile.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1080&quot; height=&quot;1086&quot; data-origin-width=&quot;1080&quot; data-origin-height=&quot;1086&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: justify;&quot;&gt;&lt;br&gt;&lt;br&gt;엔비디아를 계속 들고 있는 것에 대해서도 생각해보았지만 최근 아이폰17의 SIRI를 SIRI AI로 새롭게 뜯어고치는 과정에서 Foundation Model을 gemini를 기반으로 하여 새로 만들었다는 내용을 접했고 나는 구글을 믿어보기로 했다.&lt;br&gt;&lt;br&gt;QQQI에 진입한 것은 별다른 뜻은 없고, 개인적으로 커버드콜 배당주를 통해서 현금을 확보하는 것에 관심이 있었는데, 마침 배당락이어서 가격이 하락했고 1주정도 구입할 수 있는 자금이 있어서 구매했다.&lt;br&gt;&lt;br&gt;&lt;br&gt;또한 추가적인 변동을 덧붙이자면 7월부로 청년미래적금이 생기면서 그곳에 50만원씩 적립해야하는 상황이 되었다.&lt;br&gt;&lt;br&gt;따라서 한 달에 20~30만원 내외로만 주식에 투자하고, 가능하면 알파벳A를, 여유 자금이 남는다면 QQQI를 금액에 맞게 배당락날에 구입하려고 한다.&lt;br&gt;&lt;br&gt;그리고 휴가가 있는 달에는 지출때문에 더욱 투자가 제한될 것 같아 7월에는 어떠한 상황이 될 지 장담하기 힘든 상황이다.&lt;/p&gt;</description>
      <category>투자일기</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/149</guid>
      <comments>https://thpop.tistory.com/149#entry149comment</comments>
      <pubDate>Tue, 16 Jun 2026 20:36:18 +0900</pubDate>
    </item>
    <item>
      <title>《투자일기》 1.목표와 현황</title>
      <link>https://thpop.tistory.com/148</link>
      <description>&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: justify;&quot;&gt;개인적으로 설정한 투자 목표는 다음과 같다.&lt;br&gt;&lt;br&gt;1. 남은 군생활 약 6개월동안 주식 자산 1,000만원 넘기기&lt;br&gt;2. 예산에 따라 달라지지만, 가능하면 매달 50만원 투자하기&lt;br&gt;&lt;br&gt;그리고 AI를 이용해서 투자 방향을 조언받으면서 투자해볼 것이다.&lt;br&gt;&lt;br&gt;투자는 매달 10일, 군 월급이 들어오는 날에 진행하려고 하고 이외에는 보유 위주로 할 생각이다.&lt;br&gt;&lt;br&gt;26.06.10 기준 현재 보유 주식 현황은 다음과 같다.&lt;/p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1080&quot; data-origin-height=&quot;1104&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/GQ1Wp/dJMcadCdEYz/beuOdPY9TuVJVt1ZmgxmGk/tfile.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/GQ1Wp/dJMcadCdEYz/beuOdPY9TuVJVt1ZmgxmGk/tfile.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/GQ1Wp/dJMcadCdEYz/beuOdPY9TuVJVt1ZmgxmGk/tfile.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FGQ1Wp%2FdJMcadCdEYz%2FbeuOdPY9TuVJVt1ZmgxmGk%2Ftfile.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1080&quot; height=&quot;1104&quot; data-origin-width=&quot;1080&quot; data-origin-height=&quot;1104&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: justify;&quot;&gt;&lt;br&gt;기존에는 SPYM 24주, 알파벳 A 3주만 보유하고 있었지만, 오늘 AI의 의견을 받아 엔비디아 2주를 추가로 구매했다.&lt;br&gt;&lt;br&gt;26.06.10에 있었던 급작스러운 미국의 이란 공격과 알파벳 A의 유상 증자, 스페이스X IPO의 상장으로 인한 자금 흐름의 이동 등 여러 일들 때문에 수익률이 전반적으로 떨어졌지만, 이를 추자 투자할 기회라고 보아 계획보다 더 많은 금액을 투자했다.&lt;br&gt;&lt;br&gt;내 주식의 상황이 어떻게 변할지 한 달 후를 기약하며 글을 마쳐보고자 한다.&lt;/p&gt;</description>
      <category>투자일기</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/148</guid>
      <comments>https://thpop.tistory.com/148#entry148comment</comments>
      <pubDate>Wed, 10 Jun 2026 19:17:31 +0900</pubDate>
    </item>
    <item>
      <title>《투자일기》 0. 무작정 미국시장 뛰어들기</title>
      <link>https://thpop.tistory.com/147</link>
      <description>&lt;p data-ke-size=&quot;size16&quot; style=&quot;text-align: justify;&quot;&gt;군대라는 곳에서 생활한지 어느덧 1년이라는 시간이 지났고, 얼마 전부터 &quot;군대에서 모은 돈을 어떻게 하지?&quot;라는 의문이 불어나기 시작했다.&lt;br&gt;&lt;br&gt;돈이라는 것이 그냥 계좌에 넣어둔다고 해서 알아서 막 증식하는 것도 아니고, 군대라는 제한된 장소 안에서 돈을 불리려면 그&amp;nbsp;&amp;nbsp;방법은 '투자'밖에 없다는 생각이 들었다.&lt;br&gt;&lt;br&gt;그렇다면 어떤 투자를 해야 하는가?&lt;br&gt;필자는 미국 주식에 투자해보기로 했고, 현재 투자중이다.&lt;br&gt;&lt;br&gt;최근 AI니, 이란 전쟁이니, 젠슨 황이니 하는 이슈들과 함께 시장이 꽤나 안정적이지 못할 것으로 생각되기에, 본인은 소위 말하는 '우량주'와 'ETF(상장지수펀드)' 위주로 투자하되, AI의 도움을 받아 투자하고 있다.&lt;br&gt;&lt;br&gt;기본적인 투자 방식은 매달 일정한 금액, 혹은 일정한 수량의 주식을 계속 구매하는 적립식 투자를 하려고 한다.&lt;br&gt;&lt;br&gt;가능한 한 정기적으로 수익률을 기록하며, 스스로 피드백도 해보는 기회를 앞으로 가져보고자 한다.&lt;br&gt;&lt;br&gt;구체적인 예산과 투자 방향은 다음 글에 첨부하여 작성해보겠다.&lt;/p&gt;</description>
      <category>투자일기</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/147</guid>
      <comments>https://thpop.tistory.com/147#entry147comment</comments>
      <pubDate>Tue, 9 Jun 2026 20:38:06 +0900</pubDate>
    </item>
    <item>
      <title>백준 1546번 평균 - 헷갈리지말자</title>
      <link>https://thpop.tistory.com/146</link>
      <description>&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;백준 1546번 / 평균 : &lt;a href=&quot;https://www.acmicpc.net/problem/1546&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/1546&lt;/a&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;이번 문제는 자신의 점수 중에서 최댓값을 고른 다음, 모든 점수를 각각 (원래 점수 / 최댓값 * 100)으로 변경한다. 이렇게 새로 계산된 점수들의 평균을 구하는 프로그램을 작성하는 문제이다.&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;문제를 푸는 아이디어는 간단하다. &lt;span style=&quot;letter-spacing: 0px;&quot;&gt;과목의 개수 N과 각 과목의 원래 점수들을 입력받고, 입력받은 점수들 중에서 최댓값(a)을 찾는다. 이 최댓값을 이용하여 모든 원래 점수를 문제에서 제시된 방식대로 새로운 점수로 변환한다. 마지막으로, 이 새로운 점수들의 합을 구하고 과목의 개수 N으로 나누어 평균을 계산한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;문제를 풀어나가는 흐름은 다음과 같다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;15:1-15:25&quot;&gt;시험 본 과목의 개수 N을 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;16:1-16:47&quot;&gt;N개의 현재 성적을 공백으로 구분하여 입력받고, 이를 숫자 리스트로 저장한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;17:1-17:28&quot;&gt;저장된 점수 리스트에서 최댓값 M을 찾는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;18:1-18:95&quot;&gt;기존 점수 리스트를 직접 수정한다. 각 원래 점수에 대해 (점수 / M * 100)을 계산하여 새로운 점수로 변환한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;19:1-19:25&quot;&gt;변환된 모든 새 점수들의 합을 구한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;20:1-20:42&quot;&gt;새 점수들의 합을 과목의 개수 N으로 나누어 새로운 평균을 계산한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;21:1-22:0&quot;&gt;계산된 평균을 출력한다.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 만든 코드는 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1747639237461&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;N = int(input())
list1 = list(map(int,input().split()))
a = max(list1)

for k in range(len(list1)):
    list1[k] = list1[k] / a * 100
mean = sum(list1) / len(list1)

print(float(mean))&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 결과는 다음과 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-19 162053.png&quot; data-origin-width=&quot;130&quot; data-origin-height=&quot;49&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bXAiLd/btsN29anEvt/uDoSWPNpkyarTjRGBDjuz0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bXAiLd/btsN29anEvt/uDoSWPNpkyarTjRGBDjuz0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bXAiLd/btsN29anEvt/uDoSWPNpkyarTjRGBDjuz0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbXAiLd%2FbtsN29anEvt%2FuDoSWPNpkyarTjRGBDjuz0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;186&quot; height=&quot;70&quot; data-filename=&quot;화면 캡처 2025-05-19 162053.png&quot; data-origin-width=&quot;130&quot; data-origin-height=&quot;49&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/146</guid>
      <comments>https://thpop.tistory.com/146#entry146comment</comments>
      <pubDate>Mon, 19 May 2025 16:20:55 +0900</pubDate>
    </item>
    <item>
      <title>백준 10811번 바구니 뒤집기 - swap 매커니즘</title>
      <link>https://thpop.tistory.com/145</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 10811번 / 바구니 뒤집기 : &lt;a href=&quot;https://www.acmicpc.net/problem/10811&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/10811&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 문제는 앞서 풀어본 바구니와 공 문제와 비슷하다. N개의 바구니가 있고, 각 바구니에는 1번부터 N번까지의 번호가 순서대로 적혀있다. M번 동안 특정 구간 [a, b]를 선택하여 그 구간에 있는 바구니들의 순서를 역순으로 뒤집는 작업을 한다. 모든 작업이 끝난 후, 1번 바구니부터 N번 바구니까지 각각 어떤 숫자가 적혀있는지 공백으로 구분하여 출력해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 또한 swap 매커니즘을 이용하면 간단히 해결할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제를 푸는 흐름은 다음과 같다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;15:1-15:35&quot;&gt;바구니의 개수 N과 순서를 뒤집는 횟수 M을 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;16:1-16:70&quot;&gt;크기가 N인 리스트를 만들고, 각 바구니의 번호에 해당하는 인덱스에 &lt;b&gt;인덱스 +1&lt;/b&gt;을 넣어 초기화한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;17:1-21:67&quot;&gt;M번 반복하면서 다음을 수행한다:
&lt;ul style=&quot;list-style-type: disc;&quot; data-sourcepos=&quot;18:7-21:67&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;18:7-18:51&quot;&gt;순서를 뒤집을 시작 바구니 번호 a와 끝 바구니 번호 b를 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;19:7-19:97&quot;&gt;리스트 인덱스는 0부터 시작하므로, a-1번 인덱스부터 b-1번 인덱스까지에 해당하는 부분을 가져온다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;20:7-20:78&quot;&gt;가져온 부분 리스트를 역순으로 뒤집는다.&amp;nbsp;&lt;/li&gt;
&lt;li data-sourcepos=&quot;21:7-21:67&quot;&gt;뒤집힌 부분 리스트를 원래 리스트의 a-1번 인덱스부터 b-1번 인덱스까지의 위치에 다시 할당한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li data-sourcepos=&quot;22:1-23:0&quot;&gt;모든 작업이 끝나면, 리스트의 모든 요소를 문자열로 변환하여 공백으로 구분해 한 줄에 출력한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 만든 코드는 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1747638009838&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;N, M = map(int,input().split())
list1 = []

for i in range(N):
    list1.append(i+1)

for j in range(M):
    a, b = map(int,input().split())
    temp = list1[a-1:b]
    temp.reverse()
    list1[a-1:b] = temp

k = ' '.join(map(str,list1))
print(k)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 결과는 아래와 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-19 155705.png&quot; data-origin-width=&quot;126&quot; data-origin-height=&quot;104&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9gcMY/btsN2KB77re/Su410EqrGDpXoB72CDZ3GK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9gcMY/btsN2KB77re/Su410EqrGDpXoB72CDZ3GK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9gcMY/btsN2KB77re/Su410EqrGDpXoB72CDZ3GK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9gcMY%2FbtsN2KB77re%2FSu410EqrGDpXoB72CDZ3GK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;126&quot; height=&quot;104&quot; data-filename=&quot;화면 캡처 2025-05-19 155705.png&quot; data-origin-width=&quot;126&quot; data-origin-height=&quot;104&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/145</guid>
      <comments>https://thpop.tistory.com/145#entry145comment</comments>
      <pubDate>Mon, 19 May 2025 16:00:02 +0900</pubDate>
    </item>
    <item>
      <title>백준 3052번 나머지 - 리스트 2개 사용하기</title>
      <link>https://thpop.tistory.com/144</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 3052번 / 나머지 : &lt;a href=&quot;https://www.acmicpc.net/problem/3052&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/3052&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 문제는 수 10개를 입력받은 뒤, 이를 42로 나눈 나머지를 구하고, 그 다음에 서로 다른 값이 몇 개 있는지 출력하는 프로그램을 만드는 문제이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 문제를 푸는 실마리는 두 개의 리스트를 같이 사용하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 개의 빈 리스트를 만들고, 첫 번째에는 10개의 수를, 두 번째에는 첫 번째 안에 들어있는 10개의 수를 나눈 나머지를 저장하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제를 푸는 흐름은 다음과 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;15:1-15:99&quot;&gt;10개의 입력된 숫자를 저장할 리스트와 서로 다른 나머지들을 저장할 리스트를 만든다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;16:1-19:151&quot;&gt;10번 반복하면서 다음을 수행한다:
&lt;ul style=&quot;list-style-type: disc;&quot; data-sourcepos=&quot;17:7-19:151&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;17:7-17:88&quot;&gt;하나의 숫자를 입력받아 첫 번째 리스트에 추가한다&lt;/li&gt;
&lt;li data-sourcepos=&quot;18:7-18:50&quot;&gt;입력받은 숫자를 42로 나눈 나머지를 계산한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;19:7-19:151&quot;&gt;이 나머지가 두 번째 리스트에 아직 포함되어 있지 않다면 나머지를 두 번째 리스트에 추가한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li data-sourcepos=&quot;20:1-21:0&quot;&gt;10개의 숫자에 대한 처리가 모두 끝나면, 두 번째 리스트의 길이를 출력한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 만든 코드는 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1747637246680&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;list1 = []
list2 = []

for i in range(10):
    a = int(input())
    list1.append(a)
    b = a % 42
    if b not in list2:
        list2.append(b)

print(len(list2))&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 결과는 다음과 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-19 154413.png&quot; data-origin-width=&quot;279&quot; data-origin-height=&quot;187&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/br3jnF/btsN4pDc2il/jnJWBfC94zgZ96RfqDIul0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/br3jnF/btsN4pDc2il/jnJWBfC94zgZ96RfqDIul0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/br3jnF/btsN4pDc2il/jnJWBfC94zgZ96RfqDIul0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbr3jnF%2FbtsN4pDc2il%2FjnJWBfC94zgZ96RfqDIul0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;279&quot; height=&quot;187&quot; data-filename=&quot;화면 캡처 2025-05-19 154413.png&quot; data-origin-width=&quot;279&quot; data-origin-height=&quot;187&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/144</guid>
      <comments>https://thpop.tistory.com/144#entry144comment</comments>
      <pubDate>Mon, 19 May 2025 15:47:31 +0900</pubDate>
    </item>
    <item>
      <title>백준 5597번 과제 안 내신 분...? - 역시나 리스트</title>
      <link>https://thpop.tistory.com/143</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 5597번 / 과제 안 내신 분...? : &lt;a href=&quot;https://www.acmicpc.net/problem/5597&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/5597&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;이번 문제는 X대학 M교수님의 프로그래밍 수업을 듣는 30명의 학생 중, 특별 과제를 제출한 28명의 출석번호가 주어졌을 때, 과제를 제출하지 않은 나머지 두 학생의 출석번호를 찾아내는 코드를 만드는 것이다. 출석번호는 1번부터 30번까지 있으며, 결과는 두 학생의 출석번호를 작은 번호부터 한 줄에 하나씩 출력해야 한다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;문제를 푸는 아이디어의 발상은 간단하다. 1~30이 담긴 리스트를 만들고, 입력받은 출석 번호들을 지워나가면 두 개만 남는 것을 이용한다.&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;문제를 푸는 흐름은 다음과 같다.&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;15:1-15:46&quot;&gt;1부터 30까지의 숫자가 모두 포함된 리스트를 생성한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;16:1-16:38&quot;&gt;28번 반복하면서 과제를 제출한 학생의 출석번호를 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;17:1-17:35&quot;&gt;입력받은 출석번호를 전체 학생 명단 리스트에서 제거한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;18:1-18:76&quot;&gt;28명의 번호를 모두 제거하고 나면 리스트에는 두 개의 번호만 남게 된다. 이 두 번호가 과제를 제출하지 않은 학생들의 번호이다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;19:1-20:0&quot;&gt;남은 두 번호 중 작은 번호를 먼저 출력하고, 큰 번호를 그 다음 줄에 출력한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 만든 코드는 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1747636542359&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;list1 = []
for i in range(1,31):
    list1.append(i)
for j in range(28):
    a = int(input())
    list1.remove(a)

max = max(list1)
min = min(list1)

print(min)
print(max)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 결과는 다음과 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-19 153624.png&quot; data-origin-width=&quot;336&quot; data-origin-height=&quot;323&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dgNLyh/btsN28h9ytb/Q5DOq3rOzB39ibR9eKNQO1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dgNLyh/btsN28h9ytb/Q5DOq3rOzB39ibR9eKNQO1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dgNLyh/btsN28h9ytb/Q5DOq3rOzB39ibR9eKNQO1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdgNLyh%2FbtsN28h9ytb%2FQ5DOq3rOzB39ibR9eKNQO1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;336&quot; height=&quot;323&quot; data-filename=&quot;화면 캡처 2025-05-19 153624.png&quot; data-origin-width=&quot;336&quot; data-origin-height=&quot;323&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/143</guid>
      <comments>https://thpop.tistory.com/143#entry143comment</comments>
      <pubDate>Mon, 19 May 2025 15:36:25 +0900</pubDate>
    </item>
    <item>
      <title>백준 10813번 공 바꾸기 - 스왑(swap) 사용하기</title>
      <link>https://thpop.tistory.com/142</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;백준 10813번 / 공&amp;nbsp;바꾸기 :&amp;nbsp;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;a style=&quot;color: #006dd7;&quot; href=&quot;https://www.acmicpc.net/problem/10813&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/10813&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;이번 문제는&amp;nbsp;N개의&amp;nbsp;바구니가&amp;nbsp;있고,&amp;nbsp;처음에는&amp;nbsp;각&amp;nbsp;바구니에&amp;nbsp;1번부터&amp;nbsp;N번까지의&amp;nbsp;번호가&amp;nbsp;순서대로&amp;nbsp;적힌&amp;nbsp;공이&amp;nbsp;하나씩&amp;nbsp;들어있는&amp;nbsp;상태에서&amp;nbsp;시작한다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;1번 바구니에는 1번 공이, 2번 바구니에는 2번 공이,,,, N번 바구니에는 N번 공이 들어있다. 이후 M번 동안 두 바구니를 선택하여 그 안에 들어있는 공을 서로 교환하는 작업을 수행한다. 모든 작업이 끝난 후, 1번 바구니부터 N번 바구니까지 각각 어떤 공이 들어있는지 공백으로 구분하여 출력해야 한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt; 둘째 줄부터 M개의 줄에 걸쳐서 공을 교환할 방법이 주어진다. 각 방법은 두 정수 a,b로 이루어져 있으며, a번 바구니와 b번 바구니에 들어있는 공을 교환한다는 뜻이다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;문제 자체가 앞서 풀어봤던 10810번 문제와 비슷하기에, 큰 어려움 없이 풀 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333; text-align: start;&quot;&gt;문제를 푸는 흐름은 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;15:1-15:35&quot;&gt;바구니의 개수 N과 공을 교환하는 횟수 M을 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;16:1-16:76&quot;&gt;크기가 N인 리스트를 만들고, 리스트에 &lt;b&gt;인덱스+1&lt;/b&gt;인 번호의 공을 넣어 초기화한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;17:1-19:208&quot;&gt;M번 반복하면서 다음을 수행한다:
&lt;ul style=&quot;list-style-type: disc;&quot; data-sourcepos=&quot;18:7-19:208&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;18:7-18:41&quot;&gt;공을 교환할 두 바구니의 번호 a와 b를 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;19:7-19:208&quot;&gt;리스트 인덱스는 0부터 시작하므로, a-1번 인덱스의 바구니와 b-1번 인덱스의 바구니에 있는 공을 서로 교환한다. 이를 위해 임시 변수를 사용하여 한쪽 값을 저장해두고 교환 작업을 수행한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li data-sourcepos=&quot;20:1-21:0&quot;&gt;모든 작업이 끝나면, 리스트의 모든 요소를 문자열로 변환하여 공백으로 구분해 한 줄에 출력한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 만든 코드는 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1747636166515&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;N,M = map(int, input().split())
list = []
temp = 0

for a in range(N):
    list.append(a+1)

for b in range(M):
    i,j = map(int,input().split())
    temp = list[i-1]
    list[i-1] = list[j-1]
    list[j-1] = temp

result = ' '.join(map(str,list))
print(result)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 결과는 다음과 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-19 152943.png&quot; data-origin-width=&quot;124&quot; data-origin-height=&quot;102&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IsKzD/btsN2ZZ128k/Bio7xaRKK5JebiFVRQkmIk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IsKzD/btsN2ZZ128k/Bio7xaRKK5JebiFVRQkmIk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IsKzD/btsN2ZZ128k/Bio7xaRKK5JebiFVRQkmIk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIsKzD%2FbtsN2ZZ128k%2FBio7xaRKK5JebiFVRQkmIk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;124&quot; height=&quot;102&quot; data-filename=&quot;화면 캡처 2025-05-19 152943.png&quot; data-origin-width=&quot;124&quot; data-origin-height=&quot;102&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/142</guid>
      <comments>https://thpop.tistory.com/142#entry142comment</comments>
      <pubDate>Mon, 19 May 2025 15:29:41 +0900</pubDate>
    </item>
    <item>
      <title>백준 10810번 공 넣기 - 리스트 &amp;amp; 조건문</title>
      <link>https://thpop.tistory.com/141</link>
      <description>&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;백준 10810번 / 공 넣기 : &lt;a href=&quot;https://www.acmicpc.net/problem/10810&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/10810&lt;/a&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;이번 문제는 조금 복잡하다고 볼 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;N개의 바구니를 가지고 M번 동안 공을 넣는 작업을 시뮬레이션한다. 각 바구니는 1번부터 N번까지 번호가 매겨져 있으며, 처음에는 모든 바구니가 비어있는 상태이다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;앞으로 M번 공을 넣고, 한 번 공을 넣을 때 공을 넣을 바구니 범위를 정하고, 정한 바구니에 모두 같은 번호가 적혀있는 공을 넣는다. 만약, 바구니에 공이 이미 있는 경우에는 들어있는 공을 빼고, 새로 공을 넣는다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #555555; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;첫째 줄에 N (1 &amp;le; N &amp;le; 100)과 M (1 &amp;le; M &amp;le; 100)이 주어진다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #555555; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #555555; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;둘째 줄부터 M개의 줄에 걸쳐서 공을 넣는 방법이 주어진다. 각 방법은 세 정수 a b c로 이루어져 있으며, a번 바구니부터 b번 바구니까지에 c번 번호가 적혀져 있는 공을 넣는다는 뜻이다. &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #555555; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #555555; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;예를 들어, 2 5 6은 2번 바구니부터 5번 바구니까지에 6번 공을 넣는다는 뜻이다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #555555; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #555555; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;이 문제는 문제의 이해만 조금 복잡할 수 있지 이해만 한다면 구상 자체는 간단하다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #555555; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #555555; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;문제의 풀이 흐름은 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #555555; text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;15:1-15:33&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;바구니의 개수 N과 공을 넣는 횟수 M을 입력받는다.&lt;/span&gt;&lt;/li&gt;
&lt;li data-sourcepos=&quot;16:1-16:46&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;크기가 N인 리스트(바구니 역할)를 만들고, 모든 요소를 0으로 초기화한다.&lt;/span&gt;&lt;/li&gt;
&lt;li data-sourcepos=&quot;17:1-19:112&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;M번 반복하면서 다음을 수행한다:&lt;/span&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-sourcepos=&quot;18:7-19:112&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;18:7-18:64&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;공을 넣을 시작 바구니 번호 a, 끝 바구니 번호 b, 그리고 공의 번호 c를 입력받는다.&lt;/span&gt;&lt;/li&gt;
&lt;li data-sourcepos=&quot;19:7-19:112&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;실제 리스트의 인덱스는 0부터 시작하므로, a-1번 인덱스부터 b-1번 인덱스까지 반복하면서 해당 바구니에 c를 저장한다.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li data-sourcepos=&quot;20:1-21:0&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;모든 작업이 끝나면, 리스트의 모든 요소를 문자열로 변환하여 공백으로 구분해 한 줄에 출력한다.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;내가 만든 코드는 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1747634930306&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;N,M = map(int, input().split())
list = []

for i in range(N):
    list.append(0)

for j in range(M):
    a,b,c = map(int,input().split())
    for k in range(a-1,b):
        list[k] = c

result = ' '.join(map(str,list))
print(result)&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&quot; data-ke-size=&quot;size16&quot;&gt;출력 결과는 다음과 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-19 150908.png&quot; data-origin-width=&quot;110&quot; data-origin-height=&quot;101&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/WEArQ/btsN22bmFX6/HkllrpOKGGdGTCp89JGCKK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/WEArQ/btsN22bmFX6/HkllrpOKGGdGTCp89JGCKK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/WEArQ/btsN22bmFX6/HkllrpOKGGdGTCp89JGCKK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWEArQ%2FbtsN22bmFX6%2FHkllrpOKGGdGTCp89JGCKK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;150&quot; height=&quot;138&quot; data-filename=&quot;화면 캡처 2025-05-19 150908.png&quot; data-origin-width=&quot;110&quot; data-origin-height=&quot;101&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/141</guid>
      <comments>https://thpop.tistory.com/141#entry141comment</comments>
      <pubDate>Mon, 19 May 2025 15:09:15 +0900</pubDate>
    </item>
    <item>
      <title>백준 2562번 최댓값 - 리스트 활용하기</title>
      <link>https://thpop.tistory.com/140</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 2562번 / 최댓값 : &lt;a href=&quot;https://www.acmicpc.net/problem/2562&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/2562&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 문제는 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 코드를 만드는 것이다. 수는 한 줄에 하나씩 입력되며, 최댓값과 그 위치(1부터 시작하는 순서)를 각각 따로 출력해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제를 풀어나가는 발상 자체는 간단하다. 최댓값을 찾고, 그 인덱스를 찾아 1을 더하면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제를 해결하는 흐름은 다음과 같다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;15:1-15:28&quot;&gt;9개의 자연수를 저장할 빈 리스트를 만든다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;16:1-16:45&quot;&gt;반복문을 사용하여 9번 동안 각 줄에 입력되는 자연수를 리스트에 추가한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;17:1-17:36&quot;&gt;리스트에서 max() 함수를 사용하여 최댓값을 찾는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;18:1-18:52&quot;&gt;찾은 최댓값을 이용하여 list.index() 메소드로 해당 값의 인덱스를 찾는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;19:1-19:22&quot;&gt;최댓값을 첫 번째 줄에 출력한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;20:1-21:0&quot;&gt;찾은 인덱스에 1을 더한 값을 두 번째 줄에 출력한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 만든 코드는 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1747634004597&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;vacant = []

for i in range(0,9):
    a = int(input())
    vacant.append(a)
max = max(vacant)
index = vacant.index(max)

print(max)
print(index+1)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 결과는 다음과 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-19 145346.png&quot; data-origin-width=&quot;247&quot; data-origin-height=&quot;183&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/czdd4x/btsN2lvENnb/DsAKIvKCJZguDbAKAvQm21/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/czdd4x/btsN2lvENnb/DsAKIvKCJZguDbAKAvQm21/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/czdd4x/btsN2lvENnb/DsAKIvKCJZguDbAKAvQm21/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fczdd4x%2FbtsN2lvENnb%2FDsAKIvKCJZguDbAKAvQm21%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;247&quot; height=&quot;183&quot; data-filename=&quot;화면 캡처 2025-05-19 145346.png&quot; data-origin-width=&quot;247&quot; data-origin-height=&quot;183&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/140</guid>
      <comments>https://thpop.tistory.com/140#entry140comment</comments>
      <pubDate>Mon, 19 May 2025 14:54:20 +0900</pubDate>
    </item>
    <item>
      <title>백준 10818번 최소, 최대 - 반복문이 정답은 아니다</title>
      <link>https://thpop.tistory.com/139</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 10818번 / 최소, 최대 : &lt;a href=&quot;https://www.acmicpc.net/problem/10818&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/10818&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 문제는 N개의 정수가 주어졌을 때, 이 중에서 최솟값과 최댓값을 찾아 공백으로 구분하여 출력하는 프로그램을 만드는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제를 푸는 발상 자체는 누구나 간단하게 할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 제목에도 적어놨듯이 반복문을 사용하는 것은 추천하지 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나는 처음에 반복문 두개를 중첩하여 리스트를 반복하여 순회하는 코드를 만들었다가 시간 초과가 발생하는 것을 보았고, 다른 방법으로 해결하였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래가 처음 만든 코드이다.&lt;/p&gt;
&lt;pre id=&quot;code_1747633429712&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;N = int(input())
T = list(map(int, input().split()))
max = 0
min = 0

for i in T:
    for j in T:
        if i &amp;gt;= j and i &amp;gt; max:
            max = i
        if i &amp;lt;= j and:
            min = i

print(f&quot;{min} {max}&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 다음으로 만든 코드가 리스트와 관련된 내장 함수를 사용하여 간소화한 코드이다.&lt;/p&gt;
&lt;pre id=&quot;code_1747633505566&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;N = int(input())
T = list(map(int, input().split()))
max = max(T)
min = min(T)

print(f&quot;{min} {max}&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;훨씬 더 간소함을 알 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래는 출력 결과이다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-19 144454.png&quot; data-origin-width=&quot;99&quot; data-origin-height=&quot;49&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/C4JiE/btsN2eDAUv2/s2seCuZoAHK1e7U6v0bG51/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/C4JiE/btsN2eDAUv2/s2seCuZoAHK1e7U6v0bG51/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/C4JiE/btsN2eDAUv2/s2seCuZoAHK1e7U6v0bG51/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FC4JiE%2FbtsN2eDAUv2%2Fs2seCuZoAHK1e7U6v0bG51%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;180&quot; height=&quot;89&quot; data-filename=&quot;화면 캡처 2025-05-19 144454.png&quot; data-origin-width=&quot;99&quot; data-origin-height=&quot;49&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/139</guid>
      <comments>https://thpop.tistory.com/139#entry139comment</comments>
      <pubDate>Mon, 19 May 2025 14:45:29 +0900</pubDate>
    </item>
    <item>
      <title>백준 10871번 X보다 작은 수 - join()을 사용하자</title>
      <link>https://thpop.tistory.com/138</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 10871번 / X보다&amp;nbsp;작은&amp;nbsp;수 : &lt;a href=&quot;https://www.acmicpc.net/problem/10871&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/10871&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 문제는 정수 N개로 이루어진 수열 A와 정수 X가 주어질 때, 수열 A에 포함된 수 중에서 X보다 작은 수를 모두 찾아 입력된 순서대로 출력하는 코드를 만드는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이전에 풀었던 10807번 문제와 상당히 유사하다. 따라서 이전에 만들었던 코드를 활용하였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제를 푸는 흐름은 다음과 같다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;15:1-15:27&quot;&gt;정수의 개수 N과 기준값 X를 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;16:1-16:60&quot;&gt;N개의 정수로 이루어진 수열 A를 한 줄에 공백으로 구분하여 입력받고, 이를 리스트 형태로 저장한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;17:1-17:51&quot;&gt;X보다 작은 수를 저장할 새로운 빈 리스트를 만든다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;18:1-18:43&quot;&gt;수열 A의 각 요소를 순회하면서, 현재 요소가 X보다 작은지 확인한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;19:1-19:43&quot;&gt;만약 현재 요소가 X보다 작다면, 빈 리스트에 추가한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;20:1-21:0&quot;&gt;수열 A의 모든 요소에 대한 검사가 끝나면, 리스트에 있는 정수들을 문자열로 변환한 후 공백으로 연결하여 한 줄에 출력한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이때 리스트에 있는 정수들을 문자열로 변환하는데, join과 map을 섞어서 구현하였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 만든 코드는 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1747632743861&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;N, X = map(int, input().split())
T = list(map(int, input().split()))
target = []

for i in T  :
    if i &amp;lt; X:
       target.append(i)

a = &quot; &quot;.join(map(str, target))
print(a)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 결과는 다음과 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-19 143240.png&quot; data-origin-width=&quot;151&quot; data-origin-height=&quot;50&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IiOQ4/btsN12XBG9E/lA0W0jgcWRyvyaafCc1Sq0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IiOQ4/btsN12XBG9E/lA0W0jgcWRyvyaafCc1Sq0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IiOQ4/btsN12XBG9E/lA0W0jgcWRyvyaafCc1Sq0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIiOQ4%2FbtsN12XBG9E%2FlA0W0jgcWRyvyaafCc1Sq0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;226&quot; height=&quot;75&quot; data-filename=&quot;화면 캡처 2025-05-19 143240.png&quot; data-origin-width=&quot;151&quot; data-origin-height=&quot;50&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/138</guid>
      <comments>https://thpop.tistory.com/138#entry138comment</comments>
      <pubDate>Mon, 19 May 2025 14:32:51 +0900</pubDate>
    </item>
    <item>
      <title>백준 10807번 개수세기 - 리스트를 만들자</title>
      <link>https://thpop.tistory.com/136</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 10807번 / 개수세기 : &lt;a href=&quot;https://www.acmicpc.net/problem/10807&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/10807&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #555555; text-align: start;&quot;&gt;이번 문제는 첫째 줄에 정수의 개수 N(1 &amp;le; N &amp;le; 100)이 주어지고, 둘째 줄에는 정수가 공백으로 구분되어진 상태로 주어지고, 셋째 줄에는 찾으려고 하는 정수 v가 주어질 때 v가 몇 개 있는지 찾는 프로그램을 만드는 것이다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #555555; text-align: start;&quot;&gt;문제를 푸는 흐름은 아래와 같다.&lt;/span&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;15:1-15:20&quot;&gt;정수의 개수 N을 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;16:1-16:49&quot;&gt;N개의 정수를 한 줄에 공백으로 구분하여 입력받고, 이를 리스트 형태로 저장한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;17:1-17:21&quot;&gt;찾으려는 정수 v를 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;18:1-18:36&quot;&gt;개수를 셀 변수를 0으로 초기화한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;19:1-19:48&quot;&gt;저장된 정수 리스트의 각 요소를 순회하면서, 현재 요소가 v와 같은지 확인하고, 같다면&amp;nbsp;count&amp;nbsp;변수의&amp;nbsp;값을&amp;nbsp;1&amp;nbsp;증가시킨다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;21:1-22:0&quot;&gt;리스트의 모든 요소를 확인한 후, count 변수의 값을 출력한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 만든 구문은 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1747631976402&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;N = int(input())
T = list(map(int, input().split()))
num = 0
V = int(input())
for i in T:
    if i == V:
        num += 1

print(num)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 결과는 아래와 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-19 141949.png&quot; data-origin-width=&quot;158&quot; data-origin-height=&quot;65&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/1bMCp/btsN1R2LFgv/vVZujn5lh1M5ELT3DHcgMK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/1bMCp/btsN1R2LFgv/vVZujn5lh1M5ELT3DHcgMK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/1bMCp/btsN1R2LFgv/vVZujn5lh1M5ELT3DHcgMK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F1bMCp%2FbtsN1R2LFgv%2FvVZujn5lh1M5ELT3DHcgMK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;219&quot; height=&quot;90&quot; data-filename=&quot;화면 캡처 2025-05-19 141949.png&quot; data-origin-width=&quot;158&quot; data-origin-height=&quot;65&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/136</guid>
      <comments>https://thpop.tistory.com/136#entry136comment</comments>
      <pubDate>Mon, 19 May 2025 14:19:50 +0900</pubDate>
    </item>
    <item>
      <title>문자열, 그리고 len(), split(), join()</title>
      <link>https://thpop.tistory.com/135</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;Python&lt;/span&gt;에서 문자열은 텍스트 데이터를 처리하는 데 사용되는 중요한 자료형이며, 또한 파이썬의 문자열은 &lt;b&gt;불변(immutable)&lt;/b&gt;하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문자열을 처리하기 위한 여러 가지 함수가 있는데, 이번에는 길이와 관련된 len(), 분리와 관련된 split(), &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;결합&lt;span&gt;과 관련된&lt;/span&gt;&lt;/span&gt; join()에 대해서 알아볼 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;-&amp;nbsp; len()&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;len() 함수는 주어진 문자열의 길이를 반환한다. 이 길이에는 문자열에 포함된 문자들의 총 개수를 의미한다. 공백이나 특수 문자도 길이에 포함된다. 또한 다른 시퀀스 타입에서도 len()을 사용할 수 있다.&lt;/p&gt;
&lt;pre id=&quot;code_1747571821286&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;string = &quot;Hello, Python!&quot;
length = len(string)
print(length)  


&amp;gt;&amp;gt;&amp;gt; 결과: 14&lt;/code&gt;&lt;/pre&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;-&amp;nbsp; split()&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;len()과 달리 문자열에 특정한 함수도 있다. 해당 함수는 string.function(arguments)의 형태로 사용된다. 즉 문자열 이름을 입력하고 .을 입력한 뒤, 함수의 이름과 &lt;b&gt;인수(arguments)&lt;/b&gt;를 입력하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;split() 함수는 인수에 입력된 특정 &lt;b&gt;구분자(separator)&lt;/b&gt;를 기준으로 하나의 문자열을 작은 문자열들의 리스트로 쪼갠다.&lt;/p&gt;
&lt;pre id=&quot;code_1747572047325&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sentence = &quot;Apple,Banana,Cherry&quot;
fruits = sentence.split(&quot;,&quot;)
print(fruits)

&amp;gt;&amp;gt;&amp;gt; 결과: ['Apple', 'Banana', 'Cherry']

long_sentence = &quot;This is a long sentence.&quot;
words = long_sentence.split()
print(words) 

&amp;gt;&amp;gt;&amp;gt; 결과: ['This', 'is', 'a', 'long', 'sentence.']&lt;/code&gt;&lt;/pre&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;-&amp;nbsp; join()&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;join() 메서드는 split() 메서드와 반대이다. join() 메서드는 문자열 리스트를 하나의 문자열로 결합한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사용 방법은 결합할 문자열을 지정한 다음에 문자열 리스트를 결합하는 것이다. 즉 split()메서드를 역행하는 것과 유사하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;join()메서드는 문자열 리스트를 string.join(list)의 형태로 결합한다.&lt;/p&gt;
&lt;pre id=&quot;code_1747572211509&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;my_list = ['Hello', 'world', 'Python']
joined_string = &quot; &quot;.join(my_list)
print(joined_string)

&amp;gt;&amp;gt;&amp;gt;결과: Hello world Python

numbers = ['1', '2', '3']
comma_separated = &quot;,&quot;.join(numbers)
print(comma_separated)

&amp;gt;&amp;gt;&amp;gt; 결과: 1,2,3&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>파이썬/개념</category>
      <category>Python</category>
      <category>파이썬</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/135</guid>
      <comments>https://thpop.tistory.com/135#entry135comment</comments>
      <pubDate>Sun, 18 May 2025 21:43:34 +0900</pubDate>
    </item>
    <item>
      <title>백준 10951번 A+B (5) - 간단하지만 조심</title>
      <link>https://thpop.tistory.com/134</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 10951번 / A+B : &lt;a href=&quot;https://www.acmicpc.net/problem/10951&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/10951&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그동안 풀어온 A+B를 구하는 문제들과 비슷하며, 무엇보다 바로 직전에 풀어본 10952번보다 간단한 문제이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 종료 조건이 명시되어있지 않아 그냥 무한루프를 사용했다간 런타임 에러가 발생한다.&lt;br /&gt;&lt;br /&gt;입력의 끝에 명확한 종료 신호가 주어지지 않고, 파일의 끝(EOF)으로 판단해야 할 때는 try-except 구문을 사용해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제 풀이 흐름은 다음과 같다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;15:1-15:31&quot;&gt;while True:구문을 사용해 무한 루프를 시작한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;16:1-16:51&quot;&gt;루프 내부의 try 블록 안에서 두 정수 A와 B를 입력받고, A+B를 출력한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;17:1-18:0&quot;&gt;만약 input() 함수가 더 이상 읽을 입력이 없어서 EOFError를 발생시키면, except EOFError: 블록으로 이동하여 break를 실행, 무한 루프를 빠져나온다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 만든 구문은 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1747547235525&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;while True:
    try:
        a, b = map(int, input().split())
        print(a + b)
    except EOFError:
        break&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/134</guid>
      <comments>https://thpop.tistory.com/134#entry134comment</comments>
      <pubDate>Sun, 18 May 2025 14:47:08 +0900</pubDate>
    </item>
    <item>
      <title>백준 10952번 A+B (4) - 반복문 조건에 주의</title>
      <link>https://thpop.tistory.com/133</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 10952번 / A+B : &lt;a href=&quot;https://www.acmicpc.net/problem/10952&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/10952&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제는 그동안 풀어본 A+B를 출력하는 프로그램과 같으나, 차이점이 있다면 테스트 케이스의 개수가 미리 주어지지 않고, 입력의 마지막 줄에는 0 두 개가 들어오며 이 입력이 주어지면 프로그램을 종료해야 한다는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입력의 종료 조건이 주어졌으므로, while 반복문을 사용하여 이 조건을 만족할 때까지 계속해서 입력을 받고 처리하는 방식으로 접근할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;풀이의 흐름은 다음과 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;15:1-15:28&quot;&gt;먼저 두 정수 A와 B를 한 번 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;16:1-16:225&quot;&gt;while 루프의 조건으로 A와 B가 둘 다 0이 아닌 동안 반복하도록 설정한다.(문제에 따르면, &quot;입력의 마지막에는 0 두 개가 들어온다&quot;고 했으므로, a != 0 and b != 0이 더 적절해 보인다.)&lt;/li&gt;
&lt;li data-sourcepos=&quot;17:1-17:23&quot;&gt;루프 내부에서는 A+B를 출력한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;18:1-19:0&quot;&gt;다음 입력을 받기 위해 루프의 마지막 부분에서 다시 A와 B를 입력받는다. 이 새로운 A, B 값으로 다음 while 루프의 조건을 검사하게 된다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이때 &lt;b&gt;'다음 입력을 받기 위해 루프의 마지막 부분에서 다시 A와 B를 입력받는다.'&lt;/b&gt;부분이 중요하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 &amp;nbsp;A와 B를 입력받는 부분이 출력보다 앞에 위치하게 되면 0 0을 입력했을 때, 0을 출력하게 되어버린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 만든 코드는 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1747546722221&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;a,b = map(int, input().split())

while a!=0 and b!=0:
    print(a+b)
    a,b = map(int, input().split())&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 결과는 다음과 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-18 143924.png&quot; data-origin-width=&quot;207&quot; data-origin-height=&quot;187&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/L6RoP/btsN1clnkZX/lu6BToIrjcuAukZRRCTYok/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/L6RoP/btsN1clnkZX/lu6BToIrjcuAukZRRCTYok/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/L6RoP/btsN1clnkZX/lu6BToIrjcuAukZRRCTYok/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FL6RoP%2FbtsN1clnkZX%2Flu6BToIrjcuAukZRRCTYok%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;207&quot; height=&quot;187&quot; data-filename=&quot;화면 캡처 2025-05-18 143924.png&quot; data-origin-width=&quot;207&quot; data-origin-height=&quot;187&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/133</guid>
      <comments>https://thpop.tistory.com/133#entry133comment</comments>
      <pubDate>Sun, 18 May 2025 14:39:22 +0900</pubDate>
    </item>
    <item>
      <title>백준 2439번 별 찍기 (2) - 띄어쓰기에 주의</title>
      <link>https://thpop.tistory.com/132</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 2439번 / 별 찍기 (2) : &lt;a href=&quot;https://www.acmicpc.net/problem/2439&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/2439&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제는 앞서 풀었던 2438번 문제와 비슷하게 N번째 줄에 별 N개를 찍는 것이지만, 이번에는 오른쪽을 기준으로 정렬하여 출력해야 하는 문제이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉, 첫째 줄에는 N-1개의 공백 후 별 1개, 둘째 줄에는 N-2개의 공백 후 별 2개, ..., N번째 줄에는 공백 없이 별 N개를 찍는 방식이다. 입력으로 1과 100 사이의 정수 n이 주어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공백과 별 모두를 사용해야 함게 주의하며 문제를 풀어나가는 흐름은 다음과 같다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;15:1-15:24&quot;&gt;출력할 총 줄의 수 N을 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;16:1-18:35&quot;&gt;1부터 N까지 반복하는 루프를 만든다&lt;br /&gt;- 해당 줄에 필요한 별의 개수는 i개이다.&lt;br /&gt;- 해당 줄에 필요한 공백의 개수는 N-i개이다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;19:1-19:50&quot;&gt;계산된 개수만큼 공백 문자를 먼저 만들고, 그 뒤에 별 문자를 만들어 이어 붙인다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;20:1-21:0&quot;&gt;생성된 문자열 (공백 + 별)을 출력한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 흐름에 따라 문제를 풀어보면 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1747546093920&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;n = int(input())
a = '*'
a_1 = &quot; &quot;

for i in range(1,n+1):
    b = a*i
    c = a_1 * (n-i)
    print(c+b)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 결과는 다음과 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-18 142835.png&quot; data-origin-width=&quot;140&quot; data-origin-height=&quot;146&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bv1rlz/btsN21WJELk/ApyD24ZsN5BVNPsMsZgINk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bv1rlz/btsN21WJELk/ApyD24ZsN5BVNPsMsZgINk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bv1rlz/btsN21WJELk/ApyD24ZsN5BVNPsMsZgINk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbv1rlz%2FbtsN21WJELk%2FApyD24ZsN5BVNPsMsZgINk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;140&quot; height=&quot;146&quot; data-filename=&quot;화면 캡처 2025-05-18 142835.png&quot; data-origin-width=&quot;140&quot; data-origin-height=&quot;146&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/132</guid>
      <comments>https://thpop.tistory.com/132#entry132comment</comments>
      <pubDate>Sun, 18 May 2025 14:28:33 +0900</pubDate>
    </item>
    <item>
      <title>백준 2438번 별 찍기 (1) - 간단한 문자열</title>
      <link>https://thpop.tistory.com/131</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 2438번 / 별 찍기 : &lt;a href=&quot;https://www.acmicpc.net/problem/2438&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/2438&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제는 첫째 줄에는 별 1개, 둘째 줄에는 별 2개,,,, N번째 줄에는 별 N개를 찍는 프로그램을 만드는 것이다. 입력으로 1과 100 사이의 정수 n이 주어진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-sourcepos=&quot;13:1-13:92&quot; data-ke-size=&quot;size16&quot;&gt;N번 반복하면서 각 줄에 해당하는 개수만큼 별을 출력하는 것이 핵심이다. 파이썬에서 문자열에 정수를 곱하면 해당 문자열이 정수만큼 반복되는 특성을 활용할 수 있다.&lt;/p&gt;
&lt;p data-sourcepos=&quot;13:1-13:92&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-sourcepos=&quot;13:1-13:92&quot; data-ke-size=&quot;size16&quot;&gt;프로그램을 풀어나가는 흐름은 다음과 같다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;출력할 줄의 수 N을 입력받는다.&lt;/li&gt;
&lt;li&gt;1부터 N까지 반복하는 루프를 만든다. 이 루프의 현재 반복 횟수가 해당 줄에 출력할 별의 개수가 된다.&lt;/li&gt;
&lt;li&gt;각 반복마다, 현재 줄 번호만큼 별 문자('*')를 반복하여 문자열을 생성한다.&lt;/li&gt;
&lt;li&gt;생성된 별 문자열을 출력한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;간단히 풀 수 있는 문제이다. 코드는 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1747545580126&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;n = int(input())
a = '*'

for i in range(1,n+1):
    b=a*i
    print(b)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 결과는 다음과 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-18 142017.png&quot; data-origin-width=&quot;79&quot; data-origin-height=&quot;103&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/LrP1d/btsN03WzIj3/HkMJkUkFbk4I785H3QnhK0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/LrP1d/btsN03WzIj3/HkMJkUkFbk4I785H3QnhK0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/LrP1d/btsN03WzIj3/HkMJkUkFbk4I785H3QnhK0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLrP1d%2FbtsN03WzIj3%2FHkMJkUkFbk4I785H3QnhK0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;79&quot; height=&quot;103&quot; data-filename=&quot;화면 캡처 2025-05-18 142017.png&quot; data-origin-width=&quot;79&quot; data-origin-height=&quot;103&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/131</guid>
      <comments>https://thpop.tistory.com/131#entry131comment</comments>
      <pubDate>Sun, 18 May 2025 14:20:14 +0900</pubDate>
    </item>
    <item>
      <title>백준 11022번 A+B (3) - 역시나 f_string</title>
      <link>https://thpop.tistory.com/130</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 11022번 / A+B : &lt;a href=&quot;https://www.acmicpc.net/problem/11022&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/11022&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;이 문제 또한 앞서 풀어본 백준 11021번 문제와 유사하다.&lt;/p&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;다만, 각 테스트 케이스의 출력 형식에 &quot;Case #x: A + B = C&quot; 와 같이 케이스 번호를 명시해야 하고, 덧셈식을 표현해야 한다는 차이점이 있다. 이때 케이스 번호는 1부터 시작한다.&lt;/p&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #222222; text-align: start;&quot;&gt;문제를 풀어나가는 과정은 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;15:1-15:25&quot;&gt;테스트 케이스의 개수(n)를 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;16:1-16:62&quot;&gt;n번 반복하면서, 현재 케이스 번호를 기억한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;17:1-17:21&quot;&gt;두 정수 A와 B를 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;18:1-19:0&quot;&gt;&quot;Case #x: A + B = C&quot; 형식에 맞춰 출력한다. 이때 x는 현재 케이스 번호, A와 B는 입력받은 값, C는 A+B의 결과이다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #222222; text-align: start;&quot;&gt;이 문제도 역시나 f_string을 사용하면 간단히 해결할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1747545148220&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;n = int(input())

for i in range(n):
    a,b = map(int,input().split())
    print(f&quot;Case #{i+1}: {a} + {b} = {a+b}&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 결과는 아래와 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-18 141331.png&quot; data-origin-width=&quot;170&quot; data-origin-height=&quot;118&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pZleg/btsN26cDnfP/KTKrGWjx4Ar6WK0lilj3ak/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pZleg/btsN26cDnfP/KTKrGWjx4Ar6WK0lilj3ak/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pZleg/btsN26cDnfP/KTKrGWjx4Ar6WK0lilj3ak/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpZleg%2FbtsN26cDnfP%2FKTKrGWjx4Ar6WK0lilj3ak%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;170&quot; height=&quot;118&quot; data-filename=&quot;화면 캡처 2025-05-18 141331.png&quot; data-origin-width=&quot;170&quot; data-origin-height=&quot;118&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/130</guid>
      <comments>https://thpop.tistory.com/130#entry130comment</comments>
      <pubDate>Sun, 18 May 2025 14:13:57 +0900</pubDate>
    </item>
    <item>
      <title>백준 11021번 A+B (2) - f_string을 사용하자</title>
      <link>https://thpop.tistory.com/129</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 11021번 / A+B : &lt;a href=&quot;https://www.acmicpc.net/problem/11021&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/11021&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제 또한 앞서 풀어본 백준 10950번 문제와 유사하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만, 각 테스트 케이스의 출력 형식에 &quot;Case #x: &quot;와 같이 케이스 번호를 명시해야 한다는 차이점이 있다. 이때 케이스 번호는 1부터 시작한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제를 풀어나가는 과정은 다음과 같다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;15:1-15:25&quot;&gt;테스트 케이스의 개수를 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;16:1-16:91&quot;&gt;n번 반복하면서, 각 반복에서 현재가 몇 번째 케이스인지 기억한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;17:1-17:21&quot;&gt;두 정수 A와 B를 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;18:1-19:0&quot;&gt;&quot;Case #x: A+B&quot; 형식에 맞춰 출력한다. 이때 x는 현재 케이스 번호이다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제 또한 f_string을 사용하면 간단히 해결할 수 있다.&lt;/p&gt;
&lt;pre id=&quot;code_1747544847472&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;n = int(input())

for i in range(n):
    a,b = map(int,input().split())
    print(f&quot;Case #{i+1}: {a+b}&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/129</guid>
      <comments>https://thpop.tistory.com/129#entry129comment</comments>
      <pubDate>Sun, 18 May 2025 14:08:13 +0900</pubDate>
    </item>
    <item>
      <title>백준 15552번 빠른 A+B - map()과 readline()</title>
      <link>https://thpop.tistory.com/128</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 15552번 / 빠른 A+B : &lt;a href=&quot;https://www.acmicpc.net/problem/15552&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/15552&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제는 백준 10950번 문제와 유사하게 여러 테스트 케이스에 대해 두 정수 A와 B의 합을 구하는 것이지만, &quot;빠른&quot;이라는 수식어가 붙은 만큼 입력 방식에 주의해야 하는 문제이다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Python에서 많은 양의 입력을 받을 때 input() 함수는 sys.stdin.readline()에 비해 느릴 수 있어 시간 초과가 발생할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 이번에는 readline()를 이용하여 a+b를 수행하는 코드를 만들어볼 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 가지 코드를 만들어보았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;첫 번째는 readline()만 사용한 코드이다.&lt;/p&gt;
&lt;pre id=&quot;code_1747544453401&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import sys
N = int(input())

for i in range(N):
    a,b = sys.stdin.readline().rstrip().split()
    a_1 = int(a)
    b_1 = int(b)
    print(a_1 + b_1)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 번째는 map()과 readline()을 같이 사용한 코드이다.&lt;/p&gt;
&lt;pre id=&quot;code_1747544477642&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import sys
N = int(input())

for i in range(N):
     a, b = map(int, sys.stdin.readline().rstrip().split())
     print(a + b)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 번째 코드가 보다 간소하기에, 이와 같은 방식을 사용하는 것이 좋아보인다.&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/128</guid>
      <comments>https://thpop.tistory.com/128#entry128comment</comments>
      <pubDate>Sun, 18 May 2025 14:01:35 +0900</pubDate>
    </item>
    <item>
      <title>백준 25304번 영수증 - map()의 사용에 주의하라</title>
      <link>https://thpop.tistory.com/127</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 25304번 / 영수증 : &lt;a href=&quot;https://www.acmicpc.net/problem/25304&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/25304&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제는 구매한 물건들의 총 금액과 영수증에 적힌 총 금액이 일치하는지 검사하는 프로그램을 만드는 것이다. 영수증에는 구매한 각 물건의 가격과 개수, 그리고 구매한 물건들의 총 금액이 적혀있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제를 풀어내는 과정은 다음과 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;15:1-15:26&quot;&gt;영수증에 적힌 총 금액 X를 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;16:1-16:27&quot;&gt;구매한 물건의 종류의 수 N을 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;17:1-17:37&quot;&gt;N번 반복하면서 각 물건의 가격 a와 개수 b를 입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;18:1-18:60&quot;&gt;물건의 가격과 개수를 곱한 값(a * b)을 계속해서 누적하여 합계(실제 총 금액)를 구한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;19:1-19:47&quot;&gt;반복이 끝나면, 계산된 실제 총 금액과 영수증에 적힌 총 금액 X를 비교한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;20:1-21:0&quot;&gt;일치하면 &quot;Yes&quot;를, 일치하지 않으면 &quot;No&quot;를 출력한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 만든 코드는 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1747543364125&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;X = int(input())
N = int(input())
sum = 0

for i in range(N):
    a,b = map(int,input().split())
    sum += a*b

if sum == X:
    print('Yes')
else:
    print('No')&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;map() 함수의 이용은 알아두면 정말 유용한 것 같다.&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/127</guid>
      <comments>https://thpop.tistory.com/127#entry127comment</comments>
      <pubDate>Sun, 18 May 2025 13:42:59 +0900</pubDate>
    </item>
    <item>
      <title>백준 8393번 합 - 간단한 반복문</title>
      <link>https://thpop.tistory.com/126</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제는 어느 숫자 n이 주어졌을 때, 1부터 n까지의 합을 구하는 프로그램을 만드는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;n은 1과 10000사이의 숫자라는 조건이 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 만든 프로그램은 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1747542851064&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;n = int(input())
sum = 0

for i in range(1, n + 1):
    sum += i

print(sum)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프로그램의 구조는 다음과 같다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;15:1-15:39&quot;&gt;사용자로부터&amp;nbsp;n값을&amp;nbsp;입력받는다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;15:1-15:39&quot;&gt;합을 저장하는 변수(sum)를 0으로 초기화한다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;17:1-17:49&quot;&gt;1부터 n까지 반복하면서, 각 숫자를 sum에 더해준다.&lt;/li&gt;
&lt;li data-sourcepos=&quot;18:1-19:0&quot;&gt;반복이 끝나면 sum을 출력한다.&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/126</guid>
      <comments>https://thpop.tistory.com/126#entry126comment</comments>
      <pubDate>Sun, 18 May 2025 13:35:09 +0900</pubDate>
    </item>
    <item>
      <title>백준 10950번 A+B (1) - map()사용하기</title>
      <link>https://thpop.tistory.com/125</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 10950번 / A+B : &lt;a href=&quot;https://www.acmicpc.net/problem/10950&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/10950&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 문제는 두 정수&lt;span&gt; A&lt;/span&gt;와&lt;span&gt; B&lt;/span&gt;를 입력받고&lt;span&gt;, A+B&lt;/span&gt;를 출력하는 프로그램을 작성하는 것이다&lt;span&gt;. &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;주의해야 할 &lt;/span&gt;점은 첫째 줄에 테스트 케이스의 개수가 주어진다는 점이다&lt;span&gt;. &lt;/span&gt;각 테스트 케이스마다&lt;span&gt; A&lt;/span&gt;와&lt;span&gt; B&lt;/span&gt;가 주어지며&lt;span&gt;, 그&lt;/span&gt;에 대해&lt;span&gt; A+B&lt;/span&gt;를 출력해야 한다&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제는 여러 테스트 케이스를 처리해야 하므로&lt;span&gt;, &lt;/span&gt;반복문을 사용하여 각 테스트 케이스를 독립적으로 다루는 것이 핵심이다&lt;span&gt;.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 테스트 케이스의 개수(n)를 입력받는다&lt;span&gt;. 이후 &lt;/span&gt;n번 반복하면서 각 줄마다 두 정수&lt;span&gt; A&lt;/span&gt;와&lt;span&gt; B&lt;/span&gt;를 입력받고,&lt;span&gt;&amp;nbsp;A&lt;/span&gt;와&lt;span&gt; B&lt;/span&gt;의 합을 출력한다&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;파이썬에서 한 줄에 있는 여러 개의 숫자를 입력받을 때는&lt;span&gt; input().split()&lt;/span&gt;을 사용하고&lt;span&gt;, &lt;/span&gt;이를 각각 정수형으로 변환하기 위해&lt;span&gt; map() 함수&lt;/span&gt;를 활용하면 편리하다&lt;span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;span&gt;내가 만든 코드는 아래와 같다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1747542483977&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;n = int(input())

for i in range(n):
    a,b = map(int,input().split())
    print(f&quot;{a+b}&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/125</guid>
      <comments>https://thpop.tistory.com/125#entry125comment</comments>
      <pubDate>Sun, 18 May 2025 13:28:04 +0900</pubDate>
    </item>
    <item>
      <title>백준 2739번 구구단 - f-string</title>
      <link>https://thpop.tistory.com/124</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 2739번 / 구구단 : &lt;a href=&quot;https://www.acmicpc.net/problem/2739&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/2739&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 문제는 N을 입력받아, 구구단 N단을 출력하는 간단한 문제이다. 예를 들어 N이 2로 주어지면 &quot;2 * 1 = 2&quot;부터 &quot;2 * 9 = 18&quot;까지 출력하면 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 문제는 반복문을 사용하여 해결할 수 있다&lt;span&gt;. &lt;/span&gt;사용자로부터&lt;span&gt; N&lt;/span&gt;값을 입력받고&lt;span&gt;&amp;nbsp;1&lt;/span&gt;부터&lt;span&gt; 9&lt;/span&gt;까지 반복하면서&lt;span&gt; N&lt;/span&gt;과 곱한 결과를 정해진 형식에 맞춰 출력하면 된다&lt;span&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;앞부분은 구현하기 쉽지만 출력부분은 어떻게 간소화할 수 있는지 고민해보았고, 나는 f-string을 사용하였다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;코드는 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1747539425894&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;a = int(input())

for i in range(1,10):
    print(f&quot;{a} * {i} = {a*i}&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;매우 간단하다.&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/124</guid>
      <comments>https://thpop.tistory.com/124#entry124comment</comments>
      <pubDate>Sun, 18 May 2025 12:37:06 +0900</pubDate>
    </item>
    <item>
      <title>백준 10172번 개 - 컴파일 에러 조심하기</title>
      <link>https://thpop.tistory.com/123</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #222222; text-align: start;&quot;&gt;백준 10172번 문제 / 개 : &lt;a href=&quot;https://www.acmicpc.net/problem/10172&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/10172&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #222222; text-align: start;&quot;&gt;해당 문제는 문제에서 제시하는 개 모양 기호를 출력하는 것이다. 앞서 고양이를 출력했을 때처럼 이때 역슬래시(\)를 비롯한 기호들의 출력을 조심해야 한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #222222; text-align: start;&quot;&gt;이스케이프 문자에 주의하며 코드를 작성해보면 다음과 같다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1747296229650&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;print(&quot;|\\_/|&quot;)
print(&quot;|q p|   /}&quot;)
print(&quot;( 0 )\&quot;\&quot;\&quot;\\&quot;)
print(&quot;|\&quot;^\&quot;`    |&quot;)
print(&quot;||_/=\\\\__|&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 결과는 아래와 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-15 170500.png&quot; data-origin-width=&quot;179&quot; data-origin-height=&quot;135&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bEzNIJ/btsNX3BX6y5/hPmeBcZfVqeQAzrygDtox1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bEzNIJ/btsNX3BX6y5/hPmeBcZfVqeQAzrygDtox1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bEzNIJ/btsNX3BX6y5/hPmeBcZfVqeQAzrygDtox1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbEzNIJ%2FbtsNX3BX6y5%2FhPmeBcZfVqeQAzrygDtox1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;179&quot; height=&quot;135&quot; data-filename=&quot;화면 캡처 2025-05-15 170500.png&quot; data-origin-width=&quot;179&quot; data-origin-height=&quot;135&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/123</guid>
      <comments>https://thpop.tistory.com/123#entry123comment</comments>
      <pubDate>Thu, 15 May 2025 17:05:06 +0900</pubDate>
    </item>
    <item>
      <title>백준 10171번 고양이 - 컴파일 에러 조심하기</title>
      <link>https://thpop.tistory.com/122</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;백준 10171번 문제 / 고양이 : &lt;a href=&quot;https://www.acmicpc.net/problem/10171&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.acmicpc.net/problem/10171&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 문제는 문제에서 제시하는 고양이 모양 기호를 출력하는 것이다. 이때 역슬래시(\)의 출력을 조심해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음 시도했을 때 아무생각 없이 아래처럼 입력했다가 컴파일 에러가 발생하였다.&lt;/p&gt;
&lt;pre id=&quot;code_1747295152786&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;print(&quot;\    /\&quot;)
print(&quot; )  ( ')&quot;)
print(&quot;(  /  )&quot;)
print(&quot; \\(__)|&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬에서 이스케이프 문자인 \을 문자 그대로 표현하기 위해서는 두 번 사용해야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 정답은 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1747295208494&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;print(&quot;\\    /\\&quot;)
print(&quot; )  ( ')&quot;)
print(&quot;(  /  )&quot;)
print(&quot; \\(__)|&quot;)&lt;/code&gt;&lt;/pre&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>백준</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/122</guid>
      <comments>https://thpop.tistory.com/122#entry122comment</comments>
      <pubDate>Thu, 15 May 2025 16:46:45 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 프로그래밍 - 랜덤 자리 배치 프로그램 만들기 (完)</title>
      <link>https://thpop.tistory.com/121</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;(앞선 내용 / &lt;a href=&quot;https://thpop.tistory.com/120&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://thpop.tistory.com/120&lt;/a&gt;)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞서 프로그램의 기본 로직을 만들었고, 그 구조는 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1747272142329&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import random

def load_students(filename=&quot;students.txt&quot;):
    students = []
    try:
        with open(filename, 'r', encoding='utf-8') as file:
            for line in file:
                students.append(line.strip())
        if not students:
            print(f&quot;경고: '{filename}' 파일이 비어있거나 학생 이름이 없습니다.&quot;)
        return students
    except FileNotFoundError:
        print(f&quot;오류: '{filename}' 파일을 찾을 수 없습니다. 파일 이름과 경로를 확인해주세요.&quot;)
        return None

def assign_seats(students):
    if not students:
        return []
    
    random.shuffle(students) 
    return students

if __name__ == &quot;__main__&quot;:
    student_list = load_students(&quot;students.txt&quot;)

if student_list:
        randomly_assigned_students = assign_seats(student_list)


num_rows = int(input(&quot;행의 수를 입력하세요. : &quot;))
num_cols = int(input(&quot;열의 수를 입력하세요. : &quot;))
print(&quot;\n 교실 배치도 &quot;)
seat_index = 0
for r in range(num_rows):
    row_display = []
    for c in range(num_cols):
        if seat_index &amp;lt; len(randomly_assigned_students):
            row_display.append(f&quot;[{randomly_assigned_students[seat_index]}]&quot;)
            seat_index += 1
        else:
            row_display.append(&quot;[빈자리]&quot;)
    print(&quot; &quot;.join(row_display))&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 이를 기반으로 AI의 도움을 받아 프로그램을 마저 만들어볼 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AI는 gemini를 사용하였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-15 102952.png&quot; data-origin-width=&quot;700&quot; data-origin-height=&quot;532&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/EwxkD/btsNYDWg2XF/3DFnQZ8eAdlQcDMTQCpikK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/EwxkD/btsNYDWg2XF/3DFnQZ8eAdlQcDMTQCpikK/img.png&quot; data-alt=&quot;나름 성공적으로 만들어진 듯 하다.&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/EwxkD/btsNYDWg2XF/3DFnQZ8eAdlQcDMTQCpikK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FEwxkD%2FbtsNYDWg2XF%2F3DFnQZ8eAdlQcDMTQCpikK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;700&quot; height=&quot;532&quot; data-filename=&quot;화면 캡처 2025-05-15 102952.png&quot; data-origin-width=&quot;700&quot; data-origin-height=&quot;532&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;나름 성공적으로 만들어진 듯 하다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이러한 디자인으로 만들었고, pyinstaller을 이용해 exe파일로 만들어보았더니, 잘 작동되는 것을 확인하였다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-15 104503.png&quot; data-origin-width=&quot;700&quot; data-origin-height=&quot;529&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/brssWF/btsNWrb0bVQ/rlENuRrFPjZtplfADk2IH1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/brssWF/btsNWrb0bVQ/rlENuRrFPjZtplfADk2IH1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/brssWF/btsNWrb0bVQ/rlENuRrFPjZtplfADk2IH1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbrssWF%2FbtsNWrb0bVQ%2FrlENuRrFPjZtplfADk2IH1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;700&quot; height=&quot;529&quot; data-filename=&quot;화면 캡처 2025-05-15 104503.png&quot; data-origin-width=&quot;700&quot; data-origin-height=&quot;529&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사용 방법 또한 간단하다. 학생 이름을 한 줄에 한 명씩 입력한 txt 파일을 준비하고, 파일 명을 입력한 뒤 자리배치를 실행하면 된다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/d7EM7v/btsN4cKB2Ln/wYFxvAEskJRbtOQyLdiXz0/%EC%9E%90%EB%A6%AC%EB%B0%B0%EC%B9%98%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8.exe?attach=1&amp;amp;knm=tfile.exe&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;자리배치프로그램.exe&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;10.56MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>파이썬/개인 작업</category>
      <category>Python</category>
      <category>자리배치 프로그램</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/121</guid>
      <comments>https://thpop.tistory.com/121#entry121comment</comments>
      <pubDate>Thu, 15 May 2025 10:46:18 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 프로그래밍 - 랜덤 자리 배치 프로그램 만들기 (2)</title>
      <link>https://thpop.tistory.com/120</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;(앞선 내용 / &lt;a href=&quot;https://thpop.tistory.com/119&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://thpop.tistory.com/119&lt;/a&gt;)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞서 프로그램의 기본 작동 로직을 구성해보았고, 이번에는 해당 프로그램을 직접 실행해보며 내가 원하는 방식으로 작동하는지 확인하며 수정해나갈 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프로그램의 실행부분을 짜 보면 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1746948115607&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;if __name__ == &quot;__main__&quot;:
    student_list = load_students(&quot;students.txt&quot;)

if student_list:
        randomly_assigned_students = assign_seats(student_list)
        print_seating_chart(randomly_assigned_students)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;윗부분은 &quot;이 스크립트 파일이 프로그램의 시작점으로서 직접 실행될 때만 다음 코드들을 실행하라&quot;는 의미이다. 만약 다른 모듈에서 이 파일을 불러와 사용할 때는 이 블록 안의 코드가 자동으로 실행되지 않도록 하는 역할을 수행하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래는 &lt;span style=&quot;color: #222222; text-align: start;&quot;&gt;&amp;nbsp;무작위로 배치된 학생 명단을 받아서 i&lt;/span&gt;&lt;span style=&quot;color: #222222; text-align: start;&quot;&gt;번째 자리에 어떤 학생이 배치되었는지를 쭉 출력하는 것이다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #222222;&quot;&gt;Visual Studio Code를 이용해서 출력해본 결과는 아래와 같다.&lt;/span&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-11 162459.png&quot; data-origin-width=&quot;381&quot; data-origin-height=&quot;244&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cR1rBs/btsNRSULmhi/5JVeY2jnb1cqHstviGZdC1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cR1rBs/btsNRSULmhi/5JVeY2jnb1cqHstviGZdC1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cR1rBs/btsNRSULmhi/5JVeY2jnb1cqHstviGZdC1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcR1rBs%2FbtsNRSULmhi%2F5JVeY2jnb1cqHstviGZdC1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;381&quot; height=&quot;244&quot; data-filename=&quot;화면 캡처 2025-05-11 162459.png&quot; data-origin-width=&quot;381&quot; data-origin-height=&quot;244&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 내가 희망하는 방식은, 사용자로부터 교실 내 좌석의 배치 형태를 입력받으면 그 형태에 맞춰 출력되는 방식이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 작동 방식대로 작동하도록 구성해보면 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1746948499746&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;num_rows = int(input(&quot;행의 수를 입력하세요. : &quot;))
num_cols = int(input(&quot;열의 수를 입력하세요. : &quot;))
print(&quot;\n 교실 배치도 &quot;)
seat_index = 0
for r in range(num_rows):
    row_display = []
    for c in range(num_cols):
        if seat_index &amp;lt; len(randomly_assigned_students):
            row_display.append(f&quot;[{randomly_assigned_students[seat_index]}]&quot;)
            seat_index += 1
        else:
            row_display.append(&quot;[빈자리]&quot;)
    print(&quot; &quot;.join(row_display))&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;무작위로 섞인 리스트를 사용자로부터 입력받은 행의 수와 열의 수에 따른 좌석에 배치하고, 만약 좌석 수가 사람 수보다 많다면 남은 자리에는 [빈자리]를 출력하도록 하였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시험 출력 결과는 아래와 같다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-05-11 163028.png&quot; data-origin-width=&quot;386&quot; data-origin-height=&quot;141&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dkdCNp/btsNR2Df8Jr/DLYZpbzRkKT414wrYmCmnk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dkdCNp/btsNR2Df8Jr/DLYZpbzRkKT414wrYmCmnk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dkdCNp/btsNR2Df8Jr/DLYZpbzRkKT414wrYmCmnk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdkdCNp%2FbtsNR2Df8Jr%2FDLYZpbzRkKT414wrYmCmnk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;386&quot; height=&quot;141&quot; data-filename=&quot;화면 캡처 2025-05-11 163028.png&quot; data-origin-width=&quot;386&quot; data-origin-height=&quot;141&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 원하는 방식대로 출력되긴 했지만, 가시성이 떨어지는 문제가 있음을 확인하였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 부분은 GUI를 추가적으로 구현하여 내가 별도로 개선해야 하는 부분으로 생각되어, AI의 도움을 받아 추가적으로 개선해볼 것이다.&lt;/p&gt;</description>
      <category>파이썬/개인 작업</category>
      <category>Python</category>
      <category>자리배치 프로그램</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/120</guid>
      <comments>https://thpop.tistory.com/120#entry120comment</comments>
      <pubDate>Sun, 11 May 2025 20:54:07 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 프로그래밍 - 랜덤 자리 배치 프로그램 만들기 (1)</title>
      <link>https://thpop.tistory.com/119</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬을 이용한 프로그래밍에 흥미가 생겨, AI를 활용해 개인적으로 구현해보고 싶다고 생각이 드는 프로그램을 직접 만들어보고자 한다.&lt;br /&gt;&lt;br /&gt;그 첫 프로그램은 과거에 학교에서 선생님들이 학생들 자리를 바꾸는데 사용하시던 프로그램이 생각나, 이를 파이썬을 이용해 구현해보고자 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우선 첫 단계로, 프로그램의 작동 방식을 정해볼 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 생각한 프로그램의 작동 방식은 지정된 이름의 txt 파일에 학생들 이름을 기록해 놓으면, 프로그램이 그 txt 파일로부터 이름을 읽어들이고, 무작위로 자리를 배정하도록 할 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위에서 정한 프로그램의 작동 방식을 바탕으로, 프로그램의 기초 작동 로직을 만들어보자.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대략적으로 만들어 본 자리배치 프로그램의 기초 작동 로직은 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1746947066358&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import random

def load_students(filename=&quot;students.txt&quot;):
    students = []
    try:
        with open(filename, 'r', encoding='utf-8') as file:
            for line in file:
                students.append(line.strip())
        if not students:
            print(f&quot;경고: '{filename}' 파일이 비어있거나 학생 이름이 없습니다.&quot;)
        return students
    except FileNotFoundError:
        print(f&quot;오류: '{filename}' 파일을 찾을 수 없습니다. 파일 이름과 경로를 확인해주세요.&quot;)
        return None

def assign_seats(students):
    if not students:
        return []
    
    random.shuffle(students) 
    return students

def print_seating_chart(seated_students):
    print(&quot;\n 무작위 자리 배치 결과 &quot;)
    print(&quot;--------------------------&quot;)
    for i, student in enumerate(seated_students):
        print(f&quot;자리 {i+1}: {student}&quot;)
    print(&quot;--------------------------&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;첫 번째 함수는 파일을 읽어들이는 함수이다.&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1746947513782&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def load_students(filename=&quot;students.txt&quot;):
    students = []
    try:
        with open(filename, 'r', encoding='utf-8') as file:
            for line in file:
                students.append(line.strip())
        if not students:
            print(f&quot;경고: '{filename}' 파일이 비어있거나 학생 이름이 없습니다.&quot;)
        return students
    except FileNotFoundError:
        print(f&quot;오류: '{filename}' 파일을 찾을 수 없습니다. 파일 이름과 경로를 확인해주세요.&quot;)
        return None&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬 실행 프로그램과 같은 폴더에 students.txt라는 이름의 텍스트 파일에 한 줄에 한 명씩 이름을 기입하여 저장해놓으면, 이 함수가 한 줄씩 읽어들이고 리스트에 저장해주는 것이다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 번째 함수는 위의 함수에서 저장된 리스트 내부 요소들의 순서를 무작위로 뒤섞는 함수이다.&lt;/p&gt;
&lt;pre id=&quot;code_1746947668697&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def assign_seats(students):
    if not students:
        return []
    
    random.shuffle(students) 
    return students&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막 세 번째 함수는 무작위로 배치된 학생 명단을 받아서 i번째 자리에 어떤 학생이 배치되었는지를 쭉 출력하는 함수이다.&lt;/p&gt;
&lt;pre id=&quot;code_1746947721294&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def print_seating_chart(seated_students):
    print(&quot;\n 무작위 자리 배치 결과 &quot;)
    print(&quot;--------------------------&quot;)
    for i, student in enumerate(seated_students):
        print(f&quot;자리 {i+1}: {student}&quot;)
    print(&quot;--------------------------&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>파이썬/개인 작업</category>
      <category>Python</category>
      <category>자리배치 프로그램</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/119</guid>
      <comments>https://thpop.tistory.com/119#entry119comment</comments>
      <pubDate>Sun, 11 May 2025 16:16:14 +0900</pubDate>
    </item>
    <item>
      <title>Method of least squares 예제</title>
      <link>https://thpop.tistory.com/118</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;저장탱크에서 위험물질을 포함한 용액이 위험하지 않은 물질로 분해되도록 화학 처리된다고 하자. 그러면 탱크 내부의 decomposing waste의 농도 C는 시간에 따라 달라지는데, C에 관한 공식이 아래와 같다고 하자.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-03-25 205624.png&quot; data-origin-width=&quot;127&quot; data-origin-height=&quot;64&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Rwomv/btsMWByHAnZ/58utDWvR9XovqTsktM4Rb0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Rwomv/btsMWByHAnZ/58utDWvR9XovqTsktM4Rb0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Rwomv/btsMWByHAnZ/58utDWvR9XovqTsktM4Rb0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FRwomv%2FbtsMWByHAnZ%2F58utDWvR9XovqTsktM4Rb0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;127&quot; height=&quot;64&quot; data-filename=&quot;화면 캡처 2025-03-25 205624.png&quot; data-origin-width=&quot;127&quot; data-origin-height=&quot;64&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;C와 r에 관해 얻어진 데이터는 다음과 같다.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 52px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 18px;&quot;&gt;
&lt;td style=&quot;width: 16.6667%; height: 18px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;t(h)&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 18px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;1.0&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 18px; text-align: center;&quot;&gt;&lt;b&gt;2.0&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 18px; text-align: center;&quot;&gt;&lt;b&gt;3.0&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 18px; text-align: center;&quot;&gt;&lt;b&gt;4.0&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 18px; text-align: center;&quot;&gt;&lt;b&gt;5.0&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;C(g/L)&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;1.43&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span&gt;&lt;span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;1.02&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt; &lt;span style=&quot;color: #000000; text-align: start;&quot;&gt;0.73&lt;/span&gt; &lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt; &lt;span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;0.53&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt; &lt;span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;0.38&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt;&lt;span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;1/C(L/g)&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt; &lt;span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;0.70 &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt; &lt;span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;0.98 &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt; &lt;span style=&quot;color: #000000;&quot;&gt;1.37&lt;/span&gt; &lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt; &lt;span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;1.89 &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 16.6667%; height: 17px; text-align: center;&quot;&gt;&lt;b&gt; &lt;span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;2.63 &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Method of least squares을 사용해서 a와 b를 추정하여라.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Sol) 주어신 formula를 아래와 같이 변형한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-03-25 210059.png&quot; data-origin-width=&quot;142&quot; data-origin-height=&quot;67&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cO8gmj/btsMVedDi76/h2AN3Cvsl3i5B4Ro2mfJ50/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cO8gmj/btsMVedDi76/h2AN3Cvsl3i5B4Ro2mfJ50/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cO8gmj/btsMVedDi76/h2AN3Cvsl3i5B4Ro2mfJ50/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcO8gmj%2FbtsMVedDi76%2Fh2AN3Cvsl3i5B4Ro2mfJ50%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;142&quot; height=&quot;67&quot; data-filename=&quot;화면 캡처 2025-03-25 210059.png&quot; data-origin-width=&quot;142&quot; data-origin-height=&quot;67&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러면 a는 formula에서 intercept, b는 slope가 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;t를 x로, 1/c를 y로 간주하여 method of least squares에 적용해보면 아래와 같은 결과를 얻을 수 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-03-25 210226.png&quot; data-origin-width=&quot;530&quot; data-origin-height=&quot;229&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b6vQjL/btsMXcd38jX/6HbLp6kwQRb0EM9gnYAM5k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b6vQjL/btsMXcd38jX/6HbLp6kwQRb0EM9gnYAM5k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b6vQjL/btsMXcd38jX/6HbLp6kwQRb0EM9gnYAM5k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb6vQjL%2FbtsMXcd38jX%2F6HbLp6kwQRb0EM9gnYAM5k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;530&quot; height=&quot;229&quot; data-filename=&quot;화면 캡처 2025-03-25 210226.png&quot; data-origin-width=&quot;530&quot; data-origin-height=&quot;229&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-03-25 210254.png&quot; data-origin-width=&quot;554&quot; data-origin-height=&quot;27&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c1Ql8z/btsMWJpUsch/tVSDoyum1XTgVnARFbcOm1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c1Ql8z/btsMWJpUsch/tVSDoyum1XTgVnARFbcOm1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c1Ql8z/btsMWJpUsch/tVSDoyum1XTgVnARFbcOm1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc1Ql8z%2FbtsMWJpUsch%2FtVSDoyum1XTgVnARFbcOm1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;554&quot; height=&quot;27&quot; data-filename=&quot;화면 캡처 2025-03-25 210254.png&quot; data-origin-width=&quot;554&quot; data-origin-height=&quot;27&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위의 값을 이용하여 slope와 intercept를 구한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-03-25 210302.png&quot; data-origin-width=&quot;523&quot; data-origin-height=&quot;56&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/LLsRF/btsMVvlSeu4/ViPTH33ekIIlUsFkL8iDWk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/LLsRF/btsMVvlSeu4/ViPTH33ekIIlUsFkL8iDWk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/LLsRF/btsMVvlSeu4/ViPTH33ekIIlUsFkL8iDWk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLLsRF%2FbtsMVvlSeu4%2FViPTH33ekIIlUsFkL8iDWk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;523&quot; height=&quot;56&quot; data-filename=&quot;화면 캡처 2025-03-25 210302.png&quot; data-origin-width=&quot;523&quot; data-origin-height=&quot;56&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-03-25 210312.png&quot; data-origin-width=&quot;673&quot; data-origin-height=&quot;58&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bvmcF2/btsMVypk61s/OoLhk8paVFSkYMnXT6SShK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bvmcF2/btsMVypk61s/OoLhk8paVFSkYMnXT6SShK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bvmcF2/btsMVypk61s/OoLhk8paVFSkYMnXT6SShK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbvmcF2%2FbtsMVypk61s%2FOoLhk8paVFSkYMnXT6SShK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;673&quot; height=&quot;58&quot; data-filename=&quot;화면 캡처 2025-03-25 210312.png&quot; data-origin-width=&quot;673&quot; data-origin-height=&quot;58&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 구한 formula는 다음과 같다.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt; &lt;span&gt;1/C = 0.477 t + 0.0823&lt;/span&gt; &lt;/b&gt;&lt;/p&gt;</description>
      <category>화공양론/예제</category>
      <category>method of least squares</category>
      <category>화공양론</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/118</guid>
      <comments>https://thpop.tistory.com/118#entry118comment</comments>
      <pubDate>Tue, 25 Mar 2025 21:04:36 +0900</pubDate>
    </item>
    <item>
      <title>Comparing costs of two cars</title>
      <link>https://thpop.tistory.com/117</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-03-25 204806.png&quot; data-origin-width=&quot;859&quot; data-origin-height=&quot;155&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/XE8H7/btsMWsaS3YX/Hn3SkQsprm1lqiDrCfpkW1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/XE8H7/btsMWsaS3YX/Hn3SkQsprm1lqiDrCfpkW1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/XE8H7/btsMWsaS3YX/Hn3SkQsprm1lqiDrCfpkW1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXE8H7%2FbtsMWsaS3YX%2FHn3SkQsprm1lqiDrCfpkW1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;859&quot; height=&quot;155&quot; data-filename=&quot;화면 캡처 2025-03-25 204806.png&quot; data-origin-width=&quot;859&quot; data-origin-height=&quot;155&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위의 표와 같이 미국에서 만들어진 차와 유럽에서 만들어진 차의 두 가지 종류가 있고, 각각의 비용과 연비, 기름값은 위와 같다. &lt;b&gt;몇 마일 이상&lt;/b&gt;을 이동해야 유럽에서 만들어진 차가 미국에서 만들어진 차 보다 &lt;b&gt;비용을 덜&lt;/b&gt; &lt;b&gt;쓰는가?&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Sol)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;I) 유럽에서 만들어진 차의 연비를 miles / gal로 변환&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-03-25 205034.png&quot; data-origin-width=&quot;713&quot; data-origin-height=&quot;64&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bl3jtT/btsMWjkKqbD/oCEOFlxlKm3rVHZGZb9QCk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bl3jtT/btsMWjkKqbD/oCEOFlxlKm3rVHZGZb9QCk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bl3jtT/btsMWjkKqbD/oCEOFlxlKm3rVHZGZb9QCk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbl3jtT%2FbtsMWjkKqbD%2FoCEOFlxlKm3rVHZGZb9QCk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;713&quot; height=&quot;64&quot; data-filename=&quot;화면 캡처 2025-03-25 205034.png&quot; data-origin-width=&quot;713&quot; data-origin-height=&quot;64&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;II) x마일을 이동한다고 했을 때, 두 자동차의 총 비용 계산&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(a) 미국에서 만들어진 차&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-03-25 205135.png&quot; data-origin-width=&quot;721&quot; data-origin-height=&quot;64&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/beozBJ/btsMVt9vjC2/7KzD4yrU3828qTAkiXDXo1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/beozBJ/btsMVt9vjC2/7KzD4yrU3828qTAkiXDXo1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/beozBJ/btsMVt9vjC2/7KzD4yrU3828qTAkiXDXo1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbeozBJ%2FbtsMVt9vjC2%2F7KzD4yrU3828qTAkiXDXo1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;721&quot; height=&quot;64&quot; data-filename=&quot;화면 캡처 2025-03-25 205135.png&quot; data-origin-width=&quot;721&quot; data-origin-height=&quot;64&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(b) 유럽에서 만들어진 차&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-03-25 205144.png&quot; data-origin-width=&quot;730&quot; data-origin-height=&quot;54&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bHI1A7/btsMVxxdgOZ/nWl1nB3WHg9fZsmjtgRwrK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bHI1A7/btsMVxxdgOZ/nWl1nB3WHg9fZsmjtgRwrK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bHI1A7/btsMVxxdgOZ/nWl1nB3WHg9fZsmjtgRwrK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbHI1A7%2FbtsMVxxdgOZ%2FnWl1nB3WHg9fZsmjtgRwrK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;730&quot; height=&quot;54&quot; data-filename=&quot;화면 캡처 2025-03-25 205144.png&quot; data-origin-width=&quot;730&quot; data-origin-height=&quot;54&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;III) 두 총 비용을 같다고 놓아 x 값 구하기&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-03-25 205245.png&quot; data-origin-width=&quot;420&quot; data-origin-height=&quot;67&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mrcYV/btsMXnNf9sJ/GmBkMUA3Os4iLE4By2NLzk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mrcYV/btsMXnNf9sJ/GmBkMUA3Os4iLE4By2NLzk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mrcYV/btsMXnNf9sJ/GmBkMUA3Os4iLE4By2NLzk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmrcYV%2FbtsMXnNf9sJ%2FGmBkMUA3Os4iLE4By2NLzk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;420&quot; height=&quot;67&quot; data-filename=&quot;화면 캡처 2025-03-25 205245.png&quot; data-origin-width=&quot;420&quot; data-origin-height=&quot;67&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 4.3 &amp;times; 10^5 mile 이상을 주행해야 한다.&lt;/p&gt;</description>
      <category>화공양론/예제</category>
      <category>화공양론</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/117</guid>
      <comments>https://thpop.tistory.com/117#entry117comment</comments>
      <pubDate>Tue, 25 Mar 2025 20:53:10 +0900</pubDate>
    </item>
    <item>
      <title>Unit Converting Factors</title>
      <link>https://thpop.tistory.com/116</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;Unit을 서로 다른 Unit으로 전환할 때 사용되는 요소들을 &lt;b&gt;Converting Factor&lt;/b&gt;라고 한다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이를 정리한 표는 아래와 같다.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 202px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 14px;&quot;&gt;
&lt;td style=&quot;width: 13.7209%; height: 14px;&quot;&gt;&lt;b&gt;Quantity&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 86.2791%; height: 14px;&quot;&gt;&lt;b&gt;Equivalent Values&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 13.7209%; height: 34px;&quot; rowspan=&quot;2&quot;&gt;Mass&lt;/td&gt;
&lt;td style=&quot;width: 86.2791%; height: 17px;&quot;&gt;1 Kg = 1000 g = 0.001 metric ton (tonne) = 2.20462 Ibm (pound) = 35.27392 oz&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 86.2791%; height: 17px;&quot;&gt;1 Ibm (pound) = 16 oz = 5 &amp;times; 10^(-4) ton = 453.593 g = 0.453593 kg&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 13.7209%; height: 34px;&quot; rowspan=&quot;2&quot;&gt;Length&lt;/td&gt;
&lt;td style=&quot;width: 86.2791%; height: 17px;&quot;&gt;1 m = 100 cm = 1000 mm = 10^6 microns (&lt;span style=&quot;background-color: #ffffff; color: #474747; text-align: start;&quot;&gt;&amp;mu;m) = 10^10 angstroms (&lt;span style=&quot;background-color: #ffffff; color: #1f1f1f; text-align: start;&quot;&gt;&amp;Aring;) = 39.37 in = 3.2808 ft = 1.0936 yd = 0.0006214 mile&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 86.2791%; height: 17px;&quot;&gt;1 ft = 12 in = 1/3 yd = 0.3048 m = 30.48 cm&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 13.7209%; height: 34px;&quot; rowspan=&quot;2&quot;&gt;Volume&lt;/td&gt;
&lt;td style=&quot;width: 86.2791%; height: 17px;&quot;&gt;1 m^3 = 1000 L = 10^6 cm^3 = 10^6 mL = 35.3145 ft^3 = 219.97 inperial gallons = 264.17 gal = 1056.68 qt&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 86.2791%; height: 17px;&quot;&gt;1 ft^3 = 1728 in^3 = 7.4805 gal = 29.922 qt = 0.028317 m^3 = 28.317 L&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 13.7209%; height: 17px;&quot;&gt;Density&lt;/td&gt;
&lt;td style=&quot;width: 86.2791%; height: 17px;&quot;&gt;1 g/cm^3 = 1000 kg/m^3 = 62.43 lbm/ft^3 = density of liquid water at 4℃&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 13.7209%; height: 17px;&quot; rowspan=&quot;2&quot;&gt;Force&lt;/td&gt;
&lt;td style=&quot;width: 86.2791%; height: 17px;&quot;&gt;1 N = 1 kg&amp;nbsp;&lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: center;&quot;&gt;&amp;sdot; m/s^2 = 10^5 dynes = 10^5 g&amp;nbsp;&lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: center;&quot;&gt;&amp;sdot; cm/s^2 = 0.22481 lbf&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 86.2791%;&quot;&gt;1 &lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: center;&quot;&gt;lbf = 32.174 lbm &lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: center;&quot;&gt;&amp;sdot; ft/s^2 = 4.4482 N = 4.4482 &amp;times; 10^5 dynes&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 13.7209%; height: 17px;&quot;&gt;Pressure&lt;/td&gt;
&lt;td style=&quot;width: 86.2791%; height: 17px;&quot;&gt;1 atm = 1.01325 &amp;times; 10^5 N/m^2 (Pa) = 101.325 kPa = 1.01325 bar = &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;1.01325&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&amp;times; 10^6 dyne/cm^2 &lt;br /&gt;= 14.696 lbf/in^2 (psi) = 760 mm Hg at 0℃ (torr) = 10.333 m H2O(l) at 4℃ = 29.921 inches Hg at 0℃ &lt;br /&gt;= 406.8 inches H2O&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;(l) at&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;4℃&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>화공양론/개념</category>
      <category>conversion factor</category>
      <category>화공양론</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/116</guid>
      <comments>https://thpop.tistory.com/116#entry116comment</comments>
      <pubDate>Tue, 25 Mar 2025 20:46:22 +0900</pubDate>
    </item>
    <item>
      <title>Converting unit 예제</title>
      <link>https://thpop.tistory.com/115</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;(a) 3 week to milliseconds&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(b) &lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: center;&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: center;&quot;&gt;381 ft / s to miles / h &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(c) 554 m^4 / (day&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: center;&quot;&gt;&amp;sdot; kg) to cm^4 / (min&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: center;&quot;&gt;&amp;sdot; g)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #212529;&quot;&gt;&lt;span style=&quot;background-color: #ffffff;&quot;&gt;Sol)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #212529;&quot;&gt;&lt;span style=&quot;color: #212529;&quot;&gt;&lt;span style=&quot;background-color: #ffffff;&quot;&gt;(a) 1 week = 7 days, 1 day = 24 hours, 1 hour = 3600 sec, 1 sec = 1000 ms&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-03-25 202753.png&quot; data-origin-width=&quot;696&quot; data-origin-height=&quot;75&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bc5W9G/btsMVWi0h0a/C5dSEJ3uUkUagbfI6Op7kk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bc5W9G/btsMVWi0h0a/C5dSEJ3uUkUagbfI6Op7kk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bc5W9G/btsMVWi0h0a/C5dSEJ3uUkUagbfI6Op7kk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbc5W9G%2FbtsMVWi0h0a%2FC5dSEJ3uUkUagbfI6Op7kk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;696&quot; height=&quot;75&quot; data-filename=&quot;화면 캡처 2025-03-25 202753.png&quot; data-origin-width=&quot;696&quot; data-origin-height=&quot;75&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;(b) 1 min = 60 sec, 3.2808 ft = 0.0006214 miles&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-03-25 202804.png&quot; data-origin-width=&quot;570&quot; data-origin-height=&quot;68&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kC5Dj/btsMWG0ZI0T/797AW33c45skKlYikD3sUk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kC5Dj/btsMWG0ZI0T/797AW33c45skKlYikD3sUk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kC5Dj/btsMWG0ZI0T/797AW33c45skKlYikD3sUk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkC5Dj%2FbtsMWG0ZI0T%2F797AW33c45skKlYikD3sUk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;570&quot; height=&quot;68&quot; data-filename=&quot;화면 캡처 2025-03-25 202804.png&quot; data-origin-width=&quot;570&quot; data-origin-height=&quot;68&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;(c) &lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: start;&quot;&gt;1 day = 24 hours, &lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: start;&quot;&gt;1 hour = 60 min, 1 kg = 1000 g, 1 m^4 = 10^8 cm^4&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2025-03-25 202812.png&quot; data-origin-width=&quot;826&quot; data-origin-height=&quot;66&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bkgIEp/btsMVAgdAKN/KDXMorWgbFiNkleKPe1Qp1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bkgIEp/btsMVAgdAKN/KDXMorWgbFiNkleKPe1Qp1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bkgIEp/btsMVAgdAKN/KDXMorWgbFiNkleKPe1Qp1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbkgIEp%2FbtsMVAgdAKN%2FKDXMorWgbFiNkleKPe1Qp1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;826&quot; height=&quot;66&quot; data-filename=&quot;화면 캡처 2025-03-25 202812.png&quot; data-origin-width=&quot;826&quot; data-origin-height=&quot;66&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>화공양론/예제</category>
      <category>화공양론</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/115</guid>
      <comments>https://thpop.tistory.com/115#entry115comment</comments>
      <pubDate>Tue, 25 Mar 2025 20:32:03 +0900</pubDate>
    </item>
    <item>
      <title>SI Unit and CGS unit</title>
      <link>https://thpop.tistory.com/114</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;측정된 양(quantity)&lt;/b&gt;는 숫자로 이루어진 &lt;b&gt;값(value)&lt;/b&gt;와 &lt;b&gt;단위(unit)&lt;/b&gt;을 갖는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 단위는 여러 가지 종류로 분류되어 있는데, 대표적인 것은 &lt;b&gt;SI(Science Internationale d'Unites) 단위&lt;/b&gt;와&amp;nbsp; &lt;b&gt;CGS( &lt;span style=&quot;background-color: #ffffff; color: #474747; text-align: start;&quot;&gt;centimeter-gram-second) &lt;/span&gt;단위&lt;/b&gt;이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이를 정리한 것은 아래와 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;I) Base Unit (SI unit and CGS unit)&lt;/b&gt;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 102px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot;&gt;&lt;b&gt;Quantity&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot;&gt;&lt;b&gt;Base Unit&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot;&gt;&lt;b&gt;Symbol&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot; rowspan=&quot;2&quot;&gt;Length&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot;&gt;meter (SI)&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot;&gt;m&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot;&gt;centimeter (CGS)&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot;&gt;cm&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot; rowspan=&quot;2&quot;&gt;Mass&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot;&gt;kilogram (SI)&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot;&gt;kg&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot;&gt;gram (CGS)&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot;&gt;g&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot;&gt;Moles&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot;&gt;gram-mole&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center; height: 17px;&quot;&gt;mol or g-mole&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center;&quot;&gt;Time&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center;&quot;&gt;second&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center;&quot;&gt;s&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center;&quot;&gt;Temperature&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center;&quot;&gt;kelvin&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center;&quot;&gt;K&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center;&quot;&gt;Electric current&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center;&quot;&gt;ampere&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; text-align: center;&quot;&gt;A&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;II) Derived Unit &lt;b&gt;(SI unit and CGS unit)&lt;/b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 170px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 34px;&quot;&gt;
&lt;td style=&quot;width: 25%; text-align: center; height: 34px;&quot;&gt;&lt;b&gt;Quantity&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center; height: 34px;&quot;&gt;&lt;b&gt;Unit&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 24.6512%; text-align: center; height: 34px;&quot;&gt;&lt;b&gt;Symbol&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25.3488%; text-align: center; height: 34px;&quot;&gt;&lt;b&gt;Equivalent in terms of &lt;/b&gt;&lt;br /&gt;&lt;b&gt;base units&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; text-align: center; height: 17px;&quot; rowspan=&quot;2&quot;&gt;Volume&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center; height: 17px;&quot; rowspan=&quot;2&quot;&gt;liter&lt;/td&gt;
&lt;td style=&quot;width: 24.6512%; text-align: center; height: 17px;&quot; rowspan=&quot;2&quot;&gt;L&lt;/td&gt;
&lt;td style=&quot;width: 25.3488%; text-align: center; height: 17px;&quot;&gt;0.001 m^3&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 25.3488%; text-align: center;&quot;&gt;1000 cm^3&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; text-align: center; height: 34px;&quot; rowspan=&quot;2&quot;&gt;Force&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center; height: 17px;&quot;&gt;newton (SI)&lt;/td&gt;
&lt;td style=&quot;width: 24.6512%; text-align: center; height: 17px;&quot;&gt;N&lt;/td&gt;
&lt;td style=&quot;width: 25.3488%; text-align: center; height: 17px;&quot;&gt;1 kg &lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: center;&quot;&gt;&amp;sdot;&lt;/span&gt; m / s^2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; text-align: center; height: 17px;&quot;&gt;dyne (CGS)&lt;/td&gt;
&lt;td style=&quot;width: 24.6512%; text-align: center; height: 17px;&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;width: 25.3488%; text-align: center; height: 17px;&quot;&gt;1 g &lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: center;&quot;&gt;&amp;sdot;&lt;/span&gt; cm / s^2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; text-align: center; height: 17px;&quot;&gt;Pressure&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center; height: 17px;&quot;&gt;pascal (SI)&lt;/td&gt;
&lt;td style=&quot;width: 24.6512%; text-align: center; height: 17px;&quot;&gt;Pa&lt;/td&gt;
&lt;td style=&quot;width: 25.3488%; text-align: center; height: 17px;&quot;&gt;1 N / m^2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; text-align: center; height: 51px;&quot; rowspan=&quot;3&quot;&gt;Energy, work&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center; height: 17px;&quot;&gt;joule (SI)&lt;/td&gt;
&lt;td style=&quot;width: 24.6512%; text-align: center; height: 17px;&quot;&gt;J&lt;/td&gt;
&lt;td style=&quot;width: 25.3488%; text-align: center; height: 17px;&quot;&gt;1 N &lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: center;&quot;&gt;&amp;sdot;&lt;/span&gt; m = 1 kg &lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: center;&quot;&gt;&amp;sdot;m^2 / s^2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; text-align: center; height: 17px;&quot;&gt;erg (CGS)&lt;/td&gt;
&lt;td style=&quot;width: 24.6512%; text-align: center; height: 17px;&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;width: 25.3488%; text-align: center; height: 17px;&quot;&gt;1 dyne &lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: center;&quot;&gt;&amp;sdot; cm = 1 g &lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: center;&quot;&gt;&amp;sdot; cm^2 / s^2&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; text-align: center; height: 17px;&quot;&gt;gram-calorie&lt;/td&gt;
&lt;td style=&quot;width: 24.6512%; text-align: center; height: 17px;&quot;&gt;cal&lt;/td&gt;
&lt;td style=&quot;width: 25.3488%; text-align: center; height: 17px;&quot;&gt;4.184 J = 4.184 kg&lt;span style=&quot;color: #333333; text-align: center;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: center;&quot;&gt;&amp;sdot;m^2 / s^2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 25%; text-align: center; height: 17px;&quot;&gt;Power&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center; height: 17px;&quot;&gt;watt&lt;/td&gt;
&lt;td style=&quot;width: 24.6512%; text-align: center; height: 17px;&quot;&gt;W&lt;/td&gt;
&lt;td style=&quot;width: 25.3488%; text-align: center; height: 17px;&quot;&gt;1 J / s = 1 kg&lt;span style=&quot;color: #333333; text-align: center;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #212529; text-align: center;&quot;&gt;&amp;sdot;m^2 / s^3&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;</description>
      <category>화공양론/개념</category>
      <category>cgs unit</category>
      <category>si unit</category>
      <category>화공양론</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/114</guid>
      <comments>https://thpop.tistory.com/114#entry114comment</comments>
      <pubDate>Tue, 25 Mar 2025 20:24:25 +0900</pubDate>
    </item>
    <item>
      <title>if, else 활용 예제</title>
      <link>https://thpop.tistory.com/113</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;True나 False를 small과 green에 할당하고, if와 else를 사용하여 small과 green여부를 기준으로 체리, 완두콩, 수박, 호박을 출력하는 프로그램을 만들어볼 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;판단 기준은 아래와 같다.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 88px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style12&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 20px;&quot;&gt;과일&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 20px;&quot;&gt;조건&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;체리&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;green아님, small&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;완두콩&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;green, small&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;수박&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;green, small 아님&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;호박&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;green아님, small 아님&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프로그램은 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1740359997146&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;small = input(&quot;is it small? :&quot;)
green = input(&quot;is it green? :&quot;)
if small:
    if green:
        print(&quot;pea&quot;)
    else:
        print(&quot;cherry&quot;)
else:
    if green:
        print(&quot;watermelon&quot;)
    else:
        print(&quot;pumpkin&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 예시는 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1740360010758&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;is it small? :True
is it green? :False
pea&lt;/code&gt;&lt;/pre&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>파이썬</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/113</guid>
      <comments>https://thpop.tistory.com/113#entry113comment</comments>
      <pubDate>Mon, 24 Feb 2025 10:20:13 +0900</pubDate>
    </item>
    <item>
      <title>의자 수 세는 프로그램 예제</title>
      <link>https://thpop.tistory.com/112</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;어느 행사를 준비할 때, 행사에 참여하는 사람의 수를 입력받으면 그 행사에 필요한 의자 수를 세는 프로그램을 만들어 볼 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;의자에는 최대 5명이 앉을 수 있다고 가정하자.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프로그램은 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1740359570343&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;A = int(input(&quot;Number of people: &quot;))
if A%5==0:
	chair = A//5
elif A%5!=0:
	chair = A//5+1
print(chair)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 예시는 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1740359562982&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Number of people: 87
18&lt;/code&gt;&lt;/pre&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>파이썬</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/112</guid>
      <comments>https://thpop.tistory.com/112#entry112comment</comments>
      <pubDate>Mon, 24 Feb 2025 10:13:03 +0900</pubDate>
    </item>
    <item>
      <title>시험 점수 계산하기</title>
      <link>https://thpop.tistory.com/111</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;어떤 수업의 pass 조건이 최종 성적이 70점 이상일 때, 학생의 출석 점수, 중간고사 점수, 기말고사 점수를 입력받고 그 학생의 pass / fail 여부를 출력하는 프로그램을 만들어볼 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;성적 비중은 아래와 같다고 가정한다.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style12&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;평가&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;비중&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;출석&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;20&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;중간고사&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;40&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;기말고사&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;40&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프로그램은 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1740359356766&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;A = int(input(&quot;Attendance Score: &quot;))
M = int(input(&quot;Midterm Exam Score: &quot;))
F = int(input(&quot;Final Exam Score: &quot;))
sum = A * 0.2 + M * 0.4 + F * 0.4
if sum &amp;gt;= 70:
	print(&quot;Pass&quot;)
else:
	print(&quot;Fail&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력 예시는 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1740359410648&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Attendance Score: 100
Midterm Exam Score: 80
Final Exam Score: 80
Pass&lt;/code&gt;&lt;/pre&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>파이썬</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/111</guid>
      <comments>https://thpop.tistory.com/111#entry111comment</comments>
      <pubDate>Mon, 24 Feb 2025 10:10:12 +0900</pubDate>
    </item>
    <item>
      <title>대소 비교 프로그램 예제</title>
      <link>https://thpop.tistory.com/110</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;1~10 사이의 서로 다른 두 숫자를 입력받고, 그 숫자들을 각각 a와 b 변수에 할당한 후, if, elif, else를 이용하여 대소를 비교하는 프로그램을 만들어보자.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;구조는 간단하다.&lt;/p&gt;
&lt;pre id=&quot;code_1740359064999&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;a = input(&quot;Enter a: &quot;)
b = input(&quot;Enter b: &quot;)
if a &amp;gt; b:
    print(&quot;a is bigger than b&quot;)
elif a &amp;lt; b:
    print(&quot;a is smaller than b&quot;)
else:
    print(&quot;a and b are same&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실행해보면 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1740359084096&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Enter a: 5
Enter b: 4
a is bigger than b&lt;/code&gt;&lt;/pre&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>파이썬</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/110</guid>
      <comments>https://thpop.tistory.com/110#entry110comment</comments>
      <pubDate>Mon, 24 Feb 2025 10:04:45 +0900</pubDate>
    </item>
    <item>
      <title>할당 개념 예제</title>
      <link>https://thpop.tistory.com/109</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;a = 2, b = 5일 때, 아래와 같은 코드 구문을 실행하면 a와 b에 최종적으로 할당되는 값은 무엇일까?&lt;/p&gt;
&lt;pre id=&quot;code_1740358583103&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;a = 10 + a * b
b = 30 % (a - b)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;첫 줄의 구문을 실행하면,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;a = 10 + 2 * 5 = 20&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 번째 줄의 구문을 실행하면,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;b = 30 % (20 - 5) = 30 % 15 = 0&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 최종적인 a와 b의 값은&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;a = 20, b = 5&lt;/b&gt;&lt;/p&gt;</description>
      <category>파이썬/예제</category>
      <category>Python</category>
      <category>파이썬</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/109</guid>
      <comments>https://thpop.tistory.com/109#entry109comment</comments>
      <pubDate>Mon, 24 Feb 2025 09:58:06 +0900</pubDate>
    </item>
    <item>
      <title>True와 False, in, 바다코끼리 연산자</title>
      <link>https://thpop.tistory.com/108</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;만약 조건문에서 확인할 요소가 불리언 타입이 아닐 때, True와 False를 구분하는 방법에 대해서 알아보자.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;아래와 같은 경우 불리언 값 False로 취급&lt;/b&gt;하고, 이외의 경우 &lt;b&gt;True로 간주&lt;/b&gt;된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style12&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;불리언 False&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;\&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;null&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;none&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;정수 0&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;부동소수점 숫자 0.0&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;0.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;빈 문자열&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;' '&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;빈 리스트&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;[ ]&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;빈 튜플&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;( )&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;빈 딕셔너리&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;{ }&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;빈 셋&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;set( )&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 변수에 여러 값을 비교할 필요가 있을 경우, &lt;b&gt;멤버십 연산자(membership operator)인 in&lt;/b&gt;을 사용할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예시로 어떤 문자가 모음(vowel)인지 확인하는 프로그램이 있다고 해 보자.&lt;/p&gt;
&lt;pre id=&quot;code_1740357736352&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; vowel = 'aeiou'
&amp;gt;&amp;gt;&amp;gt; letter = 'a'
&amp;gt;&amp;gt;&amp;gt; letter in vowel
True
&amp;gt;&amp;gt;&amp;gt; if letter in vowel:
&amp;middot;&amp;middot;&amp;middot; 	print(letter,'is a vowel')
&amp;middot;&amp;middot;&amp;middot; else:
&amp;middot;&amp;middot;&amp;middot;		print(letter,'is not a vowel')
&amp;middot;&amp;middot;&amp;middot;
a is a vowel&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 &lt;b&gt;멤버십 연산자 in&lt;/b&gt;은 리스트, 튜플, 딕셔너리, 셋 등의 경우에도 얼마든지 사용 가능하다.&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬의 3.8버전에서&amp;nbsp;&lt;b&gt;바다코끼리 연산자&lt;/b&gt; 기능이 추가되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;형식은 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1740357916706&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;name := expression&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이름이 &lt;b&gt;바다코끼리 연산자&lt;/b&gt;인 이유가 := 모양이 바다코끼리를 닮았다 하여 붙은 이름이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;바다코끼리 연산자의 기능은 다음과 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일반적으로 할당과 테스트는 아래의 코드와 같이 두 단계를 거쳐 이루어진다.&lt;/p&gt;
&lt;pre id=&quot;code_1740358210472&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; a = 300
&amp;gt;&amp;gt;&amp;gt; b = 'sigh' * 40
&amp;gt;&amp;gt;&amp;gt; difference = a - len(b)
&amp;gt;&amp;gt;&amp;gt; if difference &amp;gt;= 0:
&amp;middot;&amp;middot;&amp;middot; 	print('fitting sigh')
&amp;middot;&amp;middot;&amp;middot; else:
&amp;middot;&amp;middot;&amp;middot; 	print('went over by',abs(difference))
&amp;middot;&amp;middot;&amp;middot; 
fitting sigh&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;바다코끼리 연산자를 이용하면 이 테스트를 한 단계로 줄일 수 있다.&lt;/p&gt;
&lt;pre id=&quot;code_1740358252589&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; a = 300
&amp;gt;&amp;gt;&amp;gt; b = 'sigh' * 40
&amp;gt;&amp;gt;&amp;gt; if difference := a - len(b) &amp;gt;= 0:
&amp;middot;&amp;middot;&amp;middot; 	print('fitting sigh')
&amp;middot;&amp;middot;&amp;middot; else:
&amp;middot;&amp;middot;&amp;middot; 	print('went over by',abs(difference))
&amp;middot;&amp;middot;&amp;middot; 
fitting sigh&lt;/code&gt;&lt;/pre&gt;</description>
      <category>파이썬/개념</category>
      <category>Python</category>
      <category>파이썬</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/108</guid>
      <comments>https://thpop.tistory.com/108#entry108comment</comments>
      <pubDate>Mon, 24 Feb 2025 09:52:13 +0900</pubDate>
    </item>
    <item>
      <title>if, elif, 그리고 else</title>
      <link>https://thpop.tistory.com/107</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;if, elif, else는 &lt;b&gt;조건을 확인하는 선언문(statement)&lt;/b&gt;이다.&lt;/p&gt;
&lt;pre id=&quot;code_1740355785792&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; a = True
&amp;gt;&amp;gt;&amp;gt; if a:
&amp;middot;&amp;middot;&amp;middot;    print('it is True')
&amp;middot;&amp;middot;&amp;middot; else:
&amp;middot;&amp;middot;&amp;middot;    print('it is False')
&amp;middot;&amp;middot;&amp;middot;
it is True
&amp;gt;&amp;gt;&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위의 코드에서 수행한 것은 다음과 같다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;불리언 변수 a에 True를 할당.&lt;/li&gt;
&lt;li&gt;if와 else를 이용해 True인지 False인지 조건 테스트를 수행.&lt;/li&gt;
&lt;li&gt;print()함수를 이용해 텍스트 출력.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;좀 더 복잡한 예시는 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1740356071140&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; fruit = True
&amp;gt;&amp;gt;&amp;gt; red = True
&amp;middot;&amp;middot;&amp;middot; if fruit:
&amp;middot;&amp;middot;&amp;middot;     if red:
&amp;middot;&amp;middot;&amp;middot;        print('apple')
&amp;middot;&amp;middot;&amp;middot;     else:
&amp;middot;&amp;middot;&amp;middot;        print('another fruit')
&amp;middot;&amp;middot;&amp;middot; else:
&amp;middot;&amp;middot;&amp;middot;     if red:
&amp;middot;&amp;middot;&amp;middot;         print('another red one')
&amp;middot;&amp;middot;&amp;middot;     else:
&amp;middot;&amp;middot;&amp;middot;         print(&quot;I don't know what it is&quot;)
&amp;middot;&amp;middot;&amp;middot;
apple
&amp;gt;&amp;gt;&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 조건 테스트가 2개 이상이라면, if, elif(else if), else를 사용한다.&lt;/p&gt;
&lt;pre id=&quot;code_1740356639336&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; a = 'spider'
&amp;gt;&amp;gt;&amp;gt; if a == 'ant':
&amp;middot;&amp;middot;&amp;middot;     print('it is insect')
&amp;middot;&amp;middot;&amp;middot; elif a == 'butterfly':
&amp;middot;&amp;middot;&amp;middot;     print('it is insect')
&amp;middot;&amp;middot;&amp;middot; else:
&amp;middot;&amp;middot;&amp;middot;     print('it is not insect')
&amp;middot;&amp;middot;&amp;middot; 
it is not insect&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 예제에서 사용한 == 연산자는 &lt;b&gt;비교연산자(comparison operator)&lt;/b&gt;이다.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 122px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style12&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 20px;&quot;&gt;비교 연산자&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 20px;&quot;&gt;의미&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;==&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;같음&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;!=&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;다름&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;&amp;gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;초과&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;&amp;gt;=&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;이상&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;&amp;lt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;미만&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;&amp;lt;=&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;이하&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;비교 연산자는 불리언 값인 &lt;b&gt;True&lt;/b&gt;나&lt;b&gt; False&lt;/b&gt;를 반환한다.&lt;/p&gt;
&lt;pre id=&quot;code_1740356855046&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; x = 10
&amp;gt;&amp;gt;&amp;gt; x == 3
False
&amp;gt;&amp;gt;&amp;gt; x == 10
True
&amp;gt;&amp;gt;&amp;gt; x &amp;gt;= 7
True
&amp;gt;&amp;gt;&amp;gt; x &amp;lt; 8
False&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 동시에 여러 개의 식을 비교해야 한다면, and, or, not과 같은 &lt;b&gt;논리 연산자(logical operator)&lt;/b&gt;를 사용할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;논리 연산자는 비교 연산자보다 우선 순위가 낮기 때문에, 비교 연산을 먼저 수행한 후 논리 연산을 진행하게 되는 부분을 이용한 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1740357072830&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; x = 8
&amp;gt;&amp;gt;&amp;gt; x &amp;gt; 5 and x &amp;lt; 10
True&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;괄호를 추가하여 우선순위를 명확하게 할 수도 있다.&lt;/p&gt;
&lt;pre id=&quot;code_1740357129545&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; x = 8
&amp;gt;&amp;gt;&amp;gt; (x &amp;gt; 5) and (x &amp;lt; 10)
True&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다른 논리 연산자를 사용한 예시는 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1740357182662&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; x = 8
&amp;gt;&amp;gt;&amp;gt; x &amp;gt; 5 or x &amp;lt; 10
True
&amp;gt;&amp;gt;&amp;gt; x &amp;gt; 5 and x &amp;gt; 10
False
&amp;gt;&amp;gt;&amp;gt; x &amp;gt; 5 and not x &amp;gt; 10
True&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위의 예시에서 알 수 있듯이, 논리 연산자의 역할은 아래와 같다.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 71px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style12&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 20px;&quot;&gt;논리 연산자&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 20px;&quot;&gt;의미&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;and&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;둘 다 충족&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;or&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;둘 중 하나라도 충족&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;not&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;조건을 반대로 전환&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;</description>
      <category>파이썬/개념</category>
      <category>Python</category>
      <category>파이썬</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/107</guid>
      <comments>https://thpop.tistory.com/107#entry107comment</comments>
      <pubDate>Mon, 24 Feb 2025 09:34:54 +0900</pubDate>
    </item>
    <item>
      <title>주석, 그리고 라인 유지하기(\)</title>
      <link>https://thpop.tistory.com/106</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;프로그램에서 &lt;b&gt;주석(#, comment)&lt;/b&gt;는 인터프리터에 의해 무시되는 텍스트이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이를 이용해 프로그램의 코드를 설명하거나 문제가 되는 부분을 고치기 위해서 표시하는 등 다양한 목적으로 사용할 수도 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;# 문자가 시작된 곳부터 그 라인의 마지막까지가 주석으로 인식된다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예시는 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1740354631654&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; # 60 min/hour * 60 sec/min * 24 hour/day
&amp;gt;&amp;gt;&amp;gt; secondperday = 86400&lt;/code&gt;&lt;/pre&gt;
&lt;pre id=&quot;code_1740354651988&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; secondperday = 86400 # 60 min/hour * 60 sec/min * 24 hour/day&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 &lt;b&gt;#&lt;/b&gt;이 문자열 내부에 들어가게 된다면 주석이 아니라 평범한 문자가 된다.&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프로그램을 읽을 때, 코드가 짧다면 더 쉽게 읽을 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 프로그램의 코드 한 줄(라인)에 원하는 코드를 모두 입력할 수 없다면 &lt;b&gt;백슬래시(\)를 입력하여 라인을 유지&lt;/b&gt;하고, 이후 다음 줄에 계속 입력하는 방식으로 가독성을 늘릴 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;줄 끝에 \를 입력하면, 다음 줄도 같은 줄로 인식된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 예시를 보자&lt;/p&gt;
&lt;pre id=&quot;code_1740354997461&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; sum = 0
&amp;gt;&amp;gt;&amp;gt; sum += 1
&amp;gt;&amp;gt;&amp;gt; sum += 2
&amp;gt;&amp;gt;&amp;gt; sum += 3
&amp;gt;&amp;gt;&amp;gt; sum += 4
&amp;gt;&amp;gt;&amp;gt; sum += 5
&amp;gt;&amp;gt;&amp;gt; sum += 6
&amp;gt;&amp;gt;&amp;gt; sum += 7
&amp;gt;&amp;gt;&amp;gt; sum += 8
&amp;gt;&amp;gt;&amp;gt; sum += 9
&amp;gt;&amp;gt;&amp;gt; sum += 10
&amp;gt;&amp;gt;&amp;gt; sum
55&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이를 \를 이용해서 표현할 수도 있다.&lt;/p&gt;
&lt;pre id=&quot;code_1740355080326&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; sum=0
&amp;gt;&amp;gt;&amp;gt; sum = 1+\
&amp;middot;&amp;middot;&amp;middot;      2+\
&amp;middot;&amp;middot;&amp;middot;      3+\
&amp;middot;&amp;middot;&amp;middot;      4+\
&amp;middot;&amp;middot;&amp;middot;      5+\
&amp;middot;&amp;middot;&amp;middot;      6+\
&amp;middot;&amp;middot;&amp;middot;      7+\
&amp;middot;&amp;middot;&amp;middot;      8+\
&amp;middot;&amp;middot;&amp;middot;      9+\
&amp;middot;&amp;middot;&amp;middot;      10
&amp;gt;&amp;gt;&amp;gt; sum
55&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 \를 생략하면 예외가 발생한다.&lt;/p&gt;
&lt;pre id=&quot;code_1740355176466&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; sum=0
&amp;gt;&amp;gt;&amp;gt; sum = 1+
SyntaxError: invalid syntax&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;표현식이 괄호 중간에 있으면 제대로 작동한다.&lt;/p&gt;
&lt;pre id=&quot;code_1740355252922&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; sum=0
&amp;gt;&amp;gt;&amp;gt; sum = (
&amp;middot;&amp;middot;&amp;middot;    1+\
&amp;middot;&amp;middot;&amp;middot;    2+\
&amp;middot;&amp;middot;&amp;middot;    3+\
&amp;middot;&amp;middot;&amp;middot;    4+\
&amp;middot;&amp;middot;&amp;middot;    5+\
&amp;middot;&amp;middot;&amp;middot;    6+\
&amp;middot;&amp;middot;&amp;middot;    7+\
&amp;middot;&amp;middot;&amp;middot;    8+\
&amp;middot;&amp;middot;&amp;middot;    9+\
&amp;middot;&amp;middot;&amp;middot;    10)
&amp;gt;&amp;gt;&amp;gt; sum
55&lt;/code&gt;&lt;/pre&gt;</description>
      <category>파이썬/개념</category>
      <category>Python</category>
      <category>파이썬</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/106</guid>
      <comments>https://thpop.tistory.com/106#entry106comment</comments>
      <pubDate>Mon, 24 Feb 2025 09:01:18 +0900</pubDate>
    </item>
    <item>
      <title>숫자 - 정수(int)의 크기, 부동소수점 숫자</title>
      <link>https://thpop.tistory.com/105</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬은 버전이 업데이트 됨에 따라서 int가 담을 수 있는 수의 크기가 더욱 커져왔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬 2에서는 int의 크기가 CPU에 따라 32비트나 64비트로 제한되었고, 32비트는 &lt;b&gt;-2,147,483,648&lt;/b&gt;에서 &lt;b&gt;2,147,483,648&lt;/b&gt;까지의 정수를 저장할 수 있는 공간이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;long (long integer)은 이보다 더 많은 공간을 가지고 있다. 64비트의 &lt;b&gt;-9,223,372,036,854,775,807&lt;/b&gt;에서 &lt;b&gt;9,223,372,036,854,775,807&lt;/b&gt;까지 허용한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 버전이 발전함에 따라, 파이썬 3에서는 long이 사라지고, int의 크기가 더욱 커지고 유연해져, 64비트보다 더 큰 공간을 가질 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;따라서 구골(10^(100))과 같은 큰 수도 담을 수 있다.&lt;/p&gt;
&lt;pre id=&quot;code_1740352998065&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;googol = 10**100
googol
10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
googol * googol
100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다른 언어에서 위의 코드와 같이 입력한다면, 오버플로우가 발생할 것이므로, 주의해야 한다.&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;부동소수점 숫자(floats)&lt;/b&gt;는 소수점이 있다.&lt;/p&gt;
&lt;pre id=&quot;code_1740353260980&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; 5.
5.0
&amp;gt;&amp;gt;&amp;gt; 5.0
5.0
&amp;gt;&amp;gt;&amp;gt; 05.0
5.0&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;부동소수점 숫자는 문자 e와 정수인 지수를 포함할 수도 있다,&lt;/p&gt;
&lt;pre id=&quot;code_1740353941857&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; 2e0
2.0
&amp;gt;&amp;gt;&amp;gt; 4e1
40.0
&amp;gt;&amp;gt;&amp;gt; 6.0e1
60.0&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;int() 함수를 이용해 정수로 변환하던 것처럼, float() 함수를 이용해 부동소수점 숫자로 변환할 수도 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;불리언을 부동소수점 숫자로 변환할 경우 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1740354080239&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; float(True)
1.0
&amp;gt;&amp;gt;&amp;gt; float(False)
0.0&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정수를 부동소수점 숫자로 변환할 경우 간단하게 소수점이 붙는다&lt;/p&gt;
&lt;pre id=&quot;code_1740354116039&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; float(79)
79.0&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;숫자, 기호, 소수점, 지수가 있는 문자열의 경우에도 부동소수점 숫자로 변환할 수 있다.&lt;/p&gt;
&lt;pre id=&quot;code_1740354212689&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; float('98.6')
98.6
&amp;gt;&amp;gt;&amp;gt; float('+12.7')
12.7
&amp;gt;&amp;gt;&amp;gt; float('1.2e2')
120.0&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정수와 부동소수점 숫자를 같이 사용하여 연산하게 되면, 자동으로 정수를 부동소수점 타입으로 변환한다.&lt;/p&gt;
&lt;pre id=&quot;code_1740354260000&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; 120 + 4.7
124.7&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>파이썬/개념</category>
      <category>Python</category>
      <category>파이썬</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/105</guid>
      <comments>https://thpop.tistory.com/105#entry105comment</comments>
      <pubDate>Mon, 24 Feb 2025 08:44:27 +0900</pubDate>
    </item>
    <item>
      <title>숫자 - 진수, 타입 변환</title>
      <link>https://thpop.tistory.com/104</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬에서 숫자, 특히 정수를 입력할 때 정수 앞에 &lt;b&gt;진수(base)&lt;/b&gt;를 붙이지 않으면 10진수로 간주한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주로 10진수를 다루긴 하지만, 2진수, 8진수, 16진수 등 다른 종류의 진수를 사용해야 할 때, &lt;b&gt;숫자 앞에 진수를 붙여야 한다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬에서는 10진수 이외에 &lt;b&gt;2진수, 8진수, 16진수&lt;/b&gt;의 세 가지 리터럴 정수를 표현할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;표현 방법은 아래와 같다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;2진수 (binary) : 0b or 0B&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;8진수 (octal) : 0o or 0O&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;16진수 (hex) : 0x or 0X&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인터프리터에서 각 진수들을 출력해보면 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1740351487265&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; 10
10&lt;/code&gt;&lt;/pre&gt;
&lt;pre id=&quot;code_1740351519404&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; 0b10
2&lt;/code&gt;&lt;/pre&gt;
&lt;pre id=&quot;code_1740351549324&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; 0o10
8&lt;/code&gt;&lt;/pre&gt;
&lt;pre id=&quot;code_1740351568369&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; 0x10
16&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이와 반대로, 10진수에서 다른 진수로 계산할 수도 있다.&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1740351666042&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;a = 100
&amp;gt;&amp;gt;&amp;gt; bin(a)
'0b1100100'
&amp;gt;&amp;gt;&amp;gt; oct(a)
'0o144'
&amp;gt;&amp;gt;&amp;gt; hex(a)
'0x64'&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서로 다른 데이터 타입 간의 변환에 대해서 알아볼 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬에서 다른 데이터 타입을 정수 타입으로 변환하기 위해서 &lt;b&gt;int()&lt;/b&gt;함수를 사용한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;int() 함수는 하나의 입력 인수를 취해서 입력 인수와 동일한 정수를 반환한다. 소숫점이 있다면, 소숫점 이하는 버린다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬에서 가장 간단한 데이터 타입인 불리언을 int() 함수를 이용해 변환해보자.&lt;/p&gt;
&lt;pre id=&quot;code_1740351887188&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; int(True)
1
&amp;gt;&amp;gt;&amp;gt; int(False)
0&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반대로 &lt;b&gt;bool()&lt;/b&gt; 함수를 이용해 정수에 해당하는 불리언 값을 얻을 수도 있다.&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1740351948242&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; bool(1)
True
&amp;gt;&amp;gt;&amp;gt; bool(0)
False
&amp;gt;&amp;gt;&amp;gt; bool(100)
True&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정수 뿐만 아니라 부동소숫점 숫자도 불리언 값으로 변환 가능하다.&lt;/p&gt;
&lt;pre id=&quot;code_1740352102425&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; bool(1.0)
True
&amp;gt;&amp;gt;&amp;gt; bool(0.0)
False&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;부동소숫점 숫자를 정수로 변환하게 되면 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1740352025336&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; int(123.6)
123
&amp;gt;&amp;gt;&amp;gt; int(2.0e4)
20000&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;언더바, 부호, 숫자로 이루어진 텍스트 문자열도 int() 함수를 이용해 정수로 변환 가능하다.&lt;/p&gt;
&lt;pre id=&quot;code_1740352276141&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; int('1_234_567_89')
123456789
&amp;gt;&amp;gt;&amp;gt; int('99')
99
&amp;gt;&amp;gt;&amp;gt; int('-134')
-134
&amp;gt;&amp;gt;&amp;gt; int('+194')
194&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;추가로 int() 함수를 사용할 때, 뒤에 별도로 지수를 취해서 10진수가 아닌 수를 10진수로 표현할 수도 있다.&lt;/p&gt;
&lt;pre id=&quot;code_1740352471196&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; int('10',2)
2
&amp;gt;&amp;gt;&amp;gt; int('10',8)
8
&amp;gt;&amp;gt;&amp;gt; int('10',16)
16&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 int() 함수를 사용할 때, 숫자가 아닌 다른 것을 입력하면 아래처럼 오류가 발생한다.&lt;/p&gt;
&lt;pre id=&quot;code_1740352547239&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; int(&quot;92323alsdasd&quot;)
Traceback (most recent call last):
  File &quot;&amp;lt;pyshell#35&amp;gt;&quot;, line 1, in &amp;lt;module&amp;gt;
    int(&quot;92323alsdasd&quot;)
ValueError: invalid literal for int() with base 10: '92323alsdasd'&lt;/code&gt;&lt;/pre&gt;</description>
      <category>파이썬/개념</category>
      <category>Python</category>
      <category>파이썬</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/104</guid>
      <comments>https://thpop.tistory.com/104#entry104comment</comments>
      <pubDate>Mon, 24 Feb 2025 08:15:49 +0900</pubDate>
    </item>
    <item>
      <title>데이터 타입 - 정수 연산자, 변수</title>
      <link>https://thpop.tistory.com/103</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;정수(integer)끼리의 연산&lt;/b&gt;은 아래 표의 &lt;b&gt;수학 연산자(operator)&lt;/b&gt;를 활용하여 수행할 수 있다.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style12&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 13.1395%;&quot;&gt;연산자&lt;/td&gt;
&lt;td style=&quot;width: 36.8605%;&quot;&gt;역할&lt;/td&gt;
&lt;td style=&quot;width: 25%;&quot;&gt;예시&lt;/td&gt;
&lt;td style=&quot;width: 25%;&quot;&gt;결과&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 13.1395%;&quot;&gt;+&lt;/td&gt;
&lt;td style=&quot;width: 36.8605%;&quot;&gt;더하기&lt;/td&gt;
&lt;td style=&quot;width: 25%;&quot;&gt;5 + 8&lt;/td&gt;
&lt;td style=&quot;width: 25%;&quot;&gt;13&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 13.1395%;&quot;&gt;-&lt;/td&gt;
&lt;td style=&quot;width: 36.8605%;&quot;&gt;뺴기&lt;/td&gt;
&lt;td style=&quot;width: 25%;&quot;&gt;100 - 20&lt;/td&gt;
&lt;td style=&quot;width: 25%;&quot;&gt;80&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 13.1395%;&quot;&gt;*&lt;/td&gt;
&lt;td style=&quot;width: 36.8605%;&quot;&gt;곱하기&lt;/td&gt;
&lt;td style=&quot;width: 25%;&quot;&gt;4 * 7&lt;/td&gt;
&lt;td style=&quot;width: 25%;&quot;&gt;28&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 13.1395%;&quot;&gt;/&lt;/td&gt;
&lt;td style=&quot;width: 36.8605%;&quot;&gt;부동소수점 나누기&lt;/td&gt;
&lt;td style=&quot;width: 25%;&quot;&gt;7 / 2&lt;/td&gt;
&lt;td style=&quot;width: 25%;&quot;&gt;3.5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 13.1395%;&quot;&gt;//&lt;/td&gt;
&lt;td style=&quot;width: 36.8605%;&quot;&gt;정수 나누기(소수점 이하 버림)&lt;/td&gt;
&lt;td style=&quot;width: 25%;&quot;&gt;7 // 3&lt;/td&gt;
&lt;td style=&quot;width: 25%;&quot;&gt;2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 13.1395%;&quot;&gt;%&lt;/td&gt;
&lt;td style=&quot;width: 36.8605%;&quot;&gt;나머지&lt;/td&gt;
&lt;td style=&quot;width: 25%;&quot;&gt;7 % 2&lt;/td&gt;
&lt;td style=&quot;width: 25%;&quot;&gt;1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 13.1395%;&quot;&gt;**&lt;/td&gt;
&lt;td style=&quot;width: 36.8605%;&quot;&gt;지수&lt;/td&gt;
&lt;td style=&quot;width: 25%;&quot;&gt;5 ** 3&lt;/td&gt;
&lt;td style=&quot;width: 25%;&quot;&gt;125&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;덧셈과 뺄셈은 원하는 만큼 숫자와 연산자를 추가하여 계산할 수 있다.&lt;/p&gt;
&lt;pre id=&quot;code_1739861446006&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; 5 + 9 + 3
17
&amp;gt;&amp;gt;&amp;gt; 4 + 3 - 3 - 2 + 6
8&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;숫자와 연산자 사이에 있는 &lt;b&gt;공백은 무시&lt;/b&gt;된다.&lt;/p&gt;
&lt;pre id=&quot;code_1739861481592&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; 5 + 7           +                     12
24&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;곱셈 또한 덧셈 / 뺄셈처럼 직관적으로 알 수 있다.&lt;/p&gt;
&lt;pre id=&quot;code_1739861558176&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; 2 * 10
20
&amp;gt;&amp;gt;&amp;gt; 10 * 2
20
&amp;gt;&amp;gt;&amp;gt; 2 * 3 * 7 * 8
336&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나눗셈의 경우에는 두 가지 경우가 있어 주의할 필요가 있다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;/의 경우에는 &lt;b&gt;부동소수점을 포함한 결과&lt;/b&gt;가 출력된다.&lt;/li&gt;
&lt;li&gt;//의 경우에는 &lt;b&gt;부동소수점을 제외한 결과&lt;/b&gt;, 즉 &lt;b&gt;정수&lt;/b&gt;가 출력된다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정수를 정수로 나누더라도 /를 이용하면 부동소수점을 포함한 결과가 나온다.&lt;/p&gt;
&lt;pre id=&quot;code_1739861687565&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; 18 / 5
3.6&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;//는 &lt;b&gt;소수점 이하를 버리고&lt;/b&gt;, 정수를 출력한다.&lt;/p&gt;
&lt;pre id=&quot;code_1739861707304&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; 18 // 5
3&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;0으로 나눈다면 &lt;b&gt;예외가 발생&lt;/b&gt;한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 위에서 알아본 리터럴 정수와 정수 값이 할당된 변수를 혼합하여 사용할 수도 있다.&lt;/p&gt;
&lt;pre id=&quot;code_1739861791127&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; a = 100
&amp;gt;&amp;gt;&amp;gt; a
100
&amp;gt;&amp;gt;&amp;gt; a - 25
75&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;변수 a는 객체를 가리키는 이름이고, a - 25의 결괏값을 a에 할당하지 않았으므로 a의 값은 변하지 않는다. 만약 a의 값을 바꾸고 싶다면 추가적으로 할당을 해주어야 한다.&lt;/p&gt;
&lt;pre id=&quot;code_1739861879178&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; a = 100
&amp;gt;&amp;gt;&amp;gt; a = a - 25
&amp;gt;&amp;gt;&amp;gt; a
75&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위와 같은 과정을 풀어 써보면 다음과 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1739861958489&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; a = 100
&amp;gt;&amp;gt;&amp;gt; temp = a - 25
&amp;gt;&amp;gt;&amp;gt; a = temp&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이를 보다 간단하게 표현할 수 있다.&lt;/p&gt;
&lt;pre id=&quot;code_1739861990736&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; a = 100
&amp;gt;&amp;gt;&amp;gt; a -= 25
&amp;gt;&amp;gt;&amp;gt; a
75&lt;/code&gt;&lt;/pre&gt;
&lt;pre id=&quot;code_1739862020863&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; a = 100
&amp;gt;&amp;gt;&amp;gt; a += 25
&amp;gt;&amp;gt;&amp;gt; a
125&lt;/code&gt;&lt;/pre&gt;
&lt;pre id=&quot;code_1739862034656&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; a = 100
&amp;gt;&amp;gt;&amp;gt; a *= 23
&amp;gt;&amp;gt;&amp;gt; a
300&lt;/code&gt;&lt;/pre&gt;
&lt;pre id=&quot;code_1739862082785&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; a = 100
&amp;gt;&amp;gt;&amp;gt; a /= 8
&amp;gt;&amp;gt;&amp;gt; a
12.5&lt;/code&gt;&lt;/pre&gt;
&lt;pre id=&quot;code_1739862125159&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; a = 100
&amp;gt;&amp;gt;&amp;gt; a //= 3
&amp;gt;&amp;gt;&amp;gt; a
33&lt;/code&gt;&lt;/pre&gt;</description>
      <category>파이썬/개념</category>
      <category>Python</category>
      <category>파이썬</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/103</guid>
      <comments>https://thpop.tistory.com/103#entry103comment</comments>
      <pubDate>Tue, 18 Feb 2025 16:02:21 +0900</pubDate>
    </item>
    <item>
      <title>데이터 타입 - 불리언, 정수</title>
      <link>https://thpop.tistory.com/102</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬에서 불리언(boolean)데이터 타입의 값은 &lt;b&gt;True와 False의 두 가지 뿐이다.&lt;/b&gt; 이는 직접 사용되거나, 어떤 값에서 타입의 진위 확인을 위해 사용하기도 하며, &lt;b&gt;bool() 함수&lt;/b&gt;를 이용해 &lt;b&gt;파이썬의 모든 데이터 타입을 불리언으로 변환할 수 있다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;bool() 함수는 0이 아닌 값은 True로 간주하며, 0인 값은 False로 간주한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예시는 아래와 같다.&lt;/p&gt;
&lt;pre id=&quot;code_1739860635444&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; bool(True)
True
&amp;gt;&amp;gt;&amp;gt; bool(1)
True
&amp;gt;&amp;gt;&amp;gt; bool(125)
True
&amp;gt;&amp;gt;&amp;gt; bool(-12)
True
&amp;gt;&amp;gt;&amp;gt; bool(False)
False
&amp;gt;&amp;gt;&amp;gt; bool(0)
False
&amp;gt;&amp;gt;&amp;gt; bool(0.0)
False&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;정수(integer)&lt;/b&gt;는 모두 숫자로 이루어져 있으며, 분수나 소수점이 없고, 정수 앞에 부호가 올 수 있다. 또한 &lt;b&gt;일반적인 10진수 이외의 다른 진수로 숫자를 표현할 수 없다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대화식 인터프리터에서 연속된 숫자는 &lt;b&gt;리터럴 정수(literal integer)&lt;/b&gt;로 간주된다.&lt;/p&gt;
&lt;pre id=&quot;code_1739860764555&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; 5
5
&amp;gt;&amp;gt;&amp;gt; 0
0&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 0은 다른 숫자 앞에 올 수 없다.&lt;/p&gt;
&lt;pre id=&quot;code_1739860845428&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; 03
File &quot;&amp;lt;stdin&amp;gt;&quot;, line 1
03
  ^
SyntaxError: invalid token&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;양수를 표현할 때에는 +를 붙이거나 안 붙여도 되고, 음수를 표현할 때에는 -를 붙여야 한다.&lt;/p&gt;
&lt;pre id=&quot;code_1739860946760&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; 12
12
&amp;gt;&amp;gt;&amp;gt; +12
12
&amp;gt;&amp;gt;&amp;gt; -12
-12&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;또한 정수에는 쉼표(,)를 사용할 수 없으며, 대신 언더바를 사용하여 숫자를 구분할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1739860973422&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; 1,000,000
(1,0,0)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;쉼표를 사용하게 되면 백만이라는 숫자 대신 &lt;b&gt;튜플(tuple)&lt;/b&gt;을 얻게 된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;언더바를 사용하면 아래와 같은 결과를 얻는다.&lt;/p&gt;
&lt;pre id=&quot;code_1739861065865&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; million = 1_000_000
&amp;gt;&amp;gt;&amp;gt; million
1000000&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;언더바는 첫 숫자 이후 모든 위치에 언더바를 사용할 수 있고, 출력할 때는 언더바를 무시하고 숫자만 출력한다.&lt;/p&gt;</description>
      <category>파이썬/개념</category>
      <category>Python</category>
      <category>파이썬</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/102</guid>
      <comments>https://thpop.tistory.com/102#entry102comment</comments>
      <pubDate>Tue, 18 Feb 2025 15:45:32 +0900</pubDate>
    </item>
    <item>
      <title>데이터 - 할당</title>
      <link>https://thpop.tistory.com/101</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;앞서 변수에 대해서 알아보았고, 이번에는 변수에 값을 할당(assignment)하는 것을 알아볼 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬에서는 &lt;b&gt;=&lt;/b&gt;을 사용하여 변수에 값을 할당한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;주의해야 하는 점은, 수학에서 =은 양변이&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;같음(equal)&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;을 의미하는 것과는 다르게 파이썬에서는&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;할당(assignment)&lt;/b&gt;를 의미한다는 것이며, &lt;b&gt;오른쪽 값을 왼쪽 변수에 할당하는 것&lt;/b&gt;이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수학에서 아래와 같은 식이 있다고 하자.&lt;/p&gt;
&lt;pre id=&quot;code_1739857715972&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;y=x+12&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러면 우리는 x에 값을 대입해서 방정식을 푼다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 파이썬 프로그램에서 위와 같은 식을 사용하기 위해서는 &lt;b&gt;할당(assignment)&lt;/b&gt;을 해줄 필요가 있다.&lt;/p&gt;
&lt;pre id=&quot;code_1739857875924&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; x=5
&amp;gt;&amp;gt;&amp;gt; y=x+12
&amp;gt;&amp;gt;&amp;gt; y
17&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이는 파이썬과 같은 프로그램에서 우변에 있는 모든 것은 값을 가져야 하기 때문이다. 이는 변수를 &lt;b&gt;초기화(initializing)&lt;/b&gt;하는 것이며, 변수에 값을 할당하여 변수를 준비시키는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;만약 맨 위의 수학 방정식만 입력한다면, &lt;b&gt;변수 x에 할당된 값이 없으므로 예외(exception) 오류가 발생&lt;/b&gt;한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 알아두어야 하는 점은 &lt;b&gt;변수는 데이터가 저장되는 장소가 아니라, 단지 이름이라는 점이다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;할당(assignment)&lt;/b&gt;은 값은 복사하지 않고, 단지 &lt;b&gt;데이터를 포함하는 객체에 이름을 붙이는 것&lt;/b&gt;이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 두 개 이상의 변수 이름에 동시에 값을 지정할 수 있다.&lt;/p&gt;
&lt;pre id=&quot;code_1739858327637&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; two=deux=zwei=2
&amp;gt;&amp;gt;&amp;gt; two
2
&amp;gt;&amp;gt;&amp;gt; deux
2
&amp;gt;&amp;gt;&amp;gt; zwei
2&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 이름에 지정된 값을 변경하면 이름은 새로운 객체를 가리키게 되는데 이를 이용하여 이름을 재할당 할 수 있다.&lt;/p&gt;</description>
      <category>파이썬/개념</category>
      <category>Python</category>
      <category>파이썬</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/101</guid>
      <comments>https://thpop.tistory.com/101#entry101comment</comments>
      <pubDate>Tue, 18 Feb 2025 14:59:40 +0900</pubDate>
    </item>
    <item>
      <title>데이터 - 변수</title>
      <link>https://thpop.tistory.com/100</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬에서 데이터 값을 명시할 수 있는 방법에는 다음과 같은 두 가지 방법이 있다.&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;리터럴&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;변수&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;변수(variable)&lt;/b&gt;는 컴퓨터 언어의 핵심 개념이다. 다른 컴퓨터 언어를 이용할 때와 마찬가지로 파이썬을 사용할 때에도 &lt;b&gt;프로그램에서 사용하려는 컴퓨터 메모리의 값 이름과 같은 변수를 정의할 수 있다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬에서 변수를 선언할 때, 아래와 같은 &lt;b&gt;규칙&lt;/b&gt;을 지켜야 한다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: circle;&quot; data-ke-list-type=&quot;circle&quot;&gt;
&lt;li&gt;&lt;b&gt;소문자(a~z), 대문자(A~Z), 숫자(0~9), 언더바(_)&lt;/b&gt;만 사용할 수 있다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;대소문자를 구별한다.&lt;/b&gt; Apple, aPple, APPLE는 모두 다르게 취급된다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;숫자가 아닌 문자나 언더바로 시작한다.&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;언더바로 시작하는 이름은 특별하게 취급한다.&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;파이썬 예약어(키워드)는 사용하면 안 된다.&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬 예약어에는 아래의 표와 같은 것들이 있다.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;False&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;await&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;else&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;import&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;pass&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;None&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;break&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;except&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;in&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;raise&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;True&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;class&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;finally&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;is&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;return&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;and&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;continue&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;for&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;lambda&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;try&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;as&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;def&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;from&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;nonlocal&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;while&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;assert&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;del&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;global&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;not&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;with&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;async&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;elif&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;if&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;or&lt;/td&gt;
&lt;td style=&quot;width: 20%;&quot;&gt;yield&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래와 같은 코드를 이용하면 파이썬 프로그램에서 예약어를 찾을 수 있다.&lt;/p&gt;
&lt;pre id=&quot;code_1739857359074&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;help(&quot;keywords&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;혹은&lt;/p&gt;
&lt;pre id=&quot;code_1739857366716&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;impoprt keyword
keyword.kwlist&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>파이썬/개념</category>
      <category>Python</category>
      <category>파이썬</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/100</guid>
      <comments>https://thpop.tistory.com/100#entry100comment</comments>
      <pubDate>Tue, 18 Feb 2025 14:43:34 +0900</pubDate>
    </item>
    <item>
      <title>데이터 - 타입</title>
      <link>https://thpop.tistory.com/99</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;여러 가지 컴퓨터 언어들 중에서, 일부 언어는 크기와 타입을 추적하여 원싯값을 찾아 직접 처리한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬은 이러한 방식 대신 &lt;b&gt;각 데이터 값을 메모리에 객체(object)로 래핑(wrapping, 감싸기)&lt;/b&gt;한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물론 &lt;b&gt;직접 객체를 지정하는 경우도 있지만&lt;/b&gt; 이는 이후에 다룬다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파이썬에서 객체는 다음과 같은 내용을 포함하는 데이터 덩어리이다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;타입(type) 정의&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;다른 객체와 구별하기 위한 &lt;b&gt;고유 ID&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;타입과 연관된 값&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;객체의 사용 빈도를 추적하는 &lt;b&gt;참조 횟수&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ID는 고유 식별자이고, 타입(type)은 데이터의 종류이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;데이터 타입의 종류는 아래의 표와 같다.&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 222px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style12&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 15.3488%; height: 20px;&quot;&gt;이름&lt;/td&gt;
&lt;td style=&quot;width: 15.1163%; height: 20px;&quot;&gt;타입&lt;/td&gt;
&lt;td style=&quot;width: 56.6279%; height: 20px;&quot;&gt;예시&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 16px;&quot;&gt;
&lt;td style=&quot;width: 15.3488%; height: 16px;&quot;&gt;불리언&lt;/td&gt;
&lt;td style=&quot;width: 15.1163%; height: 16px;&quot;&gt;bool&lt;/td&gt;
&lt;td style=&quot;width: 56.6279%; height: 16px;&quot;&gt;True, False&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 15.3488%; height: 17px;&quot;&gt;정수&lt;/td&gt;
&lt;td style=&quot;width: 15.1163%; height: 17px;&quot;&gt;int&lt;/td&gt;
&lt;td style=&quot;width: 56.6279%; height: 17px;&quot;&gt;100, 21451, 23_000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 15.3488%; height: 17px;&quot;&gt;부동소수점&lt;/td&gt;
&lt;td style=&quot;width: 15.1163%; height: 17px;&quot;&gt;float&lt;/td&gt;
&lt;td style=&quot;width: 56.6279%; height: 17px;&quot;&gt;3.14, 3.9e7&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 16px;&quot;&gt;
&lt;td style=&quot;width: 15.3488%; height: 16px;&quot;&gt;복소수&lt;/td&gt;
&lt;td style=&quot;width: 15.1163%; height: 16px;&quot;&gt;complex&lt;/td&gt;
&lt;td style=&quot;width: 56.6279%; height: 16px;&quot;&gt;3j, 5+9j&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 15.3488%; height: 17px;&quot;&gt;텍스트 문자열&lt;/td&gt;
&lt;td style=&quot;width: 15.1163%; height: 17px;&quot;&gt;str&lt;/td&gt;
&lt;td style=&quot;width: 56.6279%; height: 17px;&quot;&gt;'asdadw', &quot;white&quot;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 15.3488%; height: 17px;&quot;&gt;리스트&lt;/td&gt;
&lt;td style=&quot;width: 15.1163%; height: 17px;&quot;&gt;list&lt;/td&gt;
&lt;td style=&quot;width: 56.6279%; height: 17px;&quot;&gt;['apple','banana]&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 15.3488%; height: 17px;&quot;&gt;튜플&lt;/td&gt;
&lt;td style=&quot;width: 15.1163%; height: 17px;&quot;&gt;tuple&lt;/td&gt;
&lt;td style=&quot;width: 56.6279%; height: 17px;&quot;&gt;(1,2,3)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 15.3488%; height: 17px;&quot;&gt;바이트&lt;/td&gt;
&lt;td style=&quot;width: 15.1163%; height: 17px;&quot;&gt;bytes&lt;/td&gt;
&lt;td style=&quot;width: 56.6279%; height: 17px;&quot;&gt;b'ab/xff&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 15.3488%; height: 17px;&quot;&gt;바이트 배열&lt;/td&gt;
&lt;td style=&quot;width: 15.1163%; height: 17px;&quot;&gt;&lt;span style=&quot;background-color: #f9f9f9; color: #333333; text-align: start;&quot;&gt;bytearray&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 56.6279%; height: 17px;&quot;&gt;&lt;span style=&quot;background-color: #f9f9f9; color: #333333; text-align: start;&quot;&gt;bytearray(...)&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 15.3488%; height: 17px;&quot;&gt;셋&lt;/td&gt;
&lt;td style=&quot;width: 15.1163%; height: 17px;&quot;&gt;set&lt;/td&gt;
&lt;td style=&quot;width: 56.6279%; height: 17px;&quot;&gt;set([1,2,3])&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 15.3488%; height: 17px;&quot;&gt;프로즌 셋&lt;/td&gt;
&lt;td style=&quot;width: 15.1163%; height: 17px;&quot;&gt;frozenset&lt;/td&gt;
&lt;td style=&quot;width: 56.6279%; height: 17px;&quot;&gt;frozenset(['A','B'])&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 15.3488%; height: 17px;&quot;&gt;딕셔너리&lt;/td&gt;
&lt;td style=&quot;width: 15.1163%; height: 17px;&quot;&gt;dictionary&lt;/td&gt;
&lt;td style=&quot;width: 56.6279%; height: 17px;&quot;&gt;{'food' : 'apple', 'animal' : 'dog'}&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한 &lt;b&gt;리스트, 바이트 배열, 셋, 딕셔너리&lt;/b&gt;의 네 가지 데이터 타입은 &lt;b&gt;데이터 값을 수정할 수 있는&lt;/b&gt; &lt;b&gt;가변(mutable) 데이터 타입&lt;/b&gt;이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 기본적으로 파이썬은 &lt;b&gt;강타입 언어(strong type)&lt;/b&gt;이기 때문에 &lt;b&gt;값은 변경할 수도 있지만, 객체의 타입은 변경할 수 없다.&lt;/b&gt;&lt;/p&gt;</description>
      <category>파이썬/개념</category>
      <category>Python</category>
      <category>파이썬</category>
      <author>thpop</author>
      <guid isPermaLink="true">https://thpop.tistory.com/99</guid>
      <comments>https://thpop.tistory.com/99#entry99comment</comments>
      <pubDate>Sun, 16 Feb 2025 16:22:23 +0900</pubDate>
    </item>
  </channel>
</rss>