-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathexercicios-semana.js
84 lines (69 loc) · 2.11 KB
/
exercicios-semana.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
// 1) Calcule a potência de 2 elevado a um número específico. Deve usar um loop (não usar `Math.pow()`).
// Exemplo:
// potenciaDeDois(10) // 1024
function potenciaDeDois(numero) {
let resultado = 1
while (numero > 0) {
resultado *= 2
numero -= 1
}
return resultado
}
// 2) Crie uma função que receba três números e determine se um número é maior que outro.
// Exemplo:
// retornaNumMaior(10, 20, 30) // 30
function retornaNumMaior(num1, num2, num3) {
let maior = num1;
if (num1 > num2) {
if (num1 > num3) {
maior = num1
} else {
maior = num3
}
} else if (num2 > num3) {
maior = num2
} else {
maior = num3
}
return maior
}
// ***************
// DESAFIOS!
// Crie uma função que determina se um número é primo e retorne true ou false conforme o caso. Em matemática, um número primo é um número natural maior que 1 que é divisível somente por ele mesmo e 1. Utilize o operador módulo (`%`) para determinar se um número é divisível por outro.
function numPrimo(num) {
if (num === 1) {
return true
}
for (let i = 2; i < num; i++) {
if (num % i === 0) {
return false
}
}
return true
}
// Crie uma função que conte o número de vogais em uma `string` e retorne o número de vogais.
// Exemplo:
// function contaVogais("carro") // 2
function contaVogais(string) {
const vogais = 'aeiou'
const arrayMinusculas = string.toLowerCase()
let totalVogais = 0
for (let i = 0; i < arrayMinusculas.length; i += 1) {
for (let j = 0; j < vogais.length; j += 1) {
if (arrayMinusculas[i] === vogais[j]) {
totalVogais += 1
}
}
}
return totalVogais
}
// Use estruturas de controle para inverter uma array de inteiros. A função deverá receber uma array de números e retornar uma array com a ordem dos elementos invertida. Não é válido utilizar `arr.reverse()`.
// Exemplo:
// function inverteArray([1, 2, 3, 4]) // [4, 3, 2, 1]
function inverteArray(array) {
const arrayInvertida = []
for (let i = array.length - 1; i >= 0; i -= 1) {
arrayInvertida.push(array[i])
}
return arrayInvertida
}