작년 9월쯤 웹 공부 목적으로 개인 웹 프로젝트를 진행한 적이 있었다.


서버에 대한 개념이 한창 부족하던 시절이라 (물론 지금도 부족하다) 일주일에도 서버를 몇번씩 밀어버리곤 했다.


이미 완성된 프로젝트는 파일만 옮겨와서 열어보지도 못한 채 몇달이곤 방치를 해놨었다.


이제 슬슬 취업도 준비해야되고 포트폴리오로 쓸 작품을 정리하려고 프로젝트를 열어보았다.




결과는... 아래 처럼 에러코드가 나왔다.


Warning: session_start(): open(/var/lib/php/session/sess_01isbqep04029v44sp8hvbtlj4, O_RDWR) failed: Permission denied (13) in /var/www/html/ocean/login.php on line 9


Warning: Unknown: open(/var/lib/php/session/sess_01isbqep04029v44sp8hvbtlj4, O_RDWR) failed: Permission denied (13) in Unknown on line 0

Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/lib/php/session) in Unknown on line 0




프로젝트 완성 후에도 서버 재설치를 여러번 했던 탓에 세션이 저장될 폴더의 접근 권한이 바뀐것같다.


에러코드에 나외있는 /var/lib/php/ 경로로 들어가서 session 폴더의 접근 권한을 살펴보았다.



session 폴더의 권한이 770으로 되어있다....


이러니 세션 폴더에 파일을 쓰지 못해서 에러가 나지


일단은 $ chmod 777 sessoin 명령어를 실행시켜 권한을 777로 바꿔주니 오류는 해결되었다.

'Linux' 카테고리의 다른 글

PHP Warning: session_start() 에러  (0) 2018.07.15
리눅스 열린 포트 확인  (0) 2018.07.11


7월 16일 스마트미디어인재개발원 자바 이론 시험 예상 문제입니다.

''의 수가 많을수록 출제 확률이 높다고 생각되는 문제입니다. 



★★★★★

Q1. 변수란 무엇인가?

  • 사전적 의미로는 "변화를 줄 수 있는" 또는 변할 수 있는 수"
  • 프로그래밍에서는 데이터를 담을 수 있는 공간
  • 변수 선언 방법 : int num = 3;


★★

Q2. 상수란 무엇인가?

  • 사전적 의미로는 "불변하는 또는 "변하지 않는 수"
  • 프로그래밍에서는 데이터를 담을 수 있는 공간
  • 한 번 넣으면 변하지 않는 수를 넣는데 사용
  • 상수 선언 방법 : final int num = 3;


★★★

Q3. 변수명 규칙에 대해 서술하시오.

  • 대소문자가 구분되며 길이에 제한은 없다.
  • 숫자로 시작할 수 없다.
  • 특수문자는 '_'와 '$'만 허용된다.


★★★★★

Q4. 자바의 기본 자료형 8가지를 작성하시오.

  • byte => 1byte(정수형)
  • short => 2byte(정수형)
  • int => 4byte(정수형)
  • long => 8byte(정수형)
  • float => 4byte(실수형)
  • double => 8byte(실수형)
  • char => 2byte(문자형)
  • boolean => 1byte(논리형)


★★

Q5. 조건문이란 무엇인가?

  • 주어진 조건을 비교 판단하여 그 조건에 만족할 경우


★★★★★

Q6. 조건문의 4가지 종류와 각각의 차이점에 대해 서술하시오.

  • 단순 if문 : if문에 주어진 조건식이 참이면 수행하고 거짓이면 실행하지 않습니다.
  • if-else문 : if문에 주어진 조건식이 참이면 수행하고 거짓이면 else문을 수행합니다.
  • 다중 if문 : if문에 주어진 조건식이 참이면 수행하고 거짓이면 else-if문에 주어진 조건식이 참인지 확인합니다. else-if문도 거짓이면 else문을 수행합니다.
  • switch문 : 주어진 변수 값의 경우(case)에 따라 결과값을 수행할 수 있도록 합니다.


★★

Q7. break문이란 무엇인가?

  • 조건문, 반복문을 탈출하는 키워드


★★

Q8. 반복문이란 무엇인가?

  • 어떤 조건에 만족할 때까지 같은 처리를 반복하여 실행하는 구조


★★★★★

Q9. while문, do-while문과 for문의 차이점에 대해 서술하시오.

  • while문, do-while문 : 정확하게 몇 번 반복해야 할 지 정해지지 않은 경우에 사용
  • for문 : 주로 반복 횟수가 정해진 경우에 사용


★★★★★

Q10. while문과 do-while문의 차이점에 대해 서술하시오.

  • while문은 검사조건이 참이면 실행되는 반면,
  • do-while문은 검사조건이 거짓이여도 반드시 한 번은 실행되어야 한다.


