Advertisement
Guest User

peter zijn diepe dampgrot

a guest
Apr 23rd, 2019
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.13 KB | None | 0 0
  1. function dwarsdoorsnede(r, gangen) {
  2. var grot = [];
  3. var laag = [];
  4. var k = (gangen.length/2)/r;
  5. if (Number.isInteger(k) === false) {
  6. throw {
  7. name: 'AssertionError',
  8. message: 'ongeldige dwarsdoorsnede'
  9. };
  10. }
  11. for (i = 0; i < gangen.length-1; i += 2) {
  12. laag.push(gangen.slice(i, i+2));
  13. if (laag.length == k) {
  14. grot.push(laag);
  15. laag = [];
  16. }
  17. }
  18. return grot;
  19. }
  20.  
  21. function diepte(grot){
  22. var r = grot.length;
  23. var k = grot[0].length;
  24. var diepte = 1;
  25. var rij = 0;
  26. var kolom = 0;
  27. if (!grot[0][0].includes("N")) {
  28. return 0;
  29. }
  30. if (grot[0][0].includes("O")) {
  31. //richting = richting waarlangs volgende vak wordt binnengegaan
  32. richting = "W";
  33. kolom += 1;
  34. }
  35. else if (grot[0][0].includes("Z")) {
  36. richting = "N";
  37. rij += 1;
  38. }
  39. else {
  40. richting = "O";
  41. }
  42. while (grot[rij][kolom].includes(richting)) {
  43. x = "go";
  44. kamer = grot[rij][kolom];
  45. for (var i = 0; i < 2; i++){
  46. if (kamer[i] != richting && x == "go") {
  47. //andere richting dan binnenkomstrichting
  48. if (kamer[i] == "N"){
  49. richting = "Z";
  50. rij -= 1;
  51. diepte += 1;
  52. x = "stop";
  53. } else if (kamer[i] == "Z") {
  54. richting = "N";
  55. rij += 1;
  56. diepte += 1;
  57. x = "stop";
  58. } else if (kamer[i] == "O") {
  59. richting = "W";
  60. kolom += 1;
  61. diepte += 1;
  62. x = "stop";
  63. } else if (kamer[i] == "W") {
  64. richting = "O";
  65. kolom -= 1;
  66. diepte += 1;
  67. x = "stop";
  68. }
  69. }
  70.  
  71. }
  72. if (rij >= r || kolom >= k || rij < 0 || kolom < 0) {
  73. break;
  74. }
  75. }
  76. return diepte;
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement