# homework-fontend-02-02
**Repository Path**: sfljskeprim_admin/homework-fontend-02-02
## Basic Information
- **Project Name**: homework-fontend-02-02
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2021-10-29
- **Last Updated**: 2021-10-29
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
1. 使用函数方法书写一段程序,判断一个数是不是完美数。
如果一个数恰好等于它的因数之和,则称该数为“完美数”。
例如:第1个完全数是6,它有因数1、2、3、6,除去它本身6外,其余3个数相加,1+2+3=6。
code/work01.html
```html
Title
```
2. 盈数是一种特殊的自然数,除去它本身以外的一切正约数的和大于它本身。与完美数类似。
使用函数方法编写一段程序。
输出1~100的所有盈数。
code/work02.html
```html
Title
```
3. 用户输入一个整数n:
求1! + 2! + 3! + 4! + …… + n!的和
叹号表示阶乘,如4! = 1 * 2 * 3 * 4
code/work03.html
```html
Title
```
4. 求一个三位数,叫做“喇叭花数”,该三位数等与其每位数字的阶乘之和。输出100~999的所有喇叭花数。
code/work04.html
```html
Title
```
5. 如果整数A 的全部约数(包括1,不包括A 本身)之和等于B,且整数B 的全部约数
(包括1,不包括B 本身)之和等于A,则称整数A和B是一对亲密数。
求2000 以内的全部亲密数。
code/work05.html
```html
Title
```
6. 验证哥德巴赫猜想。一个偶数可以拆分成两个质数之和。
code/work06.html
```html
Title
```
7. 编写函数rev(char) 实现将字符串char倒置
比如rev("spring") 返回"gnirps"
code/work07.html
```html
Title
```
8. 将字符串"i come from beijing"倒置,即控制台输出"beijing from come i"
语句直接写在程序中,不需要用户输入
code/work08.html
```html
Title
```
9. 编写函数rightchange(char,n) 实现字符串char循环右移n位。
比如rightchange("abcdefg",2) 返回"fgabcde"
code/work09.html
```html
Title
```
10. 编写函数maxr(char) 返回字符串char中最长的连续重复字母
比如maxr("mmmiijjjjkkkkkkssptr") 返回"kkkkkk"
code/work10.html
```html
Title
```
11. 有10个学生的成绩存在数组中,请统计大于等于平均成绩的人数。
成绩直接以数组形式写在程序中,不需要用户输入。
```html
Title
```
12. 将"i love javascript very much"的每个单词的第一个字母,变为大写。
```html
Title
```
13. 求一组数中的最大值和最小值,以及所在位置的下标。
```html
Title
```
14. 将数组用 | 或其他符号连接成一个字符串。
```javascript
let nums = [0,1,2,3,0,4,5,6,0,7,8];
let str = nums.join("|");
console.log(str);
```
15. 将数组中值为 0 的项去掉,将不为 0 的值存入一个新的数组,生成新的数组。
```html
Title
```
16. 数组去重;
\```js
[1,1,1,2,2,3,4,5,6,3,4,2,4,1,] ---> [1,2,3,4,5,6]
\```
```html
var arr = [1,1,1,4,4,2,1,3,3];
var result = [];
for(var i = 0;i < arr.length ; i++){
var v = arr[i];
if (!result.includes(v)) {
result.push(v);
}
}
console.log(result);//1,4,2,3
```
17. 数组排序;
\```js
[3,4,1,2,6,5] ---> [1,2,3,4,5,6]
\```
code/work17.html
```html
Title
```
18. 数组转对象;
\```js
['a','a','a','b','b','c','c','c','c','d','d','d','d']
--->
{
a: 3,
b: 2,
c: 4,
d: 4
}
\```
code/work18.html
```html
Title
```
19. 使用js将99乘法表输出在控制台
```html
Title
```
20. 买卖股票的最佳时机;给定一个数组,它的第i个元素是一支给定股票第i天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票一次)设计一个算法来计算你所能获取的最大利润。
注意:你不能再买入股票前卖出股票
示例:
\```
输入:[7, 1, 5, 3, 6, 4]
输出:5
解释:在第2天(当天股票价格等于1)的时候买入,在第五天(当天股票价格等于6)的时候卖出,最大利润为 6 - 1 = 5。
注意:利润不能使7 - 1 = 6,因为第二天的价格为1,第一天的价格为7,你是不可能在第二天买入股票然后等到第一天卖出的
\```
```html
Title
```