★★★

Q11. 배열이란 무엇인가?

  • 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것


Q12. 배열에 대한 레퍼런스 변수 intArray 선언하시오.

  • int[] intArray;

Q13. 'Q12'에서 선언한 intArray변수를 10개의 정수로 구성된 배열로 생성하시오.

  • intArray = new int[10];

Q14. 10개의 정수로 구성된 배열을 선언하시오.('Q12, Q13' 작업을 한번에)

  • int[] intArray = new int[10];

★★★★★

Q15. 연산자의 종류에 대해 작성하시오.

  • 증감연산자 : ++, --
  • 산술연산자 : +, -, *, /, %
  • 비교연산자 : ==, !=, >, <, <=, >=
  • 논리연산자 : !, &&, ||
  • 삼항연산자 : ? :
  • 대입연산자 : =, +=, -=, /=, *=, &=, |=
  • 이항연산자 : 산술연산자, 대입연산자, 비교연산자, 논리연산자
  • 단항연산자 : 증감연산자
  • 삼항연산자 : 삼한연산자


★★★★★

Q16. %연산자와 /연산자의 차이점을 서술하시오.

  • %연산자 : 나누기를 한 값의 나머지를 나타냅니다.
  • /연산자 : 나누기를 한 값의 몫을 나타냅니다.

Q17. A가 빨간색 펜, B가 파란색 펜을 들고있을 때 서로 바꾸는 코드를 작성하시오.

  • temp = A;
  • A = B;
  • B = temp;


Q18. 형변환(Casting)이란 무엇인지 서술하시오.

  • 어떠한 값의 자료형을 변환하는 작업을 말합니다.

Q19. main() 메소드란 무엇인가?

  • 프로그램이 실행되는 출발점이 되는 메소드입니다.


Q20. 큐의 특징에 대해 작성하시오.

  • 데이터가 입력된 순서대로 출력하는 자료구조
  • 선입 선출


Q21. 스택의 특징에 대해 작성하시오.

  • 나중에 입력된 데이터가 먼저 출력되는 자료구조
  • 후입 선출

★★★★

Q22. JDK가 무엇인지 서술하시오.

  • JDK(Java Development Kit, 자바 개발 도구) : 자바 개발자에게 무료로 배포하는 소프트웨어로, 자바 프로그램을 개발하거나 실행할 때 필요한 것들을 모아둔 도구 세트입니다.

★★

Q23. JRE가 무엇인지 서술하시오.

  • JRE(Java Runtime Environment, 자바 실행 환경) : 자바를 실행시킬 수 있는 자바환경, 자바 프로그램을 실행하기 위한 라이브러리 파일들과 자바 가상 기계를 포함한다.


Q24. Eclipse가 무엇인지 서술하시오.

  • Eclipse란 자바를 비롯한 다양한 언어를 지원하는 프로그래밍 통합 개발 환경(IDE)입니다.

★★★

Q25. for문의 구조



★★★★★

Q26. 순서도 그리기




★★★

Q27. 비트(Bit)에 대해 서술하시오.

  • 전기식 컴퓨터를 작동시킨 최초의 언어이다.
  • 이진수로 나타낸 정보량의 최소단위이다.
  • 컴퓨터 시대의 정보 처리를 위한 가장 기본적인 단위이다.


★★★

Q28. 논리연산자의 종류와 차이점에 대해 작성하시오.

  • &&(AND) : 피 연산자가 모두 참이여야 참
  • ||(OR) : 피 연산자 중 하나라도 참이면 참
  • !(NOT) : 피 연산자가 참이면 거짓, 거짓이면 참



do~while문을 이용하여 간단한 다이어트 프로그램을 만드는 예제입니다.


Q. 현재 몸무게와 목표 몸무게를 입력 받고 주차 별 강량 몸무게를 입력 받으세요.

목표몸무게를 달성하면 축하한다는 문구를 출력하고 입력을 멈추세요!




실행 결과




do~while문을 이용한 정답 코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import java.util.Scanner;
 
public class Main {
 
    public static void main(String[] args) {
 
        Scanner sc = new Scanner(System.in);
        
        int weightNow;
        int weightGoal;
        int week = 0;
        int weightReduction;
        
        System.out.print("현재몸무게 : ");
        weightNow = sc.nextInt();
        System.out.print("목표몸무게 : ");
        weightGoal = sc.nextInt();
        
        do {
            week++;
            System.out.print(week + "주차 감량 몸무게 : ");
            weightReduction = sc.nextInt();
            weightNow -= weightReduction;
        } while (weightNow>weightGoal);
        
        System.out.println(weightNow + "kg 달성!! 축하합니다!");
 
    }
    
}
 
cs


+ Recent posts