• 전문가 요청 쿠폰 이벤트
*윤*
Bronze개인
팔로워0 팔로우
소개
등록된 소개글이 없습니다.
전문분야 등록된 전문분야가 없습니다.
판매자 정보
학교정보
입력된 정보가 없습니다.
직장정보
입력된 정보가 없습니다.
자격증
  • 입력된 정보가 없습니다.
판매지수
전체자료 7
검색어 입력폼
  • 공학기술프로그래밍 언어론 8장~10장 연습문제풀이
    ? 8 - 3표 1. 정적체인과 디스플레이 기법 비교정적 체인디스플레이지역접근활성 레코드안에서 바로 찾는다디스플레이 가변배열에서 해당 위치를 찾는다비지역접근호출 순서를 역순으로 하여 스택에서의 정적링크를 따라 변수를 참조한다.복귀호출된 정적링크를 따라 복귀한다디스플레이 가변배열로 복귀한다.효율성비지역 변수의 접근에 대해선 활성레코드간의 간격이 넓으면 참조 시간이 길어지는 단점이 있다.활성레코드가 변할때마다 가변배열을 수정해야 하지만 비지역변수의 참조가 빨라 정적체인보다 효율성이 좋다.? 8 - 4동적정적동적· ① A → D → B → C → B → C②C의 활성레코드B의 활성레코드C의 활성레코드B의 활성레코드D의 활성레코드A의 활성레코드③C의 활성레코드B의 활성레코드C의 활성레코드B의 활성레코드D의 활성레코드A의 활성레코드? 8 - 7장점: 프로그램 실행중에 자료들의 변화에 맞추어 크기를 조절할 수 있다. 또한, 실행문으로 자료구조를 생성/확장 할 수 있다.단점: 동적 생성 자료를 회수시키지 않을 경우 힙에 대한 공간을 계속 유지한다.표 2. 기억장소 배당/회수 알고리즘기억장소 배당기억장소 회수Pascal, C++, Java : new 명령C : calloc, malloc 명령예) Pascal: new(p) - p라는 동적 포인터생성C: p=malloc(size*sizeof(int)) - p라는 이름을 가진 size만큼의 int형 배열 선언delete / free 명령delete(p) , free(p) : heap에서 p가 차지한 기억장소 공간이 회수됨? 8 - 9실행순서: BIGSUB → A → B → A → C → D정적체인동적체인D의 활성레코드C의 활성레코드A의 활성레코드B의 활성레코드A의 활성레코드BIGSUB의 활성레코드? 8 - 11실행순서: act(program) → q → r → p → p동적체인정적체인p의 활성레코드p의 활성레코드r의 활성레코드q의 활성레코드act의 활성레코드표 3. 정적링크와 동적링크 호출 비교첫 번째 호출 P두 번째 호출 Pwriteln(r)writeln(x)writeln(r)writeln(x)동적 링크시p의 ract의 xp의 ract의 r정적 링크시p의 rq의 xp의 rq의 x? 9 - 1표 1. 매개변수 전달기법의 장단점장 점단 점참조전달따로 변수선언이 필요없기 때문에 매개변수의 기억공간내 크기도 작음callee에서 형식 매개변수의 값 변화를 통해 caller의 원치 않던 실 매개변수의 값 변화가 생길 수 있음값 전달실매개변수의 값이 변하지 않기 때문에 모듈간의 coupling을 적게 함형식 매개변수에 대한 기억장소가 추가로 요구이름 전달형식매개변수가 사용될 때마다 값을 원하면 대응되는 실 매개변수의 값을, 위치가 필요하면 대응되는 위치를 구하여 사용가능필요한 l-value, r-value를 매번 계산함으로써 구현 및 프로그램 판독성이 난해값-결과 전달형식 매개변수의 값을 대응되는 실매개변수에 복사함으로써 실 매개변수의 값 변화가 가능(다른 변화엔 구애받지 않음)형식 매개변수에 대한 기억장소가 추가로 요구? 9 - 6begin integer l; integer array A[1:2];procedure F(X,Y); integer X,Y;begin X:=X+1;Y:=Y+1;print(X,Y); ⇒ ①,③X:=X-1;Y:=Y-1;end F;l:=1;A[1]:=5;A[2]:=10;F(l, A[l]);print(l, A[1], A[2]); ⇒ ②F(A[l], l);print(l, A[1], A[2]); ⇒ ④end(1) X와 Y가 값 전달① 2, 6 ② 1, 5, 10 ③ 6, 2 ④ 1, 5, 10(2) X는 참조전달, Y는 이름전달① 2, 11 ② 1, 4, 11 ③ 5, 2④ 1, 4, 11(3) X는 이름전달, Y는 참조전달① 2, 6 ② 1, 5, 10③ 10 ,2④ 1, 5, 9(4) X와 Y가 이름전달① 2, 11② 1, 4, 11③ 11, 2④ 1, 5, 10? 9 - 7(1) 값에 의한 호출(call by value)① 2, 1② 1(2) 참조에 의한 호출(call be reference)① 2, 2② 2(3) 값-결과에 의한 호출(call be value-result)① 2, 1② 2begin integer a ;procedure P(b) ;beginb:=b+1;print(b, a); ⇒ ①enda:=1 ;P(a) ;print(a); ⇒ ②end? 9 - 8begin interger A, B ;procedure F(X, Y, Z): interger X, Y, Z;begin Y:=Y+1 ;Z:=Z+1 ;end F;A:=2;B:=3;F(A+B, A, A) ;print A;⇒ ①end(1) 값 전달① 2(2) 이름전달① 9(3) 참조전달① 8? 9 - 11void main(){int value = 2, list[5]={1, 3, 5, 7, 9};swap(value, list[0]);swap(list[0], list[1]);swap(value, list[value]);}void swap(int a, int b){int temp;temp = a;a = b;b = temp;}전달법변수1st swap2nd swap3rd swap값value222list[5]1,3,5,7,91,3,5,7,91,3,5,7,9참조value112list[5]2,3,5,7,93,2,5,7,93,1,5,7,9이름value112list[5]2,3,5,7,93,2,5,7,93,2,1,7,9값-결과value112list[5]2,3,5,7,93,2,5,7,93,1,5,7,9? 10 - 2C++이나 Java의 추상자료형은 Class는 자료형(type)인데 비해 Ada의 추상자료형은 Package는 자료형이 아니다. 이는 주어진 패키지에서 정의된 자료형을 이용하여 한 단위 프로그램의 변수를 선언하기 위해서 이 프로그램으로 패키지나 모듈이 도입되어야 하지만 C++에서는 프로그램에서 변수를 바로 클래스형으로 선언할 수 있음을 의미한다.C++에서 행렬 덧셈/뺄셈/곱셈에 대한 추상화#include class matrix{private:int number; // 정사각형 행렬의 행의 수를 받아서 저장int **Matrix; // 배열이 저장될 위치 *Matrix를 가리키는 포인터public:matrix(){// 생성자함수int i;number=n; //number값에 행의 값 넘겨줌Matrix=new int *[n]; //n만큼의 행공간 생성for(i=0; i
    공학/기술| 2007.06.06| 7페이지| 1,500원| 조회(1,268)
    미리보기
  • [C++] 선형대수학, 이산수학, 가우스 소거법(Gauss-Jordan) & 역행렬 구하는 프로그램
    Gauss-Jordan Elimination을 이용하여 행렬을 푸는 프로그램입니다.C++로 제작되었으며 matrix.h, matrix.cpp, matrix_fc.cpp로 구성되어 있습니다.matirx.h: 헤더 파일matrix.cpp: 사용자 입력을 받는 메인 파일matrix_fc.cpp: 실제 계산을 구현하는 함수 파일
    프로그램소스| 2007.09.19| 1,000원| 조회(2,716)
    미리보기
  • [공학기술]프로그래밍 언어론 1장~7장 주요 연습문제풀이-원유헌 저 평가A+최고예요
    프로그래밍 언어론 주요 연습문제(1~7장)1.3.단일 언어의 사용은 일단, 모든 프로그래머가 같은 언어를 공부하고 개발시키기 때문에 언어에 관심 있는 사람이라면 부가적인 설명 없이도 상호간의 원활한 의사소통이 가능하게 된다. 프로그래밍의 실력이 비슷한 A라는 사람이 자신의 프로그램을 B라는 사람에게 넘겨줄 경우 별다른 설명 없이도 B라는 사람은 쉽게 이해하고 조언을 해주거나 응용하여 사용할 수 있다. 다수의 언어를 알 필요가 없어서, 그 언어를 더욱 더 깊게 공부하게 되고 프로그래머들이 원하는 방향으로 언어는 계속 변형/발전 될 것이다.1.4.현재 프로그래밍은 여러 분야에 걸쳐 널리 쓰이고 있다. 이런 시대의 다양한 요구에 단일언어가 부합되기는 현실적으로 힘들다. 다양한 알고리즘 표현과 응용에 제약이 없이 이루어져야 하는데, 이를 단일 언어로 표현하려면 그 언어는 비대해지고 복잡해질 것이다. 목적에 맞게 개발된 다양한 언어들중에 잘 부합되는 언어를 택하여 그 언어로 프로그래밍을 하는것이 좀 더 현실적이다.1.5.프로그래머는 설계자가 구현해놓은 프로그래밍 언어를 실제로 사용하는 사용자다. 설계자가 정해놓은 문법에 맞추어 프로그래머가 언어를 통해 목적이 되는 프로그램을 구현한다. 대부분 프로그램에서 입력 자료 언어는 단순하지만 대형 프로그램일 경우 선언부, 문장, 식등을 갖추어 실제 프로그래밍 언어와 유사한 형태로 되어 있다. 프로그래머가 구현하는 기술 외에도 이렇게 설계할 수 있는 개념을 알아두면, 이러한 입력자료 언어를 적절하게 설계할 수 있는 능력을 보유하게 된다. 그리고 더 나아가, 다른 언어의 설계들도 살펴보고 필요시 그 언어에 대한 사용능력도 쉽게 갖출 수 있게 된다.1.6.전산학이란 컴퓨터 개발과 응용을 연구하는 학문으로, 수학, 논리학, 언어분석, 프로그램 작성, 컴퓨터설계 등을 기반으로 발전해 왔다. 우리가 다루는 프로그램 언어의 특성은 이렇게 전산학의 기반이 되는 모든 분야에 밀접한 관련되어 있다. 예로 프로그램의 형식을 결정하는 문법에는 논리학 난립을 막기 위해 저작권을 등록하였다. 후에 GW-BASIC에서 QBASIC, QUICKBASIC, VisualBasic 등의 형태로 발전하였다.2.10PL/I은 "Programming Language 1"의 약자이다. PL/I[피엘 원]은 어셈블러 언어와 COBOL 및 FORTRAN의 대안으로서 1960년대 초에 개발된 3세대 프로그래밍 언어이다.PL/I은 C 프로그래밍 언어보다 선행된 언어였지만, 이제는 범용 프로그래밍 언어로서의 자리를 C에게 내주었다. PL/S는 IBM이 PL/I으로부터 진화시킨 언어로서, C가 나오기 이전까지는 IBM이 운영체계나 응용프로그램 개발용으로 주로 선택하던 언어였다.PL/I이 설계된 새로운 컴퓨터 계열은 IBM360 시리즈이다2.11Simula 67은 1960년대 초 고안된 simula을 기본으로 하여 Algol60을 포함시킨 언어이다. 시뮬레이션을 위해 디자인 되었으나 객체지향의 개념을 정립한 클래스 개념을 도입하였다. 클래스의 특징은 크게 3가지로 나눌 수 있는데, 1.캡슐화(외부로 알릴 필요가 없는 자료들을 클래스 내부에서 감춤), 2.다형성(클래스 외부에서는 하나의 작업으로 생각하게 되고, 내부에서는 각기 다른방법으로 구현되는 점), 3.상속성(클래스가 멤버 함수나 변수의 특성을 가지고 자식 클래스를 만들 수 있는 점)등이 있다.2.12파스칼은 Algol을 모체로 개발하였기 때문에 불록 구조와 유용성이 큰 제어문 등의 기능을 도입하고 자료의 구조화와 입출력 기능을 보완하였다. 또한 데이터를 구성할 때 데이터의 길이에 제약받지 않고 다양한 데이터 형식과 제어 구조를 사용할 수 있으며 복합문 BEGIN END나 조건문 IF THEN ELSE, 반복문 WHILE DO와 같은 제어 구조를 가지고 있으므로 구조적 프로그램의 개념과 원리를 쉽게 적용할 수 있다.데이터 구조에는 정수형, 실수형, 문자형, 논리형과 같은 단순형 외에 배열형, 레코드형,세트형, 파일형 등 다른 형을 구성요소로 하는 구조형, 거기에 동적 변수를 가리키James Gosling)팀에서 케이블 TV 스위치 박스 같은 가전 제품에 이용되는 간단한 컴퓨터언어를 설계하는데서 출발한다. "Green"이란 코드명을 가진 이 프로젝트는 간단하면서, 견고한 코드를 생성하고, 제조회사들이 선택하는 중앙처리장치(CPU)에 상관없이 돌아가는 언어를 설계하는 것이다.2.20① 높은 신뢰성자바는 컴파일 시에 에러 검사를 철저하게 하고, 실행 시에 발생할 수 있는 에러에 대해서도 실행 시에 철저하게 검사를 수행함으로써 신뢰도가 높은 프로그램을 작성할 수 있도록 해 준다. 또한, C/C++ 프로그램 개발자들을 가장 혼란스럽게 하고, 프로그램의 치명적인 오류를 발생시킬 수 있는 포인터 및 포인터 연산을 자바에서는 사용하지 않게 함으로써, 포인터를 사용함으로써 프로그래머가 범할 수 있는 오류를 없앴다는 것이다.② 보안성: 보안성을 갖는다자바는 분산환경에서 작동하도록 설계되었다. 그리고, 자바는 자바 언어와 자바 런타임 시스템 내에 보안 기능이 내재되어 있기 때문에 보안성이 있는 프로그램을 개발할 수 있도록 해 준다. 이러한 특성은 자바 프로그램이 네트웍 환경에서 바이러스2.22명령형 특징들이 포함된 이유는 다양한 함수를 어셈블리 언어로 컴파일링할 수 있고 이를 LISP 환경으로 이식하기 위한 서브루틴을 만들기 시작함으로써 읽기와 프린트리스트 구조를 포함할수 있기 때문이다. LISP는 초기(1950대)에는 리스트 구조와 함수적용을 기반으로 하였으나 근래에 와서는 인공지능분야에서 사용되고 있다. 인공지능 분야를 연구하는데 많이 사용되며, 다음과 같은 특징을 갖는다. 첫째, 프로그램과 자료를 동일한 형태로 취급하며, 그들의 변형을 허용한다. 둘째, 제어 구조는 되부름에 의존한다. 셋째, 기본 자료 구조로서 연계 리스트를 사용한다. 이 언어는 일반적으로 인터프리터 형태로 구현되며, 프로그램이 시행되기 전에 모든 프로그램을 기계어로 번역하지 않는 대신에 각 명령문을 읽어서 다음 명령문이 입력되기 전에 현재의 명령문을 처리하게 된다. 따라서 이 언어을 제공한다.6. 디스플레이 터미널(video display terminal):화면을 이용하여 정보를 영상으로 출력하는 장치로 보통 모니터를 의미한다. 초기 CRT방식이 여기에 해당하며, GUI의 탄생을 가져오게 되었다. 이로서 java등의 그래픽 인터페이스를 지향하는 프로그래밍 언어들이 생겨나게 되었다.3.1.1. 효율성(efficiency): Pascal에서 모든 변수들이 사용되기 전에 선언되야 하기 때문에 번역의 효율성을 제공한다. 반면, Modula-2는 이러한 제약이 없어 컴파일러는 2단계 패스를 이용하여 식별자 참조를 해결한다.2. 표현력(expressiveness): 간결한 문맥과, 계산의 많은 부분이 실행시간 시스템에서 처리되도록 설계된 Lisp, Prolog가 여기에 속한다. 반면, PL/I같은 경우 복잡한 구조로 인하여 여기에 위배된다. 간결한 표현력을 가진 C도 여기에 해당될 수 있다.3. 유지 보수성(maintainability): 오류를 빠르게 찾아 해결할 수 있는 언어의 특성으로 java가 이를 반영한 좋은 예이다.4, 판독성(readability): Cobol의 경우 평범한 영어처럼 보이도록 노력함으로써 읽기 능력을 향상시키려 하였다. 반면, C에서의 pointer는 판독성을 어렵게한다.5. 안전성(security): Lisp와 Prolog가 복잡한 문제를 수행하는 프로그램을 시도할 때, 안전성을 위한 정적형 검사와 변수선언이 더 큰 복잡성을 야기한다. 이에 ML은 다중 형태의 객체를 허용하고 선언을 요구하지 않으면서 정적 형 검사를 하는, 안정성과 표현력을 가지는 좋은 예이다.6. 간결성(simplicity): Lisp와 Pascal은 간결한 문맥을 이루는 적은 구성자만을 갖고 있으며 Algol68과 PL/I등은 복잡한 언어 구조로 이에 위배된다.7. 작성력(writability): C언어 같은 경우 원하는 표현을 작성할 때, 다른언어에 비해 간결한 표현력을 이용하여 작성력을 높일 수 있다.8. 신뢰성(reliability): 신뢰bol4, APL, Prolog5.1식별자(identifier)란 변수의 이름, 함수 이름, 자료형 이름, 구조체나 공용체의 태그(tag)와 같은 것들을 말한다. 컴파일러는 개발자가 작성한 소스코드를 실행가능한 기계어로 변환(번역)합니다. 그럴려면, 소스코드를 모조리 분해/분석하기 위한 파싱(Parsing)기능을 수행합니다. 우리나라 말은 서술어가 맨 끝에 나오기 때문에 맨끝까지 주의깊게 들어야 말하는 사람의 의도를 알 수 있습니다. 마찬가지로 컴파일러도 소스코드를 파싱할 때, 소스코드의 의미나 의도를 분석하기 위해 복잡한 작업을 합니다. 그런데, 변수길이에 제한이 없으면 이 변수이름이 무엇인지 파악을 하기 어렵습니다. 일정한 길이의 규칙을 정해서 컴파일러가 편하게 번역할 수 있도록 하는것이 컴파일러 개발자에게 좋습니다. 또한, 변수를 숫자로 시작하면, 이 변수가 정말 변수인지 숫자인지 컴파일러가 구별하기 힘들어지고, 파싱이 너무 복잡해진다. 차라리, 규칙을 정해서 개발자가 주의하도록 하는 것이 노력이 덜 들기 때문이다.5.2(1) 실수의 자릿수: 구현시간실수의 자릿수는 컴퓨터에서 언어를 구현할 때 결정지어지는 특성중 하나이다.(2) 문자형의 의미: 번역시간번역시간에 바인딩 됨으로써 문자형이 실행시간에 취할 수 있는 값의 종류와 기억장소 크기등이 결정된다.(3) 배열 변수의 크기: 번역시간언어를 번역하는 시점인 번역시간에서 배열의 크기가 바인딩된다.(4) 배열 매개변수의 크기: 번역시간배열 변수의 크기와 마찬가지로 번역시간에서 바인딩된다.(5) 지역변수 영역: 실행시간, 정의시간지역변수가 유효한 영역의 범위는 정의시간에 결정이 되며, 이에 대한 기억장소의 할당은 실행시간에 이루어진다.(6) 상수의 값: 정의시간상수가 어떤 값을 의미한다는 것은 언어가 정의될 때 바인딩 된다.(7) 함수의 영역: 번역시간객체에 의하여 함수에 대해 필요로 하는 정보는 번역시간에 바인딩된다.5.4동적 자료형 바인딩의 장점은 객체지향 언어들은 실행 시 키보드 또는 기타 다른 소스로부터된다.
    공학/기술| 2007.05.09| 17페이지| 1,500원| 조회(2,485)
    미리보기
  • 프로그래밍 언어론(원유헌저) 연습문제 풀이 1~4장 평가A좋아요
    프로그래밍 언어 Chap.1 ~ Chap.4주요연습문제 풀이단일 언어의 사용은 일단, 모든 프로그래머가 같은 언어를 공부하고 개발시키기 때문에 언어에 관심 있는 사람이라면 부가적인 설명 없이도 상호간의 원활한 의사소통이 가능하게 된다. 프로그래밍의 실력이 비슷한 A라는 사람이 자신의 프로그램을 B라는 사람에게 넘겨줄 경우 별다른 설명 없이도 B라는 사람은 쉽게 이해하고 조언을 해주거나 응용하여 사용할 수 있다. 다수의 언어를 알 필요가 없어서, 그 언어를 더욱 더 깊게 공부하게 되고 프로그래머들이 원하는 방향으로 언어는 계속 변형/발전 될 것이다.Chap 1 - 1.3현재 프로그래밍은 여러 분야에 걸쳐 널리 쓰이고 있다. 이런 시대의 다양한 요구에 단일언어가 부합되기는 현실적으로 힘들다. 다양한 알고리즘 표현과 응용에 제약이 없이 이루어져야 하는데, 이를 단일 언어로 표현하려면 그 언어는 비대해지고 복잡해질 것이다. 목적에 맞게 개발된 다양한 언어들중에 잘 부합되는 언어를 택하여 그 언어로 프로그래밍을 하는것이 좀 더 현실적이다.Chap 1 - 1.4프로그래머는 설계자가 구현해놓은 프로그래밍 언어를 실제로 사용하는 사용자다. 설계자가 정해놓은 문법에 맞추어 프로그래머가 언어를 통해 목적이 되는 프로그램을 구현한다. 대부분 프로그램에서 입력 자료 언어는 단순하지만 대형 프로그램일 경우 선언부, 문장, 식등을 갖추어 실제 프로그래밍 언어와 유사한 형태로 되어 있다. 프로그래머가 구현하는 기술 외에도 이렇게 설계할 수 있는 개념을 알아두면, 이러한 입력자료 언어를 적절하게 설계할 수 있는 능력을 보유하게 된다. 그리고 더 나아가, 다른 언어의 설계들도 살펴보고 필요시 그 언어에 대한 사용능력도 쉽게 갖출 수 있게 된다.Chap 1 - 1.5전산학이란 컴퓨터 개발과 응용을 연구하는 학문으로, 수학, 논리학, 언어분석, 프로그램 작성, 컴퓨터설계 등을 기반으로 발전해 왔다. 우리가 다루는 프로그램 언어의 특성은 이렇게 전산학의 기반이 되는 모든 분야에 밀접한 관련되어 계산을 하기위해 시작된 컴퓨터 프로그램 언어이다. 포트란은 산술 기호(+, - 등)를 그대로 사용할 수 있으며, 삼각함수·지수함수·대수함수 등과 같은 기초적인 수학 함수들을 그대로 불러내어 쓸 수 있는 장점이 있다.Chap 2 - 2.2`Cobol은 COmmon Business Oriented Language의 약자로서, 사무 처리를 위해 고안된 컴퓨터 프로그램 언어이다. 미국 국방부를 중심으로 결성되었으며, CODASYL에 의해 1960년 처음 제정되었다. 과학 계산에 비해 사무 계산은 복잡한 여러 가지 기록철을 많이 취급하며, 보고서의 인쇄 양식도 다양해 데이터의 기록 양식을 정하는 부분이 프로그램에서는 중요한 역할을 차지한다. 코볼은 일상 영어회화와 비슷한 구어체 문장 형태로 기술할 수 있도록 설계되어 사용되고 있으며 1968년 미국에서 사무처리 언어의 표준이 되었다.Chap 2 - 2.3Lisp은 인공지능 소프트웨어를 만들기 위해 사용하는 프로그래밍 언어중 하나이다. 리스프처리언어라고도 부르며, 미국 매사추세츠공과대학(MIT)의 매카시(J.McCarthy) 교수 연구팀이 개발하여 1960년에 발표했다. 리스트(list:자료구조의 하나로 순서가 매겨진 0개 이상의 원소들의 집합) 형태로 된 데이터를 처리하도록 설계되었는데, 데이터와 프로그램이 모두 S-식(S-expression)이라고 하는 일반화된 리스트(generalized list) 형태로 기술되므로 프로그램이 데이터처럼 취급되는 것이 특징이다. 즉, 프로그램과 자료가 같은 형태이기 때문에 자료구조가 프로그램처럼 시행될 수 있으며, 프로그램이 자료처럼 연산될 수도 있고, 기본자료구조가 연결리스트(linked list)를 사용하여 일반적인 연산을 수행하기도 한다Chap 2 - 2.4BASIC(Beginner's All-purpose Symbolic Instruction Code)은 1964년경에 Dartmouth대학의 교수 John Kemeny와 Thomas Kurtz에 의해 만들어졌다. 자신들의 제. 한편, Kemeny와 Kurtz는 자신들이 만든 언어의 좋은 취지가 오용되고 타락하는 것을 막기 위해 1985년에 새로운 버전인 True BASIC을 발표하였으며, True BASIC는 서로 다른 버전의 난립을 막기 위해 저작권을 등록하였다. 후에 GW-BASIC에서 QBASIC, QUICKBASIC, VisualBasic 등의 형태로 발전하였다.Chap 2 - 2.9Simula 67은 1960년대 초 고안된 simula을 기본으로 하여 Algol60을 포함시킨 언어이다. 시뮬레이션을 위해 디자인 되었으나 객체지향의 개념을 정립한 클래스 개념을 도입하였다. 클래스의 특징은 크게 3가지로 나눌 수 있는데, 1.캡슐화(외부로 알릴 필요가 없는 자료들을 클래스 내부에서 감춤), 2.다형성(클래스 외부에서는 하나의 작업으로 생각하게 되고, 내부에서는 각기 다른방법으로 구현되는 점), 3.상속성(클래스가 멤버 함수나 변수의 특성을 가지고 자식 클래스를 만들 수 있는 점)등이 있다.Chap 2 - 2.11Pascal에선 프로그램이 block이라는 모듈단위로 구성이 되는, block structure를 갖는다. 이러한 구조개념이 Pascal에선 프로시져에 적용이 되나, C에서는 function내에서만 사용을 한다. 이는, 개념적으로 Pascal이 프로시져가 자신의 내부에 선언된 프로시져만을 사용하므로 연속된 block의 체계를 갖지만 C는 함수의 사용에 제약을 받지 않으므로 함수들이 연속된 block의 체계를 갖지 않게 된다.다른 특성은 Pascal에서의 문법이 더 엄격하다는 점이다. C가 임의의 데이터형을 혼용할 수 있게 함으로써, 문자와 정수간의 차이가 나타나지 않는다. 이는 컴파일시 문법이 명확한 Pascal의 에러발견이 쉽다는 것을 의미한다. 하지만 유연성은 C에 비해 부족하다.Chap 2 - 2.141. 시분할 시스템(time sharing): 여러명의 사용자가 한 대의 컴퓨터를 공동으로 이용하는 것을 말하며, TTS라고도 한다. 이런 대화형 시분할 시스템은 른 언어들의 발전에도 기여했으며 PC끼리 연결하는 Network의 발달로 인해 이와 관련된 언어들도 발전하였다.3. 값싸고 빠른 주기억장치(RAM): 주기억장치의 용량이 확대됨에 따라 다양한 기능을 구사하는 소프트웨어들이 개발되었다. 프로그래밍에 제약이 되던 기억공간의 한계점이 많이 개선이 됨으로써 컴파일 시간이 단축되게 되었고 이는 대부분의 언어에 영향을 주게 되었다.4. 하드 디스크(disk drive): 초기 진공관에서 시작된 컴퓨터의 발달은 현재 CPU인 마이크로 프로세서와 보조기억장치인 HDD의 발전을 가져왔고, OS가 개발됨에 따라 OS에 사용될 수 있는 소프트웨어의 개발에 큰 영향을 끼쳤다. 하드웨어 중심에서 소프트웨어로 전환되었으며, Pascal, COBOL등의 고급언어의 개발이 시작되었다. 현재, HDD의 성능향상으로 인한 많은 소프트웨어들이 개발되고 있으며 이에 다양한 프로그래밍 언어들이 사용되고 있다.Chap 2 - 2.285. 다중 프로세서(multi processor): 다중프로세서의 개발로 인해 프로그래밍 언어가 다중 프로세서의 환경에 맞추어 실행될 수 있도록 개발되었다. 이는 프로그램의 실행을 여러 프로세서로 분산시킴으로서 효율성을 높일 수 있는 조건을 제공한다.6. 디스플레이 터미널(video display terminal): 화면을 이용하여 정보를 영상으로 출력하는 장치로 보통 모니터를 의미한다. 초기 CRT방식이 여기에 해당하며, GUI의 탄생을 가져오게 되었다. 이로서 java등의 그래픽 인터페이스를 지향하는 프로그래밍 언어들이 생겨나게 되었다.Chap 2 - 2.281. 효율성(efficiency): Pascal에서 모든 변수들이 사용되기 전에 선언되야 하기 때문에 번역의 효율성을 제공한다. 반면, Modula-2는 이러한 제약이 없어 컴파일러는 2단계 패스를 이용하여 식별자 참조를 해결한다.2. 표현력(expressiveness): 간결한 문맥과, 계산의 많은 부분이 실행시간 시스템에서 처리되도록 설계된 Lisp, Prolty): Cobol의 경우 평범한 영어처럼 보이도록 노력함으로써 읽기 능력을 향상시키려 하였다. 반면, C에서의 pointer는 판독성을 어렵게한다.5. 안전성(security): Lisp와 Prolog가 복잡한 문제를 수행하는 프로그램을 시도할 때, 안전성을 위한 정적형 검사와 변수선언이 더 큰 복잡성을 야기한다. 이에 ML은 다중 형태의 객체를 허용하고 선언을 요구하지 않으면서 정적 형 검사를 하는, 안정성과 표현력을 가지는 좋은 예이다.6. 간결성(simplicity): Lisp와 Pascal은 간결한 문맥을 이루는 적은 구성자만을 갖고 있으며 Algol68과 PL/I등은 복잡한 언어 구조로 이에 위배된다.7. 작성력(writability): C언어 같은 경우 원하는 표현을 작성할 때, 다른언어에 비해 간결한 표현력을 이용하여 작성력을 높일 수 있다.8. 신뢰성(reliability): 신뢰성은 오류의 발견과 수정, 유지보수의 최소화에 기준을 두고 있으며, java가 이를 반영한 좋은 예이다.Chap 3 - 3.1일반성과 밀접한 연관이 있기 때문이다. 예를 들어, Fortran같은 경우 매개 변수 전달 기법으로 ‘참조 전달’기법만이 허용되어 일반성이 부족한 모습을 보인다. 이는 부프로그램 호출에서의 매개변수에 의한 타입검사와 언어의 일반성이 중요함을 나타낸다.Chap 3 - 3.3일반성과 간결성을 들 수 있다. 일반성은 여러의 개념들을 일반적인 하나의 개념으로 결합하는것을 의미하지만 이것은 곧 언어의 복잡성을 야기하여 간결성을 무시하는 결과를 낳을 수 있다. 언어의 상충되는 기준은 설계자가 어디에 비중을 두느냐에 따라 가중치가 변화하게 된다.Chap 3 - 3.5Chap 3 - 3.9시대가 흐를수록 많은것들이 변화하고 있지만 더욱이 컴퓨터 쪽의 발달은 그 어떤것보다도 빠르고 크게 변화되어 왔다. 컴퓨터가 보급화 됨으로써 많은 분야에서 필요로 하는 프로그램들을 구현할 언어들이 필요해졌고, 이는 기존언어들의 수정/개선이나 새로운 언어를 개발함으로써 욕구를 충
    공학/기술| 2007.04.06| 7페이지| 1,000원| 조회(2,438)
    미리보기
  • 부부폭력에 관한 파워포인트
    그는 어머니의 눈을 가졌다.그리고 커서 아버지의 손을 가지게 될 것입니다.부 부 폭 력부부폭력의 개념 부부폭력의 실태 부부폭력의 원인 부부폭력의 피해자/가해자 특징 부부폭력이 미치는 영향 부부폭력의 대책1. 부부폭력의 개념가정폭력 가족 구성원 사이의 신체적, 정신적, 재산상 피해를 수반하는 행위로 정의 부부간의 폭력, 부모에 의한 자녀폭력, 자녀에 의한 부모폭력 부부폭력 가정폭력 중 부부간의 폭력을 의미함.1. 부부폭력의 개념부부폭력의 분류 - 신체적 폭력 - 성적 폭력 - 언어적/정서적 폭력 - 경제적 폭력 - 심리적 폭력2. 부부폭력의 실태1) 매 맞는 남편의 증가한국 가정폭력의 개념 정립과 실태에 관한 연구 - 19982. 부부폭력의 실태2) 부부폭력의 비율각 지역 기혼여성들을 대 상으로 한 전화 조사로 대체로 40% 정도가 한번 이상 경험해 보았다고 응답 정신적 폭력이 다른 폭력보다 월등히 높은 비중을 차지하고 있음2. 부부폭력의 실태3) 구타의 빈도와 구타 양상들연령층이 높은 부부일수록 구타의 빈도가 낮음 부부문제 해결의 노하우가 쌓이는 중년, 노년으로 갈수록 구타의 빈도는 줄어 듬2. 부부폭력의 실태4) 구타의 시기처음 구타당한 시기에서는 결혼 초 3개월 이내가 가장 많은 48%로 나타났다. 특히 결혼 1년 이내가 69.3%로 나타나는 것을 볼 때, 부부폭력을 하는 남편은 대개 결혼 1년 이내에 알 수 있다고 본다.2. 부부폭력의 실태5) 구타의 이유많은 응답자들이 자기 남편은 술 취하지 않았을 때는 정상적인 기능과 책임을 충실히 수행한다고 하며 부부폭력의 첫 번째 원인을 술로 돌렸다.2. 부부폭력의 실태6) 구타의 빈도일주일에 한번 이상 부부폭력을 경험하는 비율이 50%가 넘었으며, 이러한 부부들은 때리고 맞는 것이 생활화되어서 어떤 개선책을 세우지 못하여 이혼을 하기 보단 꾹 참고 그대로 살고 있다.2. 부부폭력의 실태부부폭력 발생의 순환과정1단계 긴장이 쌓이는 단계2단계 학대단계3단계 후회단계3. 부부폭력의 원인1. 개인적인 요인 알코올 : 알코올이 기질적으로 작용하여 반사회적이고 폭력적 인 행동을 유발 분노를 쉽게 느끼는 인지양식과 부정적 정서명명습관 : 중립적 자극을 공격적으로 느끼고 민감하게 반응하여 공 격적으로 행동 갈등 대처방법 : 가정에서 갈등은 불가피하지만 이를 과거의 폭력경 험으로 인해 대화보다 폭력을 우선 정신병 : 뇌의 기질적 손상으로 인한 배우자 폭력은 전체의 3%정도 를 차지한다. 학습된 폭력 : 개인이 폭력의 유용성을 학습한 경우, 이는 개인으로 하여금 대안행동을 학습할 기회를 제한하게 되고 폭 력 행위를 고수하게 될 수 있다.3. 부부폭력의 요인2. 사회적인 요인 강박적 남성성 : 남성성에 대한 불안과 정서 안정성이 떨어지는 남성이 물리적 우위를 점하기 위해 폭력을 사용하기 쉽다. '폭력문화' 속에서 성장한 남성이 부 인에게 적용하는 경우가 많다. 권위를 지키려는 욕구 : 가부장적 사고에 젖어 있는 남성이 현실적 능력의 부족으로 남녀 역할에 대한 인식이 흔들릴 때 자신의 권위에 위협을 느끼고 폭력을 사용하게 된다.3. 부부폭력의 요인3. 가족 요인 1998년 김광일의 조사에 의하면 부부폭력을 조사하는 70%가 폭력가정 혹은 결손 가정에서 자랐으며 특히 폭력적 아버지와 매 맞는 어머니 사이에서 자랐을 경우 자신도 부부폭력을 행사하는 경우가 많았다.4. 부부폭력 피해자 가해자의 특징부부폭력 피해자의 특징 어려서부터 폭력 하에서 자랐을 경우 폭력에 의해 결단력이 상실되며 체념하게 된다. 수동적이며 주체성이 없다. 자신의 행동을 바꾸는 것만이 부부폭력을 줄일 수 있다고 생각한다. 폭력에 대한 공포, 분노, 불안, 우울과 더불어 자학, 무력감을 나타내는 정신신체 장애도 일으킨다.4. 부부폭력 피해자 가해자의 특징부부폭력(신체적) 후 남편의 행동 1) 구타 후 정중히 사과하는 경우 : 구타 당시와는 다르게 잘해주는 이중적 성격 2) 구타 후 변명을 하고 도망가는 경우 : 술 마셔서 구타행동이 생각 나지 않는다며 변명 3) 구타 후 행동이 더 난폭해 지는 경우 : 더 난폭해지며, 아내에게 2차적 폭력(성,정신적)을 가하고 심지어 자녀에게까지 폭력 행세4. 부부폭력 피해자 가해자의 특징피해자가 부부폭력에서 벗어나지 못하고 그냥 사는 이유 남편의 협박 때문에 무서워서, 심한 공포심으로 분별력 상실 남편이 바뀔 것이다'라는 믿음 때문에 경제적 문제 때문에 아이들 때문에-아이들에게 아빠가 필요하다고 생각해서 혼자서 살아갈 수 있을 것인가에 대해 스스로 자신이 없어서 '이혼은 죄악이다'라는 결혼에 대한 경직된 사회의 고정관념 친정식구에 대한 죄책감 때문 보호를 받을 방법에 대한 무지5. 부부폭력이 미치는 영향피해 배우자에게 미치는 영향 배우자의 폭력으로 인해 신체적 / 정신적 손상을 입히거나 주거지를 상실하는 상태적 위기 여성 차별에 대한 불편함을 느끼고 결혼생활에 대한 심리적인 갈등이 높아 가는 사회 문화적 위기 남편의 구타로 인한 위기감으로 원치 않는 이혼으로 이혼녀가 되어 스트레스를 겪어야 하는 변화의 위기 부부폭력의 피해자는 감정적인 변화를 겪으면서 폭력, 자살, 알코올 중독 등의 부정적 결과도 초래할 수 있다.5. 부부폭력이 미치는 영향부부폭력이 자녀에게 미치는 영향 자아 존중감이 낮아지고 정서적/신체적 장애 호소. 등교를 거부하거나, 사회적 적응 어려움, 비행행동 등의 학습장애의 위험이 높다. 자녀 연령별로 구분한 부부폭력이 자녀에게 미치는 영향 1) 유아기 : 불안적 애착 형성 = 대인관계 장애 2) 학령기 : 부정적인 자아상을 가짐 = 심리적 죄책감 3) 청소년기 : 폭력, 가출, 비행, 자살 등의 심각한 사회적 문제를 발생6. 부부폭력의 대책1) 일차예방 일차예방은 부부폭력이 발생하지 않게 하기 위하여 미리 예방하는 단계이다. 학교 교육, 각종 매체를 통하여 대중계몽을 통해 남녀 차별의식을 없애고, 어떠한 이유에서건 폭력을 용납하지 않는 사회분위기를 형성하며, 부부폭력의 심각성에 대한 악영향을 알려서 부부폭력을 미연에 방지 하는 것이다.6. 부부폭력의 대책2) 이차예방 이 단계는 부부폭력의 조기발견, 조기 해결이다. 부부폭력은 시간이 지남에 때라 더욱 고착화 되며 피해자는 점차 정신적, 육체적으로 심각한 상황으로 변하게 된다. 즉 이 단계에서는 조기발견이 가장 중요한 문제가 된다.6. 부부폭력의 대책3) 삼차예방 삼차예방은 조기발견, 조기치료를 한 후에 부부폭력이 재발하지 않도록 하거나 피해자가 독립적인 생활을 유지할 수 있도록 돕는 것이다. 성공적인 삼차예방이 되기 위해서는 긴급대피소, 상담소, 직업훈련원, 행정기관, 경찰서등 지역사회 전체가 유기적 조직이 되어야 한다. 폭력행사 가해자에게는 정신병적인 사람에게는 의학적 치료를 위주로, 그 외 성격장애자 에게는 정신요법적 치료를 위주로 폭력재발 방지를 도모하게 된다. 가해자가 지속적이고 주기적으로 교육이나 치료를 받고 있다는 것을 상급 기관에서 확인하여야 한다.6. 부부폭력의 대책4) 부부폭력 피해자를 위한 사회 복지 현황 1) 전국 50개 지부에 가정폭력 상담소 운영 (홈페이지를 통한 온라인, 오프라인으로 상담 가능) 2) 가정법률 상담소 국내 32개, 해외 6개 운영 3) 여성긴급전화 1366 운영(전국 26개 지부){nameOfApplication=Show}
    생활/환경| 2007.04.06| 25페이지| 1,000원| 조회(489)
    미리보기
전체보기
받은후기 7
7개 리뷰 평점
  • A+최고예요
    5
  • A좋아요
    0
  • B괜찮아요
    2
  • C아쉬워요
    0
  • D별로예요
    0
전체보기
해캠 AI 챗봇과 대화하기
챗봇으로 간편하게 상담해보세요.
2026년 04월 20일 월요일
AI 챗봇
안녕하세요. 해피캠퍼스 AI 챗봇입니다. 무엇이 궁금하신가요?
3:29 오후
문서 초안을 생성해주는 EasyAI
안녕하세요 해피캠퍼스의 20년의 운영 노하우를 이용하여 당신만의 초안을 만들어주는 EasyAI 입니다.
저는 아래와 같이 작업을 도와드립니다.
- 주제만 입력하면 AI가 방대한 정보를 재가공하여, 최적의 목차와 내용을 자동으로 만들어 드립니다.
- 장문의 콘텐츠를 쉽고 빠르게 작성해 드립니다.
- 스토어에서 무료 이용권를 계정별로 1회 발급 받을 수 있습니다. 지금 바로 체험해 보세요!
이런 주제들을 입력해 보세요.
- 유아에게 적합한 문학작품의 기준과 특성
- 한국인의 가치관 중에서 정신적 가치관을 이루는 것들을 문화적 문법으로 정리하고, 현대한국사회에서 일어나는 사건과 사고를 비교하여 자신의 의견으로 기술하세요
- 작별인사 독후감