• 전문가 요청 쿠폰 이벤트
*현*
Bronze개인
팔로워0 팔로우
소개
등록된 소개글이 없습니다.
전문분야 등록된 전문분야가 없습니다.
판매자 정보
학교정보
입력된 정보가 없습니다.
직장정보
입력된 정보가 없습니다.
자격증
  • 입력된 정보가 없습니다.
판매지수
전체자료 2
검색어 입력폼
  • 리눅스 ls 명령어의 구현 ( -a, -l, -la 구현) 소프트링크 구현, 기본적인 솔팅 구현, 실제 ls와같은 칸정렬(무척어려움) 평가A좋아요
    #include#include#include#include#include#include#include #include #include#include//ls -a, ls 를 위한 2차원 구조체struct matrix{char* name;} **Mat;/* matrix2 manual* x y* 0 0 normal* 0 1 hidden* 1 0 "."* 1 1 ".."*/struct matrix2{char per[11];int sub_dir;unsigned long uid;unsigned long gid;unsigned long size;time_t day;char* name;char* ori_name;int x;int y;} *Mat2;//Quick sort를 위한 함수들void QuicksortR(struct matrix2 *A, int l, int r); //재귀적으로 호출int PartitionR(struct matrix2 *A, int l, int r); // 파티션int Rpivot(struct matrix2 *A, int l, int r); // r pivot 선택void swap(struct matrix2 *A,struct matrix2 *B); // swap//ls명령어 구현을 위한 함수들void f_ter_culumn(void); // 터미널의 width를 구하는 함수int get_long_name(int start,int end); // 구간 중에 가장 긴 이름을 구하는 함수void sel_size_cul(void); // 한 행에 몇개의 열을 나타낼 건지 정하는 함수void set_file_name(DIR* dp); // Mat을 채우는 함수void print_ls_a(void); // ls, ls-a 출력void print_ls_l(void); // ls -l 출력int get_culumn_long_name(int culumn); // ls -a 함수의 한 열에서 가장 긴 항목의 width를 구함char* strupr(char* A); // xLength = 0;int i,j;int *culumn;struct stat Stat;DIR* sub_dp;struct dirent *dentry2;char* ori_path;//지정한 옵션 확인if(argc > 1 && strcmp(argv[1],"-a") == 0)option_a = 1;if(argc > 1 && strcmp(argv[1],"-l") == 0)option_l = 1;//터미널의 width 가져옴f_ter_culumn();//파일 개방if( argc == 2 && option_a == 0 && option_l == 0 ){lstat(argv[1],&Stat);if( (S_ISDIR(Stat.st_mode) == 1) ){ori_path = argv[1];if( (dp = opendir(argv[1])) == NULL){ // 현재 디렉토리 개방.exit(1); // 개방오류시 종료}chdir(argv[1]);}else{printf("%sn",argv[1]);return 0;}}else if( argc == 3 ){lstat(argv[2],&Stat);if( (S_ISDIR(Stat.st_mode) == 1) ){ori_path = argv[2];if((dp = opendir(argv[2])) == NULL) // 현재 디렉토리 개방.{printf("%sn",argv[1]);exit(1); // 개방오류시 종료}chdir(argv[2]);}else{if( option_a == 1){printf("%sn",argv[2]);return 0;}else{struct tm *time;int i;char buf[100];Mat2 = (struct matrix2*)malloc(sizeof(struct matrix2)*1);for( i = 0; i < 10; i++)Mat2[0].per[i] = '-';Mat2[0].name = argv[2];Mat2[0].ori_name =argv[2];if(S_ISCHR(Stat.st_mode))Mat2[0].pest_mode & S_IROTH)Mat2[0].per[7] = 'r';if(Stat.st_mode & S_IWOTH)Mat2[0].per[8] = 'w';if(Stat.st_mode & S_IXOTH)Mat2[0].per[9] = 'x';Mat2[0].uid=Stat.st_uid;Mat2[0].gid=Stat.st_gid;Mat2[0].size = Stat.st_size;Mat2[0].day = Stat.st_mtime;printf("%s ",Mat2[0].per);printf("1 ");printf("%d ",(unsigned int)Mat2[0].uid);printf("%d ",(unsigned int)Mat2[0].gid);printf("%u ",(unsigned int)Mat2[0].size);time = gmtime(&Mat2[0].day);printf("%02d월 %2d %02d:%02d ",time->tm_mon+1,time->tm_mday,(time->tm_hour+9)%24,time->tm_min);printf("%s",Mat2[0].name);if(readlink(Mat2[0].name,buf,strlen(Mat2[0].name)) != -1 )printf(" -> %s",buf);printf("n");return 0;}}}else if( argc < 3){ori_path = ".";if( (dp = opendir(".")) == NULL) // 현재 디렉토리 개방.exit(1); // 개방오류시 종료}elseexit(1); // 인덱스 에러 종료//전체 파일 갯수를 countif( option_a ){for (i = 0; dentry = readdir (dp);) // 현재 디렉토리 안에있는 파일들을 한번에 하나씩 읽어들인다.{if (dentry->d_ino != 0) // In directory, count the number of filenum_file++;}}else{for (i = 0; dentry = readdir (dp);) /;}//파일의 이름, 상태 등을 가져온다. x,y 2bit로 숨김파일 여부 등을 구분if( option_a ){j = 2;for (i = 0; dentry = readdir (dp);){if (dentry->d_ino != 0){if(strcmp(dentry->d_name,".") == 0){Mat2[0].name = dentry->d_name;Mat2[0].ori_name = dentry->d_name;Mat2[0].x = 1;Mat2[0].y = 0;}else if(strcmp(dentry->d_name,"..") == 0){Mat2[1].name=dentry->d_name;Mat2[1].ori_name = dentry->d_name;Mat2[1].x = 1;Mat2[1].y = 1;}else if(dentry->d_name[0]=='.'){Mat2[j].name = dentry->d_name+1;Mat2[j].ori_name = dentry->d_name;Mat2[j].x = 0;Mat2[j++].y = 1;}else{Mat2[j].name = dentry->d_name;Mat2[j].ori_name = dentry->d_name;Mat2[j].x = 0;Mat2[j++].y = 0;}}}}else{int k;j = 0;for (i = 0; dentry = readdir (dp);){if (dentry->d_ino != 0 && dentry->d_name[0] != '.') // insert the data of all file's name length{Mat2[j].name = dentry->d_name;Mat2[j].ori_name = dentry->d_name;Mat2[j].x = 0;Mat2[j].y = 0;if (lstat(dentry->d_name, &Stat) == -1){fprintf (stderr, ":X %s n", dentry->d_name);exit(1);}total_size+=Stat.st_size;if(S_ISDIR(Stat.s.per[5] = 'w';if(Stat.st_mode & S_IXGRP)Mat2[j].per[6] = 'x';if(Stat.st_mode & S_IROTH)Mat2[j].per[7] = 'r';if(Stat.st_mode & S_IWOTH)Mat2[j].per[8] = 'w';if(Stat.st_mode & S_IXOTH)Mat2[j].per[9] = 'x';Mat2[j].uid=Stat.st_uid;Mat2[j].gid=Stat.st_gid;Mat2[j].size = Stat.st_size;Mat2[j++].day = Stat.st_mtime;}}}if( option_l == 1 ){int i,k = 0;for( k = 0; k < num_file; k++){Mat2[k].sub_dir = 0;if(Mat2[k].per[0] == 'd'){int len = strlen(Mat2[k].ori_name);char* ptr;char* path = (char*)malloc(sizeof(char)*(len+1));struct stat Stat2;strncpy(path,Mat2[k].ori_name,len);path[len] = 0;ptr = path + strlen(path);*ptr++ = '/';*ptr = 0;if((sub_dp = opendir(path)) == NULL)exit(1); // 개방오류시 종료chdir(path);for (i = 0; dentry2 = readdir (sub_dp);) // 현재 디렉토리 안에있는 파일들을 한번에 하나씩 읽어들인다.{if (dentry2->d_ino != 0){ // In directory, count the number of fileif (lstat(dentry2->d_name, &Stat2) == -1){exit(1);}if(S_ISDIR(Stat2.st_mode))Mat2[k].sub_dir++;}}closedir(sub_dp);chdir("..");}elseMat2[k].sub_dir = 1;}rewindd; i
    프로그램소스| 2015.03.09| 1,500원| 조회(1,841)
    미리보기
  • 한양대 과기철 중간대체 보고서(인셉션을 철학적으로 분석)
    REPORTInception‘인셉션’이란 꿈을 통하여 사람의 생각을 바꾸는 작업이다. 먼 미래에는 이처럼 사람의 생각을 바꾸어 본인의 의지로 특정한 행동들을 하게 한다.파놉티콘으로 생각을 해보자면 ‘인셉션’을 통하여 사람의 생각을 조종하고 엿볼 수 있기 때문에 현대사회의 정보 파놉티콘을 넘어서서 사람의 정보 뿐만 아니라 생각까지도 감시할 수 있는 기술이다.이러한 기술을 생각한 감독은 정말 상상력이 풍부한 것 같다. 그런데 여기서 이 영화의 감독이 ‘유전자 결정론’을 믿지 않는 것을 알 수 있다. 유전자 결정론은 인간의 신체, 행동, 마음은 전적으로 유전자에 의해 결정된다는 이론인데, ‘인셉션’을 통해 생각과 마음을 바꾸고 결국 행동까지 바꾸게 하는 것을 보면 ‘유전자 결정론’보다 ‘환경 결정론’에 조금 더 가까움을 알 수 있다. 환경결정론은 환경이 인간을 결정한다는 이론으로 유전자가 아니라 주변 환경이 중요함을 말하는 이론이다.사람의 생각을 마음대로 바꿀 수 있는 기술이 과연 도덕적으로 옳은지 그른지 생각하여 봤을 때, 당연히 ‘옳지 않다’라는 생각이 드는데 ‘과학기술과 철학적 이해‘ 수업을 통해서 배운 이론들을 적용시켜보면 정의하기 힘듦을 알 수 있다.이 기술을 공리주의적 입장으로 봤을 때, ‘인셉션’은 도덕적이다. 길을 가다가 처음 만난 낯선 이에게 ‘인셉션’을 한다고 해도, 그 사람이 ‘행복’하게 생각하여 특정 행동들을 하게 함으로써 도덕적으로 비난받을 일이 없다. 오히려 ‘인셉션’을 통해 무언가를 얻으려한 자들의 행복이 커지므로 도덕적으로 옳은 일이다. 공리주의란 옳고 그름의 기준을 행복과 쾌락으로 하는 것으로 쾌락 계산법에 따라서 최대다수의 최대행복을 위하는 결과를 중시하는 이론이다.그러나, ‘칸트’의 ‘도덕적 원리’ 중 보편적 법칙을 보자면 과연 옳을까? 타인이 ‘나’에게 ‘인셉션’을 해도 되는가? 라는 물음을 던지면 'Yes'라고 말하기 힘듦을 알 수 있다.이처럼 어느 한 기술이 사람의 삶을 바꾸는 것을 보면 기술은 단순히 인간을 위한 도구라고만 보기에 힘들다. 생각의 씨앗을 심기 때문에 예측하기 힘들고 꿈속에서이기에 ‘투사체’들과 싸우는 등 통제가 힘들고 자칫 잘못하면 ‘림프’에 빠져서 죽지못하면 빠져나올 수 없는 경우도 생기는 등 자율적이다. 그리고 사람의 생각을 바꾸어 사회를 바꾼다는 점을 볼 때 단순한 도구가 아님을 알 수 있다. 도구주의는 기술이 인간을 위한 도구라는 이론으로 인간은 기술을 잘 파악하고 있고 기술은 인간에 의해 통제되는 가치중립적인 것이라고 보는 이론이다.이제, 영화의 내용에 대하여 분석을 해보면, 주인공 ‘코브’는 비행기에서 잠깐 잠든 ‘피셔’의 꿈에 팀을 꾸려 들어가서 납치를 하고 꿈속에서 ‘인셉션’을 하여 꿈 속의 꿈에 들어간다. 그 속에서 ‘코브’는 ‘피셔’에게 접근하여 우군인 척 연기를 하고 금고의 비밀번호를 알아내기 위해 감시한다. 이 부분은 은밀한 파놉티콘이다. 또한, 그 꿈속에서 ‘투사체’들을 죽이는 데 거리낌이 없다. ‘투사체’들은 실제하는 사람도 아니고, 그 꿈을 꾸는 주체들도 아니다. 단지 허상이다. 따라서 도덕적주체가 아님으로 ‘코브’는 ‘공리주의’에 따라 도덕적으로 하자가 없는 살인을 하였다. 스토리가 흘러감에 따라 여러 가지 비밀들이 밝혀지는데, ‘코브’의 부인 ‘맬’은 현실을 꿈이라 믿고 탈출방법은 죽음 뿐이란 생각에 자살을 했다. 그런데 그 생각의 기원이 사실은 ‘코브’가 심은 생각. 즉, ‘인셉션’이었다. 이 사실 때문에 ‘코브’는 항상 죄책감을 안고 살아가고 꿈속에서 죽은 ‘맬’을 불러들인다. 그리고 허상 ‘맬’로부터 아내 ‘맬’을 연상한다. 이는 공감능력이다.
    독후감/창작| 2015.03.09| 3페이지| 1,000원| 조회(198)
    미리보기
