数字の8の個数を求めて、奇怪な数字の問題を製造します
15772 ワード
1)1~10000個の数字のうち8個を獲得(Google)
1から10000まで何回8という数字が出ますか?評価関数を完了します.
ただし、8を含む数字の個数を計算するのではなく、すべての8の数字を計算します.例えば、8808は38888で4であるべきである.
(hint)文字列のn番目の文字:str.charat(n)またはstr[n]
function getCount8 () {
var str = '';
for (var i = 1; i <= 10000; i++) {
str += i;
}
var count = 0;
for (var i = 0; i < str.length; i++) {
if (str[i] === '8') count++;
}
return count;
}
console.log(getCount8()); // 4000
2)変な文字を作成する
toWeirdCase関数は文字列をパラメータとして渡します.文字列sでは、各単語の偶数番目のインデックス文字を大文字、奇数番目のインデックス文字を小文字で置き換えた文字列を返す関数を完了します.
たとえば、sが「hello world」の場合、最初の単語は「hello」で、2番目の単語は「World」で、「Hello World」に戻ります.
注意)文字列全体のパリティインデックスではなく、単語(スペース基準)に基づいてパリティインデックスを判断します.
プール試行1
function toWeirdCase(s) {
var str =''; // 변경된 문자열을 담을 변수선언 및 빈 문자열로 초기화
var index = 0; //단어별 짝/홀수 인덱스를 담을 변수선언
for (var i = 0; i < s.length; i++) {
if (s[i] === ' ') { // 띄어쓰기 만나면
str += s[i]; // 띄어쓰기 문자 그대로 str에 더하기
index = 0; // 홀/짝 index를 0으로 초기화
} else {
if (index % 2 === 0) { // 짝수index면
if (s[i] >= 'a' && s[i] <= 'z') { // 소문자면
str += String.fromCharCode(s[i].charCodeAt(0) - 32); // 대문자로 바꾸고 str에 더하기
} else {
str += s[i]; // 대문자면 그냥 그대로 str에 더하기
}
index ++;
} else { // 홀수index면
if (s[i] >= 'A' && s[i] <= 'Z') { // 대문자면
str += String.fromCharCode(s[i].charCodeAt(0) + 32); // 소문자로 바꾸고 str에 더하기
} else {
str += s[i]; // 소문자면 그냥 그대로 str에 더하기
}
index++;
}
}
}
return str;
}
console.log(toWeirdCase('hello world')); // 'HeLlO WoRlD'
console.log(toWeirdCase('my name is lee')); // 'My NaMe Is LeE'
問題の解き方を試みる
function toWeirdCase(s) {
var str ='';
var words = s.split(' ');
for (var i = 0; i < words.length; i++) {
for (var j = 0; j < words[i].length; j++) {
if(j % 2 === 0) {
str += words[i][j].toUpperCase();
} else {
str += words[i][j].toLowerCase();
}
}
str += ' ';
}
return str;
}
console.log(toWeirdCase('hello world')); // 'HeLlO WoRlD'
console.log(toWeirdCase('my name is lee')); // 'My NaMe Is LeE'
アルファベットの大文字と小文字を変換するために、Askyコードの増減演算ではなくString法( String.prototype.toUpperCase
・String.prototype.toLowerCase
)を用いた. String.prototype.split
メソッドを用いて、単語ごとにfor文を繰り返し使用して巡回する.Reference
この問題について(数字の8の個数を求めて、奇怪な数字の問題を製造します), 我々は、より多くの情報をここで見つけました https://velog.io/@ursr0706/숫자-8의-개수-구하기-toWeirdCase-문제テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol