More Games - PAINONE

Android games

sites.google.com

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
32
33
34
35
36
37
38
39
40
41
42
/**
*   자바스크립트 배열에 숫자형에 값을 정렬하여 새로 키값에 대입
*   사용 예)
*   var arr = new Array();
*       arr["a"] = 3;
*       arr["b"] = 1;
*       arr["c"] = 2;
*       arr["d"] = 0;
*
*   arr = ArrayValSort(arr);
*   for(key in arr) {
*       document.write("<p>" + key + " = " + arr[key] + "</p>");
*   }
*   출력)
*   a = 0
*   b = 1
*   c = 2
*   d = 3
*/
function ArrayValSort(sortArray) {
    var valArr = [];
    var keyArr = [];
    var newArr = [];
    var sorter = function(a, b) {
        if(a > b) { return 1 }
        if(a < b) { return -1 }
    }
 
    for(k in sortArray) {
        if(sortArray.hasOwnProperty) {
            valArr.push(sortArray[k]);
            keyArr.push(k);
        }
    }
 
    valArr.sort(sorter);
 
    for(i = 0; i < valArr.length; i++) {
        newArr[keyArr[i]] = valArr[i];
    }
    return newArr;
}      
 

More Games - PAINONE

Android games

sites.google.com

 

More Games - PAINONE

Android games

sites.google.com

