Browse Source

Functions

master
Bart De Lepeleer 2 years ago
parent
commit
3765cb9a49
4 changed files with 120 additions and 0 deletions
  1. 31
    0
      functions/bonus-mission.js
  2. 31
    0
      functions/diamond.js
  3. 27
    0
      functions/rectangles.js
  4. 31
    0
      functions/triangles.js

+ 31
- 0
functions/bonus-mission.js View File

@@ -0,0 +1,31 @@
function makeLine(size, char = '#') {
let line = '';
for (let i = 0; i < size; i++) {
line += char;
}
return line;
}

function makeSpaceLine(numSpaces,numChars,char = '#') {
return makeLine(numSpaces,' ') + makeLine(numChars,char) + makeLine(numSpaces,' ');
}

function makeIsoscelesTriangle(height,char = '#') {
isoscelesTriangle = '';
for (let i = 0; i < height; i++) {
isoscelesTriangle += makeSpaceLine(height - i - 1, 2 * i + 1, char) + '\n';
}
return isoscelesTriangle.trimEnd();
}

function reverse(str) {
let lettersArray = str.split('');
let reversedLettersArray = lettersArray.reverse();
return reversedLettersArray.join('');
}

function makeDiamond(height,char = '#') {
return makeIsoscelesTriangle(height,char) + '\n' + reverse(makeIsoscelesTriangle(height,char));
}

console.log(makeDiamond(5,'@'));

+ 31
- 0
functions/diamond.js View File

@@ -0,0 +1,31 @@
function makeLine(size, char = '#') {
let line = '';
for (let i = 0; i < size; i++) {
line += char;
}
return line;
}

function makeSpaceLine(numSpaces,numChars) {
return makeLine(numSpaces,' ') + makeLine(numChars) + makeLine(numSpaces,' ');
}

function makeIsoscelesTriangle(height) {
isoscelesTriangle = '';
for (let i = 0; i < height; i++) {
isoscelesTriangle += makeSpaceLine(height - i - 1, 2 * i + 1) + '\n';
}
return isoscelesTriangle.trimEnd();
}

function reverse(str) {
let lettersArray = str.split('');
let reversedLettersArray = lettersArray.reverse();
return reversedLettersArray.join('');
}

function makeDiamond(height) {
return makeIsoscelesTriangle(height) + '\n' + reverse(makeIsoscelesTriangle(height));
}

console.log(makeDiamond(5));

+ 27
- 0
functions/rectangles.js View File

@@ -0,0 +1,27 @@
function makeLine(size) {
let line = '';
for (let i = 0; i < size; i++) {
line += '#';
}
return line;
}

function makeSquare(size) {
let square = '';
for (let i = 0; i < size; i++) {
square += makeLine(size) + '\n';
}
return square.trim();
}

console.log(makeSquare(5));

function makeRectangle(width,height) {
let square = '';
for (let i = 0; i < height; i++) {
square += makeLine(width) + '\n';
}
return square.trim();
}

console.log(makeRectangle(10,5));

+ 31
- 0
functions/triangles.js View File

@@ -0,0 +1,31 @@
function makeLine(size, char = '#') {
let line = '';
for (let i = 0; i < size; i++) {
line += char;
}
return line;
}

function makeDownwardStairs(height) {
let downwardStairs = '';
for (let i = 1; i <= height; i++) {
downwardStairs += makeLine(i) + '\n';
}
return downwardStairs.trim();
}

console.log(makeDownwardStairs(10));

function makeSpaceLine(numSpaces,numChars) {
return makeLine(numSpaces,' ') + makeLine(numChars,'#') + makeLine(numSpaces,' ');
}

function makeIsoscelesTriangle(height) {
isoscelesTriangle = '';
for (let i = 0; i < height; i++) {
isoscelesTriangle += makeSpaceLine(height - i - 1, 2 * i + 1) + '\n';
}
return isoscelesTriangle.trimEnd();
}

console.log(makeIsoscelesTriangle(10));

Loading…
Cancel
Save