Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions modulo6/recursividade/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
node_modules
package-lock.json
build
13 changes: 13 additions & 0 deletions modulo6/recursividade/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"scripts": {
"exercicio1": "tsc && node ./build/Exercicio1/index.js",
"exercicio2": "tsc && node ./build/Exercicio2/index.js",
"exercicio3": "tsc && node ./build/Exercicio3/index.js",
"exercicio4": "tsc && node ./build/Exercicio4/index.js"
},
"devDependencies": {
"@types/node": "^15.3.0",
"ts-node-dev": "^1.1.6",
"typescript": "^4.2.4"
}
}
18 changes: 18 additions & 0 deletions modulo6/recursividade/src/Exercicio1/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
//a

const printNumbers = (n: number) => {
if (n >= 0) {
printNumbers(n - 1);
console.log(n);
}
};


//b

const printNumbers2 = (n: number) => {
if (n >= 0) {
console.log(n);
printNumbers2(n - 1);
}
};
12 changes: 12 additions & 0 deletions modulo6/recursividade/src/Exercicio2/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
export const calculateSumTo = (n: number, acc: number = 0): number => {
if (n === 0) {
return acc;
}
return calculateSumTo(n - 1, acc + n);
};


// Exemplos de uso:
console.log(calculateSumTo(3));
console.log(calculateSumTo(10));
console.log(calculateSumTo(100));
13 changes: 13 additions & 0 deletions modulo6/recursividade/src/Exercicio3/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
export const calculateSumTo = (n: number): number => {
var sum = 0
for (var i = 0 ; i <= n ; i++) {
sum += i;
}
return sum;
};

// Exemplos de uso:
console.log(calculateSumTo(3));
console.log(calculateSumTo(10));
console.log(calculateSumTo(100));

10 changes: 10 additions & 0 deletions modulo6/recursividade/src/Exercicio4/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
export const printArray = (arr: number[], i: number = arr.length - 1) => {
if (i >= 0) {
printArray(arr, i - 1);
console.log(`Elemento ${i}: `, arr[i]);
}
};


const array = [1, 2, 3, 4];
printArray(array);
14 changes: 14 additions & 0 deletions modulo6/recursividade/tsconfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"sourceMap": true,
"outDir": "./build",
"rootDir": "./src",
"removeComments": true,
"strict": true,
"esModuleInterop": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true
}
}