var variousChecked = {
    /* 한글 입력체크 */
    NanChecked:function (str) {
        var strCode;
        for (i = 0; i < str.length; i++) {
            strCode = str.charCodeAt(i);
            if (strCode < 12593 || strCode > 12643 && strCode < 44032 || strCode > 55203) {
                alert("한글만 입력이 가능합니다.");
                return false;
            } else {
                return true;
            }
        }
    }
    /* 숫자입력체크 숫자면 true */
    ,NumberChecked:function (num) {
        var numCode;
        for (i = 0; i < num.length; i++) {
            numCode = num.charCodeAt(i);
            if (numCode <= 57 && numCode >= 48) {
                return true;
            } else {
                alert("숫자만 입력이 가능합니다.");
                return false;
            }
        }
    }
    /* 영문입력체크 영문이면 true */
    ,EglishChecked:function (str) {
        var strCode;
        for (i = 0; i < str.length; i++) {
            strCode = str.charCodeAt(i);
            if (strCode <= 90 && strCode >= 65 || strCode <= 122 && strCode >= 97) {
                return true;
            } else {
                alert("영문만 입력이 가능합니다.");
                return false;
            }
        }
    }
    /* 영문입력체크 대문자면 1 / 소문자명 2 / 영문이 아니면 false */
    ,CaseSensitive:function (str) {
        var strCode;
        for (i = 0; i < str.length; i++) {
            strCode = str.charCodeAt(i);
            if (strCode <= 90 && strCode >= 65) {
                return "1";
            } else if (strCode <= 122 && strCode >= 97) {
                return "2";
            } else {
                alert("영문이 아니거나 값이 없습니다.");
                return false;
            }
        }
    }
    /* 아이디 체크 첫글자 영문(소)이고 영문(소),숫자이여야 하고 8~16자 */
    ,IdChecked:function (str) {
        var regexp = /^[a-z][a-z0-9]{8,16}$/; 
        if (str.match(regexp) == str) {
            return true;
        } else {
            alert("아이디는 영문(소) 또는 숫자이여야 하고 8자이상 16자이하 이여야 하고 첫글자는 영문자로 시작하여야 합니다.");
            return false;
        }
    }
    /* 패스워드 체크 8~16자이여야하고 아이디가 포함되어서는 안되고 같은 글자가 4자이상이면 false */
    ,PasswordChecked:function (passStr1, passStr2, idStr) {
        var regexp1 = /(\w)\1\1\1/;
        if (passStr1 != passStr2) {
            alert("비밀번호 비밀번호 확인이 다릅니다."); return false;
        } else if (passStr1.length < 8 || passStr1.length > 16) {
            alert("8자 이상 16자 이하 이여야 합니다."); return false;
        } else if (passStr1.indexOf(idStr) > -1) {
            alert("비밀번호에 아이디가 포함되어 있어서는 안됩니다."); return false;
        } else if (passStr1.match(regexp1) != null) {
            alert("비밀번호에 같은 문자를 4번 이상 사용하실 수 없습니다."); return false;
        } else {
            return true;
        }
    }
    /* 빈 문자 체크 */
    ,IsEmpty:function (str) {
        var strCode;
        for (i = 0; i < str.length; i++) {
            strCode = str.charCodeAt(i);
            if (strCode == 32) {
                return true;
            } else {
                return false;
            }
        }
    }
    /* 주민번호 체크 */
    ,JuminNumber:function (number1, number2) {
        // 주민번호 검증공식 마지막 자리를 제외한 앞자리수를 규칙에 맞게 곱한다.
        // 123456-1234567
        // ****** ******
        // 234567 892345
        // 곱한 각각에 자리수를 더한다.
        // 더한수를 11 로 나눈 후 나눈 나머지 수를 구한다.
        // 나눈 나머지 수를 11에 뺀다.
        // 11 - (각각더한수%11)
        // 주민번호 마지막 번호와 일치하면 검증일치
		var totalNumber = 0;
        var num = 2;
		var juminNum = number1 + "" + number2;
        for (i = 0; i < juminNum.length-1; i++) {
			if(num > 9) {
				num = 2;
			}
            totalNumber = totalNumber + (parseInt(juminNum.charAt(i)) * num);
			num++;
        }
		totalNumber = 11 - (totalNumber%11);
		
        var mm      = number1.substring(2,4);
        var dd      = number1.substring(4,6);
        var gender  = number2.substring(0,1);
        if (number1 == "" || number2 == "") {
            alert("주민등록번호를 입력하세요.");
            return false;
        } else if (!this.numberChecked(number1) || !this.numberChecked(number2)) {
            alert("유효하지 않은 주민등록번호 입니다.");
            return false;
        } else if (number1.length != 6 || number2.length != 7) {
            alert("유효하지 않은 주민등록번호 입니다.");
            return false;
        } else if (parseInt(mm) < 1 || parseInt(mm) > 12) {
            alert("유효하지 않은 주민등록번호 입니다.");
            return false;
        } else if (parseInt(dd) < 1 || parseInt(dd) > 31) {
            alert("유효하지 않은 주민등록번호 입니다.");
            return false;
        } else if (parseInt(gender) > 4 || parseInt(gender) < 1) {
            alert("유효하지 않은 주민등록번호 입니다.");
            return false;
        } else if (totalNumber != juminNum.charAt(juminNum.length-1)) {
            alert("유효하지 않은 주민등록번호 입니다.");
            return false;
        } else {
            return true;
        }
    }
    /* 사업자번호 체크 */
    ,BusinessNumber:function (str) {
		// 사업자번호 오류검증
		// 아래 공식으로 계산후 10의 배수가 나오면 검증일치
		var num = new Array();
			num[0] = 1;
			num[1] = 3;
			num[2] = 7;
			num[3] = 1;
			num[4] = 3;
			num[5] = 7;
			num[6] = 1;
			num[7] = 3;
			num[8] = 5;
		var totalNumber = 0;
		var _num		= 0;
		for (i = 0; i < str.length-1; i++) {
			_num = parseInt(str.charAt(i)) * num[i];
			_num = "" + _num;
			if (i < 8) {
				totalNumber = totalNumber + parseInt(_num.charAt(_num.length-1));
			} else {
				totalNumber = (_num.charAt(_num.length-2) == "") ? totalNumber + 0 : totalNumber + parseInt(_num.charAt(_num.length-2));
				totalNumber = totalNumber + parseInt(_num.charAt(_num.length-1));
			}
        }
		totalNumber = totalNumber + parseInt(str.charAt(str.length-1));
        var num1    = str.substring(0,3);
        var num2    = str.substring(3,5);
        var num3    = str.substring(5,10);
        if (str == "") {
            alert("사업자번호를 입력하세요.");
            return false;
        } else if (num1.length != 3 || num2.length != 2 || num3.length != 5) {
            alert("유효하지 않은 사업자 번호입니다.");
            return false;
        } else if (!this.numberChecked(str)) {
            alert("유효하지 않은 사업자 번호입니다.");
            return false;
        } else if (totalNumber%10 != 0) {
            alert("유효하지 않은 사업자 번호입니다.");
            return false;
        } else {
            return true;
        }
    }
    /* 법인번호 체크 */
    ,CorporationNumber:function (str) {
        // 법인번호 오류검증 공식
        // 법인번호에서 마지막 자리를 제외한
        // 앞에 모든 자리수를 1과 2를 순차적으로 곱한다.
        // 예) 1234567890123
        //     ************
        //     121212121212
        //     각각 곱한 수를 모든 더하고 10으로 나눈 나머지 수를 구한다.
        //     (각각더한수 % 10)
        //     나눈 나머지 수와 법인번호 마지막 번호가 일치하면 검증일치  
        var totalNumber = 0;
        var num = 0;
        for (i = 0; i < str.length-1; i++) {
            if (((i + 1) % 2) == 0) {
                num = parseInt(str.charAt(i)) * 2;
            } else {
                num = parseInt(str.charAt(i)) * 1;
            }
            if (num > 0) {
                totalNumber = totalNumber + num;
            }
        }
		totalNumber = (totalNumber%10 < 10) ? totalNumber%10 : 0;
        if (str == "") {
            alert("법인번호를 입력하세요.");
            return false;
        } else if (str.length != 13) {
            alert("유효하지 않은 법인 번호입니다.");
            return false;
        } else if (!this.numberChecked(str)) {
            alert("유효하지 않은 법인 번호입니다.");
            return false;
        } else if (totalNumber != str.charAt(str.length-1)) {
            alert("유효하지 않은 법인 번호입니다.");
            return false;
        } else {
            return true;
        }
    }
}

 

 

 

