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의 간단한 문제를 풀어보겠습니다. 강사의 역량과 학생의 역량에 맞춰서 풀어주세요 *^_^* 뿌잉뿌잉~!
쉬운 것부터 아래로 어려운 문제
아이디 : zeldababo 비밀번호 : rlawns
합격후 해설도 써오셔야합니다~! 지켜보고 있어요!