사용자 문자열 입력을 x의 5x5 행렬로 표시하는 프로그램을 만들려고합니다. 따라서 사용자 입력 "ABC"는 결과 출력은 첫 번째 행에 대해 할 필요가있는 경우 :사용자 입력을 기반으로 배열에 요소를 표시하려고합니다.
나는 현재 단지 것이 가능하게 한는 B와 C가 표시 될하지만 그것을 확장됩니다 코드가 작동하면 알파벳의 모든 문자가 나타납니다.
각 행에 문자를 만드는 데 필요한 문자가 포함 된 각 행에 대한 배열을 만들었습니다.
사용자가 abc로 입력하면 프로그램은 입력을 문자 배열 [ 'a', 'b', 'c']로 분할 한 다음 입력 길이 (3)를 계산합니다. while 루프가 시작되면 사용자 입력의 첫 번째 요소가 어떤 문자인지 확인하고 alphaRow1 배열의 올바른 요소와 일치시켜 인쇄합니다. while 루프는 사용자 입력의 모든 요소를 통과 할 때까지이 작업을 반복합니다.
나는 현재 첫 번째 행에 대한 코드를 시도했지만 나중에 다른 행을 추가합니다.
사용자 입력에 입력 할 때마다 'b'또는 'c'를 입력해도 관계없이 'a'의 alphaRow1 요소가 나타납니다.
Actual output when user input is "abc"
내가 만 표시하도록 잘못 무슨 일이 일어나고 있는지 확실하지 오전 : while 루프는 내가 ABC에 입력하면, 그것은 '는'3 번에 대한 alphaRow1 요소가 표시됩니다 있도록 제대로 반복 나타납니다 매번 첫 번째 요소. while 루프가 올바로 나타나고 올바르게 증가하는 것으로 나타납니다.
alphaRow1 = [" x ","xxxx "," xxxx"];
alphaRow2 = [" x x ","x x","x "];
alphaRow3 = [" xxx ","xxxx ","x "];
alphaRow4 = ["x x","x x","x "];
alphaRow5 = ["x x","xxxx "," xxxx"];
input=prompt("Enter something","Enter here");
letterCount=0;
splitInput = input.split('');
inputLength = input.length;
while (letterCount < inputLength){ //while loop for first row.
if (splitInput[letterCount] = 'a'){ //if selected element in user input
document.write(alphaRow1[0]); //is 'a' display first element from
letterCount++; //alphaRow1
}
else if (splitInput[letterCount] = 'b'){
document.write(alphaRow1[1]);
letterCount++;
}
else if (splitInput[letterCount] = 'c'){
document.write(alphaRow1[2]);
letterCount++;
}
else{
document.write("error");
}
}
감사합니다! 그게 효과가 있었어! –
내 솔루션을 사용하여 문제가 해결되었음을 나타 내기 위해 내 대답을 수락 됨으로 표시 할 수 있습니다. –