Guest User

Untitled

a guest
Jan 23rd, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.53 KB | None | 0 0
  1. function ajDiamond(input) {
  2. input = input.toUpperCase();
  3. var standardInput = ["A","B","C","D","E","F","G","H","I","J"];
  4. var spacer = " ";
  5. var index = standardInput.indexOf(input);
  6. var halfArr = [];
  7. var tempArr = [];
  8. var sessionArr = function(index) {
  9. var arr = [];
  10. for (var i = 0; i < index; i ++) {
  11. arr.push(standardInput[i]);
  12. }
  13. for (var j = index; j >= 0; j --) {
  14. arr.push(standardInput[j]);
  15. }
  16. return arr;
  17. };
  18. if (index === -1) {
  19. console.log("Invalid input '"+input+"'. Make sure you use a letter in the range A to J.");
  20. } else {
  21. console.log("Input: "+input);
  22. console.log("Output: ");
  23. console.log(" ");
  24. for (var i = 0; i < sessionArr(index).length; i ++) {
  25. if (i < (sessionArr(index).length/2)) {
  26. for (var j = 0; j < i; j ++) {
  27. tempArr.push(spacer);
  28. }
  29. } else {
  30. for (var x = 2; x <= i; x ++) {
  31. halfArr.push(halfArr[i-x]);
  32. }
  33. }
  34. tempArr.push(sessionArr(index)[i]);
  35. for (var y = i; y < index; y ++) {
  36. tempArr.push(spacer);
  37. }
  38. halfArr.push(tempArr.join(""));
  39. tempArr.splice(0, tempArr.length);
  40. }
  41. for (var z = 0; z < sessionArr(index).length; z++) {
  42. var originalArr = halfArr[z];
  43. var reverseArr = halfArr[z].slice(1,halfArr[z].length).split("").reverse().join("");
  44. var fullArr = reverseArr.concat(originalArr);
  45. console.log(fullArr);
  46. }
  47. console.log(" "); // for aesthetic purposes
  48. }
  49. }
  50. // Test cases
  51. ajDiamond("a");
  52. ajDiamond("b");
  53. ajDiamond("c");
  54. ajDiamond("d");
  55. ajDiamond("e");
  56. ajDiamond("f");
  57. ajDiamond("g");
  58. ajDiamond("h");
  59. ajDiamond("i");
  60. ajDiamond("j");
Add Comment
Please, Sign In to add comment