묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결선형대수학개론
3.2 example 1. det(A)구할때
det A 구할때 echelon form 구할때 row 3에서 -6 2를 -3 1로 약분해야 되는것 아닌가요? 약분하면 안된다면 왜 안될까요?
-
해결됨실전! Querydsl
[수정, 삭제 벌크연산] subtract 메서드
안녕하세요 .강사님 작은 부분이지만, 다른 분들도 아시면 좋을 것 같아서 조심스럽게 적어 봅니다. [수정, 삭제 벌크연산] 강의 중 더하기는 add(1), 빼기는 add(-1)하면 된다고 알려주셨는데, 또한 subtract란 메서드로도 뺄셈 연산이 가능하여 전달 드립니다. 항상 좋은 강의 감사드립니다 ^^! 많은 도움 받고 있습니다. @Testpublic void bulkAdd(){ long count = queryFactory .update(member) .set(member.age, member.age.add(1)) .execute();}@Testpublic void bulkSubtract(){ long count = queryFactory .update(member) .set(member.age, member.age.subtract(1)) .execute(); }
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
로그아웃 기능 테스트
화면에선 "로그인 후 이를 이용해 로그아웃해 보면...." 이라고 하셨는데 실제 Postman 설정을 어떻게 해야 로그아웃 테스트를 할 수 있나요?
-
미해결쉽게 따라하는 SketchUp Pro 2019 (한국어판)
5번째 강의 오류 [편집도구]
스마트폰으로 보고있습니다. 그 앞 강의들은 다 괜찮았는데 그 강의만 슬로우모션한 것처럼 들립니다. 속도조절 버튼이 있길래 2배속 빠르게 설정해 보았으나 별 다를게 없었습니다. 어떻게 된 건가요? 저만 이런건가요?
-
미해결R로 하는 웹 크롤링 - 입문편
네이버 실시간 검색어 크롤링 질문드립니다.
네이버 메인에서 페이지 소스 보기를 해도 이제 더이상 실시간 검색어가 찾아지질 않습니다. 이 경우에 어떻게 크롤링해야 하는지 궁금합니다. 두번째 질문은 네이버 데이터랩 자료를 크롤링하려고 하는데, 자꾸 불완전한 마지막 행이 발견되었다는 에러메시지가 뜹니다. 소스 코드로는 url<-"https://datalab.naver.com/keyword/realtimeList.naver?where=main" b<-readLines(url,encoding="UTF-8") 를 입력하였는데, 이 경우 b의 값이 제가 아는 페이지 소스값과 너무 다르게 나와서 혼란스러운데 이 경우 데이터랩의 자료를 어떻게 가져와야 하나요?
-
미해결제발 도커 씁시다!
Security Warning이 뜨는데 패스하고 넘어가도 될까요?
SECURITY WARNING: You are building a Docker image from Windows against a non-Windows Docker host. All files and directories added to build context will have '-rwxr-xr-x' permissions. It is recommended to double check and reset permissions for sensitive files and directories. docker build시에 뜨는 경고문인데 그냥 넘어가도 될까요?
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
36번 다소 헷갈려서 질문을 드립니다.
for(j = i-1; j>=0; j--){ // 1 if(a[j]>tmp) a[j+1] = a[j]; else break; } a[j+1]=tmp; // 2 처음 for문이 시행될 때에 j는 i가 1이기 때문에, j는 0으로 초기화가 된 상태에서 for문 안에 있는 일련의 if문을 거치고 난 뒤에 j--에 의해 j가 -1로 바뀐 상황에서, 이미 j>=0이라는 컨디션에 해당안하기에 바로 a[0]=tmp; 가 된다고 이해하였습니다. 이게 다른건 몰라도 삽입은 할 때마다 이상하게 상기 ㅈ주석으로 표시한 2코드의 의미가 이해가 안된다기보다는 오히려 확 와닿지를 않는다고 표현하는게 더 적절하네요ㅜㅜㅜ 그렇다면 for문 대신 while(j>=0&&a[j]>tmp){ if(a[j]>tmp){a[j+1] = a[j];} else break; j--; } a[j+1]=tmp; } 라고 표현해도 괜찮을까요? 늘 감사드립니다.
-
해결됨프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
= 와 ==의 차이
is(=)는 변수가 같은 Object(객체)를 가리키면 True, ==는 변수가 같은 Value(값)을 가지면 True로 알고 있습니다. 그런데 코딩을 하면 할 수록 둘의 차이가 계속 헛갈립니다. 이번 강의에서는 a = 'Park', if a == 'Kim' 으로 표현하셨는데 두 번째에 왜 ==가 오는 지 잘 모르겠습니다.
-
미해결영리한 프로그래밍을 위한 알고리즘 강좌
pdf에 있는 Excercise 답은 없나요?
답과 해설이 있으면 더 좋을것같은데요...
-
해결됨프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
예외와 에러의 차이
강의 설명에서 예외와 에러를 혼동해서 사용하시는 것 같아요. "둘을 나누어 보기보다, 의도한대로 작동하지 않으면 예외로 생각하자"고 하셨는데, 강의의 설명에서 '에러'로 말씀하신걸 "예외'로 생각해도 될까요?
-
미해결초간단 초스피드 데이터 수집 (파이썬 크롤링)
chromedriver 라이브러리
프로젝트 왼쪽에 나온것처럼 chromedriver 추가하려면 어떻게 해야하나요?? 드라이버 설치하고 경로를 바탕화면으로 설정한 다음에 webdriver.Chrome('설치경로')로 했는데도 왼쪽에 추가가 안 됩니다 ㅠㅠ
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
35번 궁금합니다.
선생님, 선생님의 코드에 비해 저의 코드에 어떠한 불필요한 과정이 있는지 알려주시면 대단히 감사하겠씁니다. 많이 까주세요. 감사합니다. #include<iostream> #include<vector> using namespace std; void swap(int* a, int* b) { int tmp; tmp = *a; *a = *b; *b = tmp; } int main() { int N; int negative = 0; //입력받은 음수의 개수 int start = 0; //음수가 맨 앞으로 도달하면 그 다음으로 인덱스를 설정 int positive = 0; //양수의 시발점을 표현하기 위한 인덱스 cin >> N; vector<int>index(N); vector<int>arr(N); for (int i = 0; i < N; i++) { index[i] = i; } for (int i = 0; i < N; i++) { cin >> arr[i]; if (arr[i] < 0) { negative++; } } for (int i = 0; i < N; i++) { if (start == negative) { break; } if (arr[i] < 0) { swap(&arr[start], &arr[i]); swap(&index[start], &index[i]); start++; } } for (int i = 0; i < N; i++) { if (arr[i] < 0) { positive++; } } for (int i = positive; i < N; i++) { int min = index[i]; for (int j = i + 1; j < N; j++) { if (min > index[j]) { swap(&index[i], &index[j]); swap(&arr[i], &arr[j]); } } } for (int i = 0; i < N; i++) { printf("%d ", arr[i]); } }
-
미해결Node.js - Express
이메일 입력하면 제출이 안됩니다..
var http = require('http'); var fs = require('fs'); var url = require('url'); var qs = require('querystring'); var template = require('./lib/template.js'); var path = require('path'); var sanitizeHtml = require('sanitize-html'); var app = http.createServer(function(request,response){ var _url = request.url; var queryData = url.parse(_url, true).query; var pathname = url.parse(_url, true).pathname; if(pathname === '/'){ if(queryData.id === undefined){ fs.readdir('./data', function(error, filelist){ var title = 'Welcome'; var description = 'Hello, Node.js'; var list = template.list(filelist); var html = template.HTML(title, list, `<h2>${title}</h2>${description}`, `<a href="/create">create</a>` ); response.writeHead(200); response.end(html); }); } else { fs.readdir('./data', function(error, filelist){ var filteredId = path.parse(queryData.id).base; fs.readFile(`data/${filteredId}`, 'utf8', function(err, description){ var title = queryData.id; var sanitizedTitle = sanitizeHtml(title); var sanitizedDescription = sanitizeHtml(description, { allowedTags:['h1'] }); var list = template.list(filelist); var html = template.HTML(sanitizedTitle, list, `<h2>${sanitizedTitle}</h2>${sanitizedDescription}`, ` <a href="/create">create</a> <a href="/update?id=${sanitizedTitle}">update</a> <form action="delete_process" method="post"> <input type="hidden" name="id" value="${sanitizedTitle}"> <input type="submit" value="delete"> </form>` ); response.writeHead(200); response.end(html); }); }); } } else if(pathname === '/create'){ fs.readdir('./data', function(error, filelist){ var title = 'WEB - create'; var list = template.list(filelist); var html = template.HTML(title, list, ` <form action="/create_process" method="post"> <p><input type="text" name="title" placeholder="title"></p> <p> <textarea name="description" placeholder="description"></textarea> </p> <p> <input type="submit"> </p> </form> `, ''); response.writeHead(200); response.end(html); }); } else if(pathname === '/create_process'){ var body = ''; request.on('data', function(data){ body = body + data; }); request.on('end', function(){ var post = qs.parse(body); var title = post.title; var description = post.description; fs.writeFile(`data/${title}`, description, 'utf8', function(err){ response.writeHead(302, {Location: `/?id=${title}`}); response.end(); }) }); } else if(pathname === '/update'){ fs.readdir('./data', function(error, filelist){ var filteredId = path.parse(queryData.id).base; fs.readFile(`data/${filteredId}`, 'utf8', function(err, description){ var title = queryData.id; var list = template.list(filelist); var html = template.HTML(title, list, ` <form action="/update_process" method="post"> <input type="hidden" name="id" value="${title}"> <p><input type="text" name="title" placeholder="title" value="${title}"></p> <p> <textarea name="description" placeholder="description">${description}</textarea> </p> <p> <input type="submit"> </p> </form> `, `<a href="/create">create</a> <a href="/update?id=${title}">update</a>` ); response.writeHead(200); response.end(html); }); }); } else if(pathname === '/update_process'){ var body = ''; request.on('data', function(data){ body = body + data; }); request.on('end', function(){ var post = qs.parse(body); var id = post.id; var title = post.title; var description = post.description; fs.rename(`data/${id}`, `data/${title}`, function(error){ fs.writeFile(`data/${title}`, description, 'utf8', function(err){ response.writeHead(302, {Location: `/?id=${title}`}); response.end(); }) }); }); } else if(pathname === '/delete_process'){ var body = ''; request.on('data', function(data){ body = body + data; }); request.on('end', function(){ var post = qs.parse(body); var id = post.id; var filteredId = path.parse(id).base; fs.unlink(`data/${filteredId}`, function(error){ response.writeHead(302, {Location: `/`}); response.end(); }) }); // 로그인 } else if (pathname === '/login'){ fs.readdir('./data', function(error, filelist){ var title = 'Login'; var list = template.list(filelist); var html = template.HTML(title, list, ` <from action="login_process" method="post"> <p><input type="text" name="email" placeholder="email"></p> <p><input type="password" name="password" placeholder="password"></p> <p><input type="submit"></p> </from>`, `<a href="/create">create</a>` ); response.writeHead(200); response.end(html); }); // 로그인 받기 }else if ( pathname ==='/login_process'){ var body = ''; request.on('data', function(data){ body = body + data; }); request.on('end', function(){ var post = qs.parse(body); if(post.email === 'fkxodbs@naver.com' && post.password ==='111111'){ response.writeHead(302, { 'Set-Cookie' : [ `email=${post.email}`, `password=${post.password}`, `nickname=egoing` ], Location: `/` }); response.end(); }else { response.end('who?'); } }); } else { response.writeHead(404); response.end('Not found'); } }); app.listen(3000); --------- var http = require('http'); var cookie = require('cookie'); http.createServer(function(request,respone){ console.log(request.headers.cookie) var cookies = {} if(request.headers.cookie !== undefined){ cookies = cookie.parse(request.headers.cookie) } console.log(cookies.yummy_cookie); console.log(request.headers.cookie); respone.writeHead(200, { 'Set-Cookie' : [ 'yummy_cookie=choco', 'tasty_cookie=strawberry', `Permanent=cookies; Max-Age=${60*60*24*30}`, // Max-Age= 현재 시점을 기준으로 얼마나 살아있을까 정한다 'Secure=Secure; Secure', 'HttpOnly=HttpOnly; HttpOnly', 'Path=Path; Path=/cookie', 'Domain-Domain; Domain=02.org' ] }) respone.end('cookie!!') }).listen(3000);
-
미해결홍정모의 따라하며 배우는 C++
유투브로 수강하다 이제 인프런으로 건너왔습니다.
교수님의 유투브 [따배씨++]로 공부하다 인프런으로 건너왔습니다. 4.10 구조체 Structure까지 공부했습니다. * 저는 1987년부터 7년간 대한항공 시스템부에서 IBM Macro Assemble어로 프로그래밍, 설계, PM을 했고 PC가 처음 나왔을 때, Turbor-C와 DBase IV를 이용해 Mainframe-PC Interface Program을 1년간 했었습니다 이제 나이 많이 먹었지만, C++을 도전하고 싶습니다. 나이들어도 프로그래머가 되고 싶다는 젊은 시절의 꿈을 이루고 싶습니다. 다음은 파이선도 해보고 싶구요. 어셈블러->C->C++->Python 으로 이어지는 같은 계열의 프로그래밍으로 이어가고 싶군요. 앞으로 많은 가르침 받겠습니다.
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
NameError와 AttributeError의 차이
예컨대 python이 print(time.time())에서 time이 변수인지, 모듈/클래스에 있는 속성인지 어떻게 알 수 있는지 궁금합니다. 구글링 결과, <변수에 바로 접근할 때 오류가 있으면 이름 오류가 발생하고, 마침표(.)를 찍고 그 인스턴스의 속성에 접근할 때 오류가 있으면 속성 오류가 발생합니다.> 라는 설명이 있어 실험적으로 print(a.a())라 적었는데 NameError가 뜨네요. (time도 변수라 생각하면 a도 변수라 생각했습니다.) 두 개를 나누는 기준 혹은 어떤 걸 속성으로 인지하고 어떤 걸 변수로 인지하는지 궁금합니다.
-
미해결스케치 뚝딱 끝내기! 입문자용 무료 강좌
아트보드 질문드립니다!
제가 아트보드를 만들게 되면 일반적인 흰색의 사각형이 나옵니다. 그런데 강의영상을 보면 아이폰 아트보드가 노치디자인으로 구성되어있는 것으로 보이는데요. 이 노치디자인은 강사님께서 직접 만드신건가요??
-
미해결공공데이터로 파이썬 데이터 분석 시작하기
seaborn.barplot 결과 화면에서 남는 bar가 한개 있습니다..
안녕하세요! 강의를 완강하고 개인프로젝트로 데이터분석 연습하고 있는 학생입니다. 다름이 아니라 개인 프로젝트 도중에 궁금한 점이 생겨서 질문드립니다!. 그림 처럼 seaborn 의 barplot을 이용했습니다. 그런데 출력화면에서 가장 맨 오른쪽에 x축 이름이 없는 바가 한개 추가되있습니다... 이게 어떤 의미인가요..? 아래 isnull() 부분 보시면 결측치도 하나도 없습니다... 맨 오른쪽의 하나 막대기는 대체 뭘 의미하는 건가요...? 그리고 비만정도를 제가 bmi값으로 분류했는데 비만정도에 입력이 안된 값을 찾아보려고 pandas.options.display.max_rows = 1400 개 (전체 행이 1339개 됩니다) 출력해서 일일이 다 확인했는데 비만정도에 빈칸이나 NaN값이 들어간 행은 절!대! 없습니다..
-
해결됨스프링과 JPA 기반 웹 애플리케이션 개발
영상 [13: 02초] 오타가 있습니다!
질문게시판에 작성해서 죄송합니다. SignUpForm 타입으로 캐스팅하려는 객체가 errors 가 아니라 object여야 하는데 영상에선 errors로 되어있습니다.
-
미해결대세는 쿠버네티스 (초급~중급편)
helm chart에 관련해서
helm chart에 대해서도 강의를 하실 계획이 있으신가요?? 강의를 들으며 구글링하다보면 helm chart라는 걸 써서 자원들을 묶어 하나의 패키지로 해준다는데.. 실무에서 필수라면 꼭 알고싶어요..ㅎㅎ
-
미해결Flutter 입문 확장판 - 인스타그램 클론 2.0
flutter bloc패턴이나 디자인 패턴관련해서 강의계획 혹시 있으세요?
flutter bloc, stream 패턴 관련된 강의계획 있으신지 궁금합니다'-'ㅎ