2주차

2주차 : Second Impact! 쉽지만은 않은 두 번째
-과제 확인, 프로젝트 생성, GCC사용법, 컴파일, main함수, 변수, Data Type, 연산자, 입출력 기본 함수, 제어문 -
이번 시간에 이건 꼭 해야 돼! (이거 궁서체다 강사 진지하다)
1. Ice Breaking Wiki에 적기.
2. 과제 검사, 수업을 받고 전주의 내용 물어보기, 그리고 한주간의 일 물어보기. 강의시간 물어보기.재미있는 과목과제. 등
3. 학생들 직접 코딩 해서 결과 확인하기
4. 모르는 API 문법 직접 찾아보게 하기 http://winapi.co.kr -> 관련 2 코딩 Q&A
5. 학생들이 직접 Wiki에 내용 적게 해보기

1. 게임 순서도 및 코드
http://wiki.zeropage.org/wiki.php/새싹교실/2011/무전취식/레벨4
강사는 프린트해서 학생들에게 복사 + 붙여넣기 하지 못하게해주세요!
///이소라 때리기 게임!!
#include<stdio.h>
#include<math.h> //Rand를 가져오는 헤더파일
#include<stdlib.h> 
#include<time.h>
#define KICK 350
#define PUNCH 200
#define SORAKICK 900
#define SORAPUNCH 1000
int main(){
	//이소라 체력 , 내 체력 정하기.
	int Sora = 2500, My = 5000; 
	int temp; //임시 계산할 변수
	char select; //선택지 선택
	srand(time(NULL)); //Rand의 시드값 변경해줌.
	printf("소라때리기 게임 시작합니다.\n");
	printf("제작자 : 06 김준석 11 강원석 이진영 서원태 Target : 11 이소라\n");
	while(1){
		printf("이소라 체력 : %d\n",Sora);
		printf("내 체력 : %d\n",My);
		printf("발로차기 : k 주먹 : p\n");
		//공격선택지 출력
		select = getch(); //getch()는 char형 한글자를 받아주는 함수.
		switch(select){
			default: printf("잘못된 입력입니다\n"); break;
			case 'k' : 
				temp = ( ( rand() % KICK +1)); //1~KICK까지의 데미지를 입힌다.
				printf("소라를 발로찹니다. 데미지 : %d 를 입혔다!\n",temp);
				Sora = Sora - temp;  break;
			case 'p' :
				temp = ( ( rand() % PUNCH +1));
				printf("소라를 때립니다. 데미지 : %d 를 입혔다!\n",temp);
				
				Sora = Sora - temp; break;
		} //내공격 선택
		select = rand() %2 +1;//선택의 랜덤.
		switch(select){
			case 1 : 
				temp = ( ( rand() % SORAKICK +1));
				printf("소라가 발로찹니다. 데미지 : %d 를 입었다!\n",temp);
				My = My - temp;  break;
			case 2 : 
				temp = ( ( rand() % SORAPUNCH + 1));
				printf("소라가 때립니다. 데미지 : %d 를 입었다!\n",temp);
				My = My - temp; break;
		}//소라의 랜덤 공격
		//공격
		//	그리고 반복
	
		if(Sora <= 0 && My <= 0){
			printf("Double KO. 둘다 쓰러졌습니다.\n");
			break;
		}
		else if(Sora <= 0){
			printf("소라를 이겼습니다!!! \\(* ^ * )/ \n");
			break;
		}
		else if(My <= 0 ){
			printf("소라에게 죽었습니다.. OTL \n");
			break;//while문을 빠져나간다.
		}
		//죽었나 살았나?    
	}
	printf("\nGame Over\n");
	return 0;
	}
※ 강사는 손으로 적게 하면서 가르치는게 좋겠죠? 이 부분은 무엇입니다.

2. 코딩 Q&A(모른다면 가르쳐주고, 배워야 한다면 적으세요! 공백은 적으라고 있는 것 입니다)
2.1 예약어


2.2 #include<stdio.h>, printf(), scanf(); 입출력 함수.


2.3 int, char, 변수.


2.4 #define 선언문, 매크로


2.5 #include<math.h>, #include<stdlib.h>, #include<time.h>
srand(time(NULL)), rand(). 함수와 라이브러리.


2.6 If문, switch() { case : default : } 제어문.

3. 과제
ACM의 간단한 문제를 풀어보겠습니다. 강사의 역량과 학생의 역량에 맞춰서 풀어주세요 *^_^* 뿌잉뿌잉~!

쉬운 것부터 아래로 어려운 문제

3.1 윤년 판단하기 http://koistudy.net/?mid=prob_page&NO=152 난이도 하
3.2 세 정수 정렬하기 http://koistudy.net/?mid=prob_page&NO=111 난이도 최하
3.3 기숙사와 파닭 http://koistudy.net/?mid=prob_page&NO=145 난이도 중상
3.4 위성 사진 http://koistudy.net/?mid=prob_page&NO=213 난이도 중

아이디 : zeldababo 비밀번호 : rlawns

합격후 해설도 써오셔야합니다~! 지켜보고 있어요!

Retrieved from http://wiki.zeropage.org/wiki.php/새싹교실/2012/새싹교실강사교육/2주차
last modified 2021-02-07 05:29:45