안드로이드 게임들(Android games)

탱그램 XOR - Google Play 앱 탱그램 XOR은 XOR 로직을 기반으로하는 퍼즐 게임입니다. 각 스테이지마다 정해진 문제와 동일한 퍼즐을 완성해야합니다. play.google.com 벽돌깨기 - Google Play 앱 벽돌깨기 게임..

painone7.tistory.com

 

More Games - PAINONE

Android games

sites.google.com

 

More Games - PAINONE

Android games

sites.google.com

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
/* 금액 한글배열 */ 
var nString = new Array();  
    nString[0] = "";  
    nString[1] = "일";  
    nString[2] = "이";  
    nString[3] = "삼";  
    nString[4] = "사";  
    nString[5] = "오";  
    nString[6] = "육";  
    nString[7] = "칠";  
    nString[8] = "팔";  
    nString[9] = "구";  
/* 금액단위 한글배열 */ 
var nbString = new Array();  
    nbString[0] = "";  
    nbString[1] = "";  
    nbString[2] = "십";  
    nbString[3] = "백";  
    nbString[4] = "천";  
    nbString[5] = "만";  
    nbString[6] = "십";  
    nbString[7] = "백";  
    nbString[8] = "천";  
    nbString[9] = "억";  
    nbString[10] = "십";  
    nbString[11] = "백";  
    nbString[12] = "천";  
    nbString[13] = "조";  
    nbString[14] = "십";  
    nbString[15] = "백";  
    nbString[16] = "천";  
 
function NumberString(obj) {  
    var nStr    = document.getElementById("nStr");  
    var str     = obj.value;  
    var strCode = "";  
    var codeStr = "";  
    var nHan    = "";  
    var cnt     = 0;  
    /* 천조이상이면 */ 
    if(str.length > 16) {  
        //alert("한글 표현은 천조 이하에 금액까지 가능합니다.");  
        //경고창 후 마지막 입력값 제거 필요 귀찮아서 안함!! ㅡㅡ;  
        return false;  
    }  
    /* 뒷자리부터 루프 */ 
    for (var i = str.length; i > 0; i--) {  
        /* 유니코드 구하기 */ 
        strCode = str.charCodeAt(i-1);  
        /* 숫자가 맞다면 */ 
        if(strCode >= 48 && strCode <= 57) {  
            cnt++; // 단위계산을 위해 카운팅  
            codeStr = Number(String.fromCharCode(strCode)); // Number형으로  
            if(codeStr != 1) {  
                if(codeStr == 0) {  
                    if(cnt/5 == 1) { // 만단위표현  
                        nHan = nbString[5] + nHan;  
                    } else if(cnt/9 == 1) { // 억단위표현  
                        nHan = nbString[9] + nHan;  
                    } else if(cnt/13 == 1) { // 조단위 표현  
                        nHan = nbString[13] + nHan;  
                    }  
                } else {  
                    /* 0이 아니면 입력값에 한글과 단위 */ 
                    nHan = nString[codeStr] + nbString[cnt] + nHan;  
                }  
            } else if(codeStr == 1 && i == str.length) {  
                /* 1이고 마지막입력값이면 한글 일 표현 */ 
                nHan = nString[codeStr] + nHan;  
            } else {  
                if(codeStr == 1 && i == 1 && (cnt == 9 || cnt == 13)) {  
                    /** 
                    *    입력값이 1이고 첫입력값이며 단위가 억이거나 조이면  
                    *    예) 일억 또는 일조  
                    *    억이하 단위에선 일을 표현안되기 때문에 일백만원을 백만원 일십만원을 십만원으로 표현되고 
                    *    억, 조 단위는 일억원 일조원 으로 표현하기 위해 
                    */ 
                    nHan = nString[codeStr] + nbString[cnt] + nHan;  
                } else {  
                    nHan = nbString[cnt] + nHan;  
                }  
            }  
            /* 단위표현에서 억만, 조억에 두번째 단위 제거 (이거 때문에 삽질했네..) */ 
            nHan = nHan.replace('억만','억').replace('조억','조');  
        } else {  
            //alert("숫자로 입력하세요.");  
            //경고창 후 마지막 입력값 제거 필요 귀찮아서 안함!! ㅡㅡ;  
            return false;  
        }  
    }  
    nStr.innerHTML = nHan + "원";  
}  
 

More Games - PAINONE

Android games

sites.google.com

+ Recent posts