전체보기
받은후기 2
2개 리뷰 평점
  • A+최고예요
    0
  • A좋아요
    2
  • B괜찮아요
    0
  • C아쉬워요
    0
  • D별로예요
    0
전체보기
해캠 AI 챗봇과 대화하기
챗봇으로 간편하게 상담해보세요.
2026년 03월 31일 화요일
AI 챗봇
안녕하세요. 해피캠퍼스 AI 챗봇입니다. 무엇이 궁금하신가요?
4:34 오전
문서 초안을 생성해주는 EasyAI
안녕하세요 해피캠퍼스의 20년의 운영 노하우를 이용하여 당신만의 초안을 만들어주는 EasyAI 입니다.
저는 아래와 같이 작업을 도와드립니다.
- 주제만 입력하면 AI가 방대한 정보를 재가공하여, 최적의 목차와 내용을 자동으로 만들어 드립니다.
- 장문의 콘텐츠를 쉽고 빠르게 작성해 드립니다.
- 스토어에서 무료 이용권를 계정별로 1회 발급 받을 수 있습니다. 지금 바로 체험해 보세요!
이런 주제들을 입력해 보세요.
- 유아에게 적합한 문학작품의 기준과 특성
- 한국인의 가치관 중에서 정신적 가치관을 이루는 것들을 문화적 문법으로 정리하고, 현대한국사회에서 일어나는 사건과 사고를 비교하여 자신의 의견으로 기술하세요
- 작별인사 독후감