이번년 1학기에 신청했던 심리 + 컴공 + 통계를 합해 내가 설계한 '기초인지공학'전공이 최종합격 됬다!!!!! 2학년 1학기부터 무대포로 일단 컴공수업을 다 듣고봤는데 허공에 날리는 학점이 되지않아 정말 다행이다. 이로서 인공지능에 대해 공부하려하는 내 목표에 조금이라도 더 가깝게 됬다. 9차학기까지 다녀야하고 매학기마다 엄청 빡세겠지만 그래도 공부하는게 좀 더 보람차고 재밌을 것 같다. 일이 하나 확실하게 해결된만큼 앞으로라도 게임 좀 줄이고 열심히 프로그래밍 + 통계 공부를 더 해야겠다. 합격해서 정말 기쁘다 열심히 살아야지
오늘 첫 수업은 코세라에서 가장 유명한 파이썬 강의인 Python for everyone(https://www.coursera.org/learn/python)을 신청하여 1단원을 들었다. 영어로 수업하는데 어려운 표현도 잘 없고 영어자막도 있어 이해하는데 전혀 어려움이 없었다. 무엇보다 좋았던 점은 교수님이 내용을 설명해주는데 풍부한 예시와 재밌는 농담을 섞어 수업 내내 웃으면서 봤다.
내용적인 측면도 정리를 해보자면, Chapter 1. Why we Program? 단원 명 그대로다. 왜 우리가 프로그램을 하는지와 컴퓨터 하드웨어에 관한 아주 기초적인 설명이 주 내용이다. 이 course는 컴퓨터에 대한 지식이 없는 사람들을 대상으로 하기 때문에 매우 기초적인 내용부터 시작한다. 인상 깊었던 부분은 프로그래밍이란 무엇이며 왜 필요한가에 대해 설명해 주는데 컴퓨터 프로그래밍을 춤을 배우는 과정과 연결시켜 설명하는 부분이었다. 컴퓨터가 코드를 순서대로 실행하듯 인간도 춤을 배울 때 순서에 맞춰 한다는게 주 내용이었는데 이 내용을 옛날에 유행했던 마카레나 춤을 예시로서 사용했는데 이런 강의에서 마카레나 영상을 보니 강의가 더 친숙하게 느껴졌다. (마카레나 춤 주소 ㅋㅋ https://www.youtube.com/watch?v=vlzwuFkn88U). 또한 프로그래밍이라는 작업은 컴퓨터의 언어(파이썬)로 컴퓨터가 이해할 수 있는 한편의 이야기를 만드는 작업이라는 비유도 인상깊었다. 프로그래밍을 한편의 이야기를 만드는 작업이라 생각하니 코딩이 뭔가 더 낭만적이고 흥미로운 것으로 새롭게 느껴졌다.
오늘 들은 1강은 작년부터 C프로그래밍, 어셈블리, 자료구조 등등을 수강한 나에게 특별히 새로운 내용은 아니었지만 딱딱하고 어렵게 생각했던 코딩을 좀더 재밌고 부드러운 작업으로 새롭게 느끼게 해 준 수업이었다. 이번 주 중으로 2강도 들어야지!
이렇게하니 출력에는 전혀 문제가 없었지만 체점에서 96690과 같이 큰수가 여러번 들어가니 소인수 b를 1씩 올린다고 while문이 쓸데없이 너무 많이 돌아가 timeout이 뜨더군요ㅜㅜ 처음에 너무 쉽게 생각해서 여기서 맨붕ㅜㅜ 그래서 소인수를 어떻게 증가시키면 될까 하다가 20의 경우를 생각해보니
2 20
2 10
5 5
1
소인수 2에서 5로 증가하는 것은 2 + 5%2 이고 다른 경우에서도 성립할 것 같으니 소인수를
b += a %b라 하면 되겠다! 라고 생각하며 소인수의 증가를 확인할 printf와 함께 밑과 같이 수정하였지만
else {
b = b + a % b;
printf("\n b= %d \n", b);
}
94690의 소인수는 2, 5, 17, 557인데 이렇게 부정확하게 나오더라구요 ㅜㅜ
소인수를 하나하나 올려주자니 running time이 너무 길어지고, 다르게 표현하자니 정확한 표현 방법을 모르겠고 답이없는 상황이 되었습니다.ㅠ 그러나 몇십분동안 차근차근 생각해보니 소수는 2, 3에서만 1만큼 증가하고 3에서 5, 19에서 23과 같이 모두 2n(짝수)만큼 증가한다는 것을 깨달았습니다!!ㅋㅋㅋ 그래서 다음과 같이 코드를 수정하였습니다.
#include<stdio.h>
intmain(){
int a, b =2;
scanf("%d", &a);
while (a !=1){
if (a%b ==0){
printf("%d ", b);
a /= b;
}
else {
if (b ==2) b++;
elseif (b >2) b +=2;
}
}
return0;
}
과연 실행 결과는???
핰 통과!!! ㅋㅋㅋㅋ 그렇게 어려운 문제는 아니였지만 부족한 실력으로 열심히 생각해서 나온 결과라 정말 기쁘더군요 ㅋㅋㅋㅋㅋㅋㅋ하하핳하
1번을 풀면서 코드를 간단하게 짜는 것도 좋지만 running time 생각하면서 좀 더 직관적으로 짜는게 좋을 수도 있다는 것과 문제가 안풀리면 아주 기초적인 단계부터 하나하나씩 예시들을 써보면 도움이 된다는 것을 깨달았습니당.
안녕하세요! 누가 볼 사람도 없겠지만 첫 글이라 괜히 혼자 긴장되네요 ㅋㅋ 제가 첫 글로 소개할 내용은 윈도우 10에서의 가상 데스크탑 기능 ! 입니다.
어떤 분들은 가상데스크탑이 뭐지?하고 궁금해 하실 수 있는데요, 그런 분들을 위해 쉽게 설명해드리자면 가상 데스크탑이란 기존의 PC에 가상 모니터 세트단위를 추가해 주는 것입니다. 즉, 하나의 PC에 여러개의 모니터를 가진 듯한 기능을 준다는 것이죠. 가상 데스크탑 기능을 사용하면 하나의 화면에서 여러기능을 사용해 여러 페이지들을 왔다갔다 하는 것 보다 더욱 편리하게 사용할 수 있습니다!
원래 가상 데스크탑 기능은 리눅스의 우분투나 MAC pc에서만 가능했는데요, 이번 윈도우10 업데이트를 통해 드디어 윈도우에서 가능해졌습니다!
(Linux_Ubuntu 가상데스크탑)
(MAC 가상데스크탑)
(Windows10에서의 가상데스크탑)
저는 1번 데스크탑은 요즘 취미?로 공부하고 있는 Linux 우분투와 관련된 항목만을, 2번 데스크탑에는 블로그와 관련된 것들만 모아 사용하고있습니다. 직접 써보니 이것저것 얽혀있지 않아 참 편하네요 ㅋㅋ
그렇다면 이 편한 가상 데스크탑을 어떻게 사용하느냐??
다들 노트북에 window모양의 버튼이 있을겁니다.
"Control + Window 키 + D" = 새 가상 데스크탑 생성
"Control + Window 키 + F4" = 현재 사용중인 가상 데스크탑 닫기
"Control + Window 키 + → or ←" = 가상 데스크탑 이동
또는 "Tab + Window 키"를 누르셔서 사용해도 됩니다. 추가적으로는 현재 실행중인 프로그램은 드래그 앤 드랍으로 다른 데스크탑으로 추가 할 수 있습니다. 앞으로 더욱 편한 컴퓨터 생활 되시길 바랍니다~