티스토리 뷰
본문
그냥 심심해서 작성했습니다.
직접 작성이라기보단 이곳 저곳 찾아서 작성 했다는게 정확 하겠네요.
English
http://blog.thdev.net/2011/10/keyboard-typing-practice-program.html
참고로 비쥬얼 c++ 2008 에서 작성 했습니다.
파일 입출력이 아닌 배열을 통해 text를 정했습니다.
분당 타수와 표준편차를 구합니다.
#include <stdio.h> #include <conio.h> #include <string.h> #include <stdlib.h> #include <time.h> #include <math.h> #include <windows.h> #pragma comment(lib, "winmm.lib") //mmsystem.h 리눅스에서 gcc로 할려고했는데 포기를... #define TEXTLEN 512 //문자열 길이를 정의 char texts[][TEXTLEN] = {"Hello", "Android Ice Cream Sandwich!! "}; const int size = sizeof(texts) / sizeof(texts[0]); //배열에 저장된 행을 확인 int gettext(char *str) { gets(str); //키보드 입력을 받음 int len = (int) strlen(str); //입력받은 글자수를 확인 int onebyte = 0; int twobyte = 0; for (int i=0; i<len; i++) //for문을 사용하여 카운트를 샘 { if (str[i] < 0) twobyte++; // 2바이트 한글 else onebyte++; // 1바이트 영문 } return onebyte+(twobyte / 2); } //프로그램 실행 void run() { char user[TEXTLEN]; int sum = 0; //더하기 double sum2 = 0; // 표준편차 int diff; //표준편차 더하기 int avg; int arr[size] = {0}; //표준 편차를 위한 평균 타수 저장 //위에서 정의한 texts의 배열을 for문을 이용 for(int i = 0 ; i < size; i++) { int taja_count = 0; //입력한 타자수를 저장 printf("%s\n", texts[i]); //texts 배열에 저장된 값을 출력 unsigned int time = timeGetTime(); //시작 시간을 time에 복사 taja_count = gettext(user); //사용자 입력 후 count를 가져옴 time = timeGetTime() - time; //딜레이 시간에서 현재 시간을 뺌 if(taja_count == 0) break; //count가 0이면 정지 float n = (float) 60 / (time / 1000); //시작시간을 이용 1분 단위로 계산 arr[i] = (int) n * taja_count; //시간에서 입력한 타자수를 곱함 sum += arr[i]; printf("타자 속도는 평균 %d타\n", arr[i]); } avg = sum / size; //평균을 구함 for(int i = 0; i < size; i++) { diff = arr[i] - avg; sum2 += diff * diff; } //최종 출력 printf("최종: 평균 타수는 %d타, 표준 편차 %d\n", avg, (int)sqrt(sum2 / (size - 1))); } int main() { run(); //프로그램을 시작 puts("프로그램 종료"); getchar(); return 0; }
'Programming language' 카테고리의 다른 글
python * 찍기 프로그램 (0) | 2012.04.14 |
---|---|
TH 문자열 치환 ver. 1.0 (0) | 2012.04.02 |
C언어 char 포인터, 배열 사용 (0) | 2012.03.30 |
아주 기초적이지만 틀리기 쉬운 C 코드 (17) | 2012.03.28 |
ubuntu, mac python 사용하기 (0) | 2012.03.18 |
C++ 로 짠 키보드 타자 연습 프로그램 (5) | 2011.10.20 |
- TAG
- c++ 타자연습 프로그램
댓글
-
김민기 For 보다는 while이 더 낫지 안았을까요?ㅋㅋ
대충봐서 잘모르겠지만ㅋㅋㅋㅋ 2011.10.23 17:32 -
김민기 For 보다는 while이 더 낫지 안았을까요?ㅋㅋ
대충봐서 잘모르겠지만ㅋㅋㅋㅋ 2011.10.23 17:32 -
taehwan while가 더 좋지! ㅋㅋ 수정해서 댓글로 달아줘!!
C오랜만에 하다보니.. 하나도 기억 안나더라.. 2011.10.23 17:42 신고 -
이곳 저곳 코드 잘 봤습니다. 컴파일 해서 잘돌아가고
이곳저곳 돌아다니는데 좋은글이 많이 있네요.
감사합니다. ^^ 2012.07.10 19:31 -
taehwan 읽어주셔셔 감사합니다!^^ 2012.07.10 20:59 신고
공지사항
- Total
- 5,774,463
- Today
- 79
- Yesterday
- 612
TAG
- 안드로이드
- kotlin
- C언어 note 작성
- google drive
- RxJava
- Google HackFair
- 윈도우 원격
- 카카오톡
- 개봉기
- Splashtop Remote Desktop
- 코틀린
- 이슈
- 안드로이드 MVP
- Android MVP
- 픽셀 XL
- 안드로이드 원격
- 넥서스 9
- 태그를 입력해 주세요.
- 코루틴
- 구글 픽셀
- dropbox api
- 윈도우 맥 원격 접속 프로그램
- 리뷰
- HTC EVO4G 업데이트
- 안드로이드 원격 컨트롤
- Android
- Facebook Messenger
- Pixel XL
- Dropbox
- IT
Blog is powered by
Tistory / Designed by
Tistory