본문으로 바로가기
728x90
반응형

186p


Programming


4. 절대 평가로 학생들의 학점을 계산하는 프로그램을 작성하여보자. 한 학생에 대하여 중간 고사와 기말 고사를 읽어서 아래의 규칙에 따라서 학생들의 학점을 결정하고 출력한다.

① 중간 고사, 기말 고사를 차례대로 사용자로부터 읽는다.

② 중간 고사와 기말 고사의 평균값이 90점 이상이면 A, 80점 이상이면 B, 70점 이상이면 C, 60점 이상이면 D, 60점 미만이면 F학점이라고 출력하고 종료한다.



 include <stdio.h>

 void main()

 {

  int x, y,z;

  printf("중간고사 점수를 입력해주세요: ");

  scanf_s("%d", &x);

  printf("기말고사 점수를 입력해주세요: ");

  scanf_s("%d", &y);

  z = (x + y)/2;

  if (z >= 90)

  printf("학점은 A입니다\n");

  else if(z >= 80 && 90 > z)

  printf("학점은 B입니다\n");

  else if(z >= 70 && 80 > z)

  printf("학점은 C입니다\n");

  else if(z >= 60 && 70 > z)

  printf("학점은 D입니다\n");

  else

  printf("학점은 F입니다\n");

 }



5. 이차방정식 ax^2 + bx + c = 0 의 근을 계산하는 프로그램을 작성하여보자.

① 사용자에게 이차방정식의 계수 a, b, c를 입력하도록 한다.

② 만약 a가 0이면 근은 -c/b 이다.

③ 만약 판별식 √(b^2 - 4ac) 가 음수이면 실근은 존재하지 않는다.

④ 위의 조건에 해당되지 않으면 다음과 같은 공식을 이용하여 실근을 구한다.


x =

-b ± √(b^2-4ac) 

 2a



 #include <stdio.h>

 void main()

 {

  int a, b, c;

  double x = 0, y = NULL;

  printf("이차방정식의 계수 a,b,c를 순서대로 입력해주세요:");

  scanf_s("%d %d %d", &a, &b, &c);

  if (a == 0){

  x = (-c) / b;

  }

  else if (sqrt(b*b - 4 * a*c) < 0)

  x = NULL;

  else {

  x = (-b) + sqrt(b*b - 4 * a*c);

  y = (-b) - sqrt(b*b - 4 * a*c);

  }

  if (y == NULL)

  printf("근은 %d입니다\n", x, y);

  else if (x == NULL)

  printf("근은 없습니다.\n");

  else

  printf("근은 %d 와 %d 입니다\n", x, y);

 }



6. 컴퓨터와 가위바위보 게임을 하는 프로그램을 작성하여보자. 컴퓨터는 사용자에게 알리지 않고 가위, 바위, 보 중에서 임의로 하나를 선택한다. 사용자는 프로그램의 입력 안내 메시지에 따라서 3개 중에서 하나를 선택하게 된다. 사용자의 선택이 끝나면 컴퓨터는 누가 무엇을 선택하였고, 누가 이겼고 비겼는지를 알려준다.



 #include <stdio.h>

 #include <stdlib.h>

 #include <time.h>

 void main()

 {

  int x, com;

  srand(time(NULL));

  printf("가위(1) 바위(2) 보(3) 중 아무거나 입력해주세요");

  scanf_s("%d", &x);

  com = rand() % 3;

  printf("사용자 :");

  if (x == 1)

  printf("가위\n");

  else if (x == 2)

  printf("바위\n");

  else if (x == 3)

  printf("보\n");

  else

  printf("잘못입력하셨습니다.\n");

  printf("컴퓨터 :");

  if (com == 1)

  printf("가위\n");

  else if (com == 2)

  printf("바위\n");

  else

  printf("보\n");

  if (x == com)

  printf("비겼습니다\n");

  else if ((x == 1 && com == 3) || (x == 2 && com == 1) || (x == 3 && com == 2))

  printf("이겼습니다\n");

  else

  printf("졌습니다\n");

 }



728x90
반응형