-
Notifications
You must be signed in to change notification settings - Fork 0
/
factors.js
40 lines (32 loc) · 910 Bytes
/
factors.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
const { SlashCommandBuilder } = require('discord.js')
module.exports = {
data: new SlashCommandBuilder()
.setName('factors')
.setDescription('Find the factors of a number')
.addIntegerOption((option) => option
.setName('number')
.setDescription('The number of which you want to find the factors of')
.setRequired(true)
),
async execute(interaction) {
let number = interaction.options.getInteger('number')
if (number === 1) {
await interaction.reply('1')
return
}
let numfactors = []
if (number < 0) {
numfactors.push(-1)
number *= -1
}
for (let i = 1; i <= number; i++) {
if (number % i === 0) {
numfactors.push(i)
}
}
numfactors = numfactors.sort(function(a, b){return a-b})
numfactorsstr = numfactors.toString()
numfactorsstr = numfactors.toString().replace(/,/g, ', ')
await interaction.reply('```' + numfactorsstr + '```')
}
}