1.序列:1,2,3,5,8,13…。找出第20个数是多少?得出前20个数之和是多少?
function adds() {
var arr = [], sum = 3;
for (let i = 2; i < 20; i++) {
arr[0] = 1, arr[1] = 2;
arr[i] = arr[i - 1] + arr[i - 2];
sum += arr[i]
}
document.write("数组:" + arr, "<br>第二十个数:" + arr[19], "<br>总和:" + sum);
}
adds()
document.write("<br>———————————<br>")
2:用*画等腰三角形
提示:画空格用 
function drow(n) {
var i, j;
for (i = 1; i <= n; i++) {
for (j = 1; j <= n - i; j++) {
document.write(" ");
}
for (j = 1; j <= 2 * i - 1; j++) {
document.write("*");
}
document.write("<br>")
}
}
drow(4)
3.菱形
function diamond(n) {
var n = parseInt(prompt("输入行数:(请尽可能输入奇数)"))
if (n % 2 == 0) {
n = n + 1;
}
var up = parseInt(n / 2) + 1;
for (var i = 1; i <= up; i++) { //要循环的行数
for (var k = 0; k < up - i; k++) { //要循环的空格数
document.write('   ');
}
for (var j = 0; j < 2 * i - 1; j++) { //要打印的列数
document.write('*  ');
}
document.write('<br>');
}
for (var i = up - 1; i >= 1; i--) { //要循环的行数
for (var k = 0; k < up - i; k++) { //要循环的空格数
document.write('   ');
}
for (var j = 0; j < 2 * i - 1; j++) { //要打印的列数
document.write('*  ');
}
document.write('<br>');
}
}
diamond()
4.空心菱形
var n = prompt("请输入n");
n = 2 * n - 1;
var temp = parseInt(n / 2 + 1);
for (var i = 0; i < n; i++) {
for (var j = 1; j <= n; j++) {
if (temp <= i) {
if (j == (i - temp) + 2 || j == 2 * temp - i + parseInt(n / 2 - 1)) {
document.writeln("*");
}
else {
document.writeln(" ");
}
}
else {
if (j == temp - i || j == temp + i) {
document.writeln("*");
}
else {
document.writeln(" ");
}
}
}
document.writeln("<br/>");
}
5.计算饭钱
有30个人,其中有男人、女人和小孩,在一家饭馆里吃饭 共花了500元,每个男人各花30元,
每个女人各花20元,每个小孩各花10元,问男人、女人和小孩各有几人?
function money() {
for (let i = 1; i < 30; i++) {
for (let j = 1; j < 30 - i; j++) {
for (let x = 1; x < 30 - i - j; x++) {
if (i * 30 + j * 20 + x * 10 == 500) {
document.write("男人:"+i+"个 ","女人:"+j+"个 " , "小孩:"+x+"个 " + "<br>")
}
}
}
}
}
money()
6.将一个正整数分解质因数。例如:输入90,打印出90=2335。输入60=2235。
function resolve() {
var num = parseInt(prompt("输入:"))
document.write(num + "=");
for (let i = 2; i < num / 2; i++) {
if (num % i == 0) {
//输出第二个因数之后的格式 *质因数
document.write(i + "*");
num = num / i;
//为了保证重复的质因数能够输出,需要将i减少一位
i--;
}
}
document.write(num)
}
resolve();
7、抓球问题:有红球5个,黑球7个,白球9个,取出12个有多少种组合 分别是什么,
var sum=0;
for (var i=0;i<=5;i++){
for (var j=0;j<=7;j++){
for(var k=0;k<=9;k++){
if(i+k+j==12){
sum=sum+1;
document.write('———————'+"红:"+i+"黑:"+j+"白:"+k);
if (sum%3==0) {
document.write("<br />");
}
}
}
}
}
document.write("<br />"+"共有"+sum+"种可能性");
8、组合问题:用1元纸币兑换1分,2分和5分的硬币,要求兑换总数为50枚,
问可以有多少种组合,每种组合对应1分,2分,5分分别是多少?
i代表1分,j代表2分,k代表5分
for (let i = 1; i < 100; i++) {
for (let j = 1; j < 50; j++) {
for (let k = 1; k < 20; k++) {
if (i * 1 + j * 2 + k * 5 == 100) {
console.log(i + "个1分" + j + "个2分" + k + "个5分");
}
}
}
}
9、三层循环 实现水仙花
for (let i = 1; i < 10; i++) {
for (let j = 0; j < 10; j++) {
for (let k = 0; k < 10; k++) {
if (i **3 + j ** 3 + k ** 3 == i * 100 + j * 10 + k) {
console.log("100-999的水仙花数:" +i+j+k);
}
}
}
}
// 153,370,371,407。