전체 글

개발자 꿈나무 / 철학과(졸업) 및 건축학과(찍먹) 출신의 IT 데뷔 스타일기
five1 = 5 five2 = 5.0 five3 = 5.00000 print(five1) print(five2) print(five3) # 출력해보면 다 똑같이 출력되진 않음 # 정수와 실수 # 수 가운데는 정수만 표현할 수 있는 수가 있고 소수만 다룰 수 있는 수가 있음 # 예외가 있는데 나눗셈이 있음. 곱셉 덧셈과는 달리 6/5 처럼 정수로 나눠떨어지지 않을 경우가 있기 때문 five4 = 5 * 1 five5 = 5 * 1.0 print(five4) print(five5) print(6/5) # 1.2 -> 1이 나오려면? print(10/5) print(6%5) # 1 print(10%5) # 슬래시 두개 // 를 이용해서 나눗셈의 몫만을 구할 수 있음 div1 = 6 / 5 div2 = 6 /..
# 따옴표와 문자열에 대해 알아봅시다 string1 = 'Some text' string2 = "어떤 텍스트" string3 = '{}도 {}도 지금 이것도 문자열'.format(string1, string2) print(string1, string2, string3) # 각자 차이는 없지만 어떤 따옴표를 사용할지는 골라야함 # 직접 인용은 큰 따옴표로, 강조는 작은 따옴표 # '로 감싼 문자열 안에는 "를 쓸 수 있다. # "로 감싼 문자열 안에는 '를 사용할 수 있다. long_string = '''첫째줄은 좋은데 ' '둘째줄도 괜찮을까?''' # 따옴표 3개를 사용하면 가능함! 하나만 쓰면 에러 # 따옴표 3개를 사용하면 줄바뀜도 인식 가능함. print(long_string) quote1 = "가..
알고리즘이란? 알고리즘이란 어떤 문제를 해결하기 위한 방법을 말한다. 우리가 알고리즘을 배우는 것은 그 중에서도 가장 효율적인 방법을 찾기 위함이다. 얼마나 효율적이고 논리적인 컴퓨팅을 할 수 있을지는 이러한 사고 방식에 달려 있다. 예를 들어 1에서 10까지의 자연수의 합을 구해야한다고 생각해보자. 단순히 생각하면 1+2+3+4+5+6+7+8+9+10=55 가 나오겠지만 그 안에서 규칙을 발견한다면 더욱 쉽게 계산할 수 있다. {(n+1)*n}/2를 사용하면 단숨에 구할 수 있다. 이를 통해 계산의 시간복잡도를 낮출 수 있으며 이러한 효과가 알고리즘의 힘이다. 선형탐색과 이진탐색 책장에 책이 20권정도 꽂혀있다고 가정하자. 그 중에서 나는 어린왕자 책을 찾으려고 한다. 그 책을 찾기 위해서는 여러 탐색..
#include struct jsu { char nae[12]; int os, db, hab, hhab;};int pp[3] = {11, 22, 33} int main(){ struct jsu st[3] = {{"데이터1", 95, 88}, {"데이터2", 84, 91}, {"데이터3", 86, 75}}; struct jsu* p; p = &st[0]; (p + 1)->hab = (p + 1)-> os + (p +2)->db; (p + 1)->hhab = (p + 1)->hab + p->os + p->db; printf("%d", (p + 1)->hab + (p + 1)->hhab);}드디어 깨달은 코드블럭넣는방법..지금까지 왜 표를 그렸던 것인가.. char ..
if True: pass # 조건이 참일 때 실행 else: pass # 조건이 거짓일 때 실행 그렇댄다.. else와 if로 가위바위보 게임을 만들어보았다. 그랬더니 else와 if로 뒤범벅되어서 알아보기가 힘들었다. 강사님이 elif에 대해서 알려주셨다. elif = else + if 함수 함수 def function(): print('안녕, 함수!') a의 값은 5, b의 값은 7. 함수의 이름은 add로 만들고 함수를 만들고나면 결과가 출력되도록 할 것. a = 5 b = 7 #이 아래줄에 a와 b를 더해서 result에 저장하는 함수add를 만들어 보세요. def add(): result = a + b #함수 내부의 코드가 되려면 이 줄은 들여쓰기 되어야 합니다. print(result) #함수..
a = 1 b = 1 if a == b: print("두 개의 값은 같습니다.") if a != b: print("두 개의 값은 같지 않습니다.") 두 개의 값은 같습니다. 놀랐던 점 : .py로 저장하면 실행이 안된다.. vscode만 그런건지 다른데도 그런건지.. .ipynb로 저장을 해야 됨. .py 원툴이었던 난(사실 그정도로 하진 않았지만) 대체 에러가 뜨는 이유가 뭐지?? 하고 의아해 하고 있었는데 알고보니 책 첫줄부터 적혀있었더라^^ ㅎ;; 글을 자세히 읽자!! 다른 기호들은 >,
- 혼자 공부하는 C언어 교재 비주얼 스튜디오와 비주얼 스튜디오 코드의 차이 새로운 환경이나 문제에 닥쳤을 때 구글링 등의 해결할 수 있는 방법이 필요함(ex.구글링, 챗지피티) int main() { printf("1\n"); printf("2\n"); printf("3\n"); printf("4\n"); printf("5\n"); return 0; } \n : 한 줄 띄우기 printf : 화면에 출력하고 싶은 걸 넣음 int main() { printf("Be happy\n"); printf("12345678901234567890\n"); printf("My\tfriend\n"); printf("Goot\bd\tchance\n"); printf("Cow\rW\a\n"); return 0; } \b ..
· 일기
솔직히 말하면 제목은 구라고 초등학교 때 컴퓨터 관련한 자격증을 딴 적은 있다. 그런데 사실 성인되고나서 스펙을 올려야한다 어쩌구저쩌구 말들은 많았지만 나는 애초에 철학과 대학원을 갈 줄 알았고 그 이후로 쭉 학자의 길을 걸을 줄 알았던 사람으로서 다른 자격증은 의미가 없었다. 그래놓고 건축학과를 가긴 했다. 그러던 도중 개발자가 되겠다는 뜬금없는 목표를 가지며 당차게 프로그래밍 교육 기관에 들어오기는 했지만 정말 아무것도 모르겠더라. 정보처리기사라는 자격증도 세상에 존재하는 줄조차 몰랐고.. 당연한 소리겠지만.. 내 인생에 따야지! 마음 먹었던 자격증은 건축사 자격증밖에 없었어서 더욱 그랬다. 고등학교 졸업 이후 거의 안하던 암기 과목을 다시 하려니 머리가 아프다. 그런데도 신기한 건 뭔가 생산적인 일..
UI의 구분 CLI(Command Line Interface) : 텍스트 형태로 이루어진 인터페이스 GUI(Graphical User Interface) : 마우스로 선택해 작업을 하는 그래픽 환경의 인터페이스 NUI(Natural User Interface) : 사용자의 말이나 행동으로 기기를 조작하는 인터페이스 VUI(Voice User Interface) : 사람의 음성으로 기기를 조작하는 인터페이스 OUI(Organic User Interface) : 모든 사물과 사용자 간의 상호작용을 위한 인터페이스 UI의 기본 원칙 직관성 유효성 : 사용자가 원하는 행동을 정확하고 완벽하게 달성해야 함 학습성 : 누구나 쉽게 배우고 익힐 수 있어야 함 유연성 : 사용자의 요구사항을 최대한 포용하고 실수를 방지..
UML의 정의 : 시스템 개발 과정에서 시스템 개발자와 고객 또는 개발자 상호 간의 의사소통이 원활하게 이루어지도록 표준화한 객체지향 모델링 언어 UML의 구성 요소 : 사물(Things), 관계(Relationship), 다이어그램(Diagram) [사관다] 사물 구조 사물 : 시스템의 개념적, 물리적 요소를 표현 / 클래스, 유스케이스, 컴포넌트, 노드 등 행동 사물 : 시간과 공간에 따른 요소들의 행위 표현 / 상호작용, 상태머신 등 그룹 사물 : 요소들의 그룹으로 묶어서 표현 / 패키지(그룹화) 주해 사물 : 부가적인 설명이나 제약조건 등 표현 / 부가설명 관계 구조적, 정적 다이어그램(Diagram) 클래스 다이어그램(Class Diagram) 객체 다이어그램(Object Diagram) 컴포넌..
나는 비전공자로 IT라는 단어는 개인적으로 애플을 좋아해서 애플 기기 살 때나 들어봤지 전혀 연관이 없던 사람이었다. 그런데 여러가지 딥한 사정으로 인해 건축학과를 자퇴하게 되고 개발자를 향한 여정을 떠나게 된다.. 터벅터벅.. 그러다 알게 된 ICT 멘토링. ICT란 단어도 여기서 처음 들었을 정도로 나는 이 분야에 관련해서는 정말 무지했다. 그런 와중에 팀을 부랴부랴 짜게 되고 멘토링에 참여하게 되었다. 멘토 분도 붙게 되어서 다음 주부터는 멘토 분과의 회의가 시작될 예정인데 여러 모로 떨리는 여정이다. 지도 교수님께서는 우리 개요서를 보더니 너희가 지옥문을 열었구나 하셨다만 멘토님, 그리고 우리 팀원들과 함께 잘 헤쳐나가보려고 한다. 재밌겠다!!
CASE(Computer Aided Software Engineering) : 자동화 도구 표준화와 보고를 통한 문서의 품질 개선 명세에 대한 유지보수 비용 축소 요구사항 변경이 주는 영향 추적 용이 종류 : SADT, SREM, PSL/PSA 등 HIPO(Hierachy Input Process Output) : 시스템의 분석/설계, 문서화 시 사용하는 기법으로 시스템의 입력, 처리, 출력 기능을 나타냄 기본 시스템 모델은 입력, 처리, 출력으로 구성되며, 하향식 소프트웨어 개발을 위한 문서화 도구 체계적인 문서 관리 가능 기호, 도표 등을 사용하므로 보기 쉽고 이해하기 쉬움 기능과 자료의 의존 관계 동시에 표현 가능 가시적 도표(Visual Table of Contents) :: 목차 총체적 도표(O..
bumm
개발자가 되고 싶어? 그런데 왜 니 블로그는 그렇게 깨끗하고 예뻐?