창의적 정보공학 설계 수력 자동차목차 공통 조건 이론배경 설계의 주요 착안점 (1),(2),(3) 설계 구조도 결론 및 논의 참고 자료수력 자동차 – 공통 조건 자동차 높이는 50cm 이하 , 바퀴의 최대 폭은 5cm 이하 , 자동차 앞 , 뒤 바퀴 간격은 10cm 이하로 각각 제한 물의 량은 500ml 이하로 제한됨 . 낙하한 물은 자동차 밖으로 흘러 넘치지 않아야 함 .수력자동차 - 이론배경 수력이란 : 물이 가지고 있는 운동 에너지나 위치 에너지를 어떤 일에 이용하였을 때의 동력 . 물 수조에 물을 채워서 높은 곳에서 낮은 곳으로 흘리면 낙차의 힘으로 수차 [ 수력 터빈 ] 를 회전시킨다 . 수차 축에 바퀴 축을 연결하면 수차가 회전 하면서 바퀴를 함께 회전시킨다 .설계 주요 착안점 (1) 바퀴회전 자동차에 실려있는 물의 낙하를 이용하여 동력 발생해야 하므로 수력을 이용하여 회전시키는 물레바퀴 ( 수차 ) 를 각각의 바퀴와 연결시켜 회전시킨다 . 물레바퀴의 모습설계의 주요 착안점 (2) 물을 낙하시키는 방법 물 수조를 페트병으로 사용하도록 한다 . 물을 낙하시켜야 하므로 페트병을 자동차 본체의 위에 위치시킨다 . 굵은 철사를 사용하여 연결 . 물이 빠져 나올 구멍을 앞 바퀴와 뒷바퀴 부분에 맞춰 뚫어준다 .설계의 주요 착안점 (3) 지속적인 회전을 위해 낙하한 물을 다시 순환 시킬 방법을 옆의 그림과 같이 설계 . 그러나 실제적으로 적용할 수 있는 방법이 아님 . 순환 방법 그림 순환방법설계 구조도 바퀴 사이즈와 같은 지름 5cm 물레바퀴 물레바퀴 크기설계구조도 바퀴 연결 부위로 부터 35cm 물 수조 ( 페트병 ) 의 높이 높이 측정설계 구조도 ( 완성 모습 )결과 및 논의 페트병의 물이 떨어지면서 물레바퀴를 회전시키고 그로 인해 자동차의 바퀴도 함께 움직여 결과적으로 자동차는 앞으로 전진할 수 있었다 . 생각보다 먼 거리를 이동할 수 없었으나 물의 순환적인 문제만 해결한다면 지금보다는 훨씬 더 많은 거리를 움직일 것이다 .참고 문헌 생활 속의 물리 이야기 김상수 ( 자작 B B,1999) 재미있는 생활 속의 물리이야기 김상수 ( 간디 서원출판사 ){nameOfApplication=Show}
문제(8)의 pivot은 퀵소트가 왼쪽 부분 집합에는 기준 값보다 작은 원소들을 이동시키고, 오른쪽 부분집합에는 기준 값보다 큰 원소들을 이동시키므로 기준 값 pivot은 전체 원소 중에서 가운데(n/2)에 위치한 원소를 선택한다. 문제(9) 먼저 100개의 데이터만 놓고 비교해 볼 때 랜덤한 경우 버블소트가 퀵소트보다 시간이 오래 걸렸다. 1000개의 데이터 비교 시 랜덤한 경우, 순방향인 경우, 역방향인 경우 모두 퀵소트가 버블소트 보다 빨랐다. 2000개일 경우도 랜덤한 경우, 순방향인 경우, 역방향인 경우 모두 퀵소트가 버블소트 보다 빨랐다. #ifndef NODE_LIST_H#define NODE_LIST_H#include "InvalidPositionException.h"#include "EmptyContainerException.h"#include "BoundaryViolationException.h"template<typename Object>class NodeList{protected:struct Node{//NodeList에 있는 노드Object element;//원소Node* prev;//앞 노드Node* next;//뒷 노드Node(const Object& e=Object(), Node* p=NULL, Noelement(e),prev(p),next(n){}//생성자};typedef Node* NodePtr;//Node에의 포인터public:class Position{//NodeList의 위치private:NodePtr node; //노드에 대한 포인터public:Position(NodePtr n=NULL)//생성자{node=n;}Object& element() const //원소반환throw(InvalidPositionException){if(node==NULL) throw InvalidPositionException("Null position");return node->element;}bool isNull() const//설 위치인가?{return node==NULL;}//friend class NodeList<Object>;//접근허용};
구현대상 정하기선풍기구현할 사항 키보드를 누를 시 선풍기의 변화( 회전, 확대, 선풍기 작동 등)키보드 누를 시s를 첫번째 누르면 선풍기 작동 (start)s를 두 번째 누르면 선풍기 회전s를 세 번째 누르면 선풍기 회전 중지1, 2, 3 누르면 팬의 회전 속도 조절 x, y, z 누르면 x축 y축 z축으로 이동+ - 로 선풍기 모습 확대 축소미니 프로젝트를 마치며아쉬운 점텍스트 매핑을 구현하지 못해서 아쉬웠다.잘한 점선풍기의 동작을 자세히 잘 표현 하였다.속도 조절과 회전이 실감났다.느낀점이번 미니 프로젝트를 구현 하면서 조금씩 배워나가는 것이 뿌듯했다.