文章目录
循环
一.买本、笔、书
var count = 0;
for (var shu = 0; shu <= 7; shu++) {
for (var bi = 0; bi <= 30; bi++) {
for (var ben = 0; ben <= 50; ben++) {
if (shu * 20 + bi * 5 + ben * 3 == 150 && bi == 10) {
document.writeln("书" + shu + '笔' + bi + '本' + ben + "<br>");
count++;
}
}
}
}
document.writeln('有' + count + "种买法");
二.百马百石(34种)
var x,y,z;
var count=0;
for(x=0;x<=50;x++)
{
for(y=0;y<=100;y++)
{
for(z=0;z<=100;z++)
{
if(x*2+y*1+z/2*1==100&&x+y+z==100)
{
count++;
document.writeln('大马'+x+'中马'+y+'小马'+z,'<br />');
document.writeln(count+'种');
}
}
}
}
三.百钱百鸡(3种)
var x,y,z;
var count=0;
for(x=1;x<=20;x++)
{
for(y=1;y<=33;y++)
{
for(z=1;z<=300;z++)
{
if(x*5+y*3+z/3*1==100&&x+y+z==100)
{
count++;
document.writeln('公鸡'+x+'母鸡'+y+'小鸡'+z,'<br />');
document.writeln(count+'种');
}
}
}
}
四.搬砖
题目:36 块砖,36 人搬,男搬4,女搬3,两个小孩抬1 砖,
要求一次全搬完,问男、女和小孩各若干?
五.三位数
有一个三位数,个位数字比百位数字大,而百位数字比十位数字大,并且各位数字之和等于各位数字相乘之积。求这个三位数
六.蜘蛛腿
蜘蛛有8条腿,蜻蜓有6条腿和2对翅膀。蝉有6条腿和一对翅膀。
三种虫子一共有18只,共有118条腿和20对翅膀。问每种虫子各有多少只
各种数
一.1-10000的回文数
//1-10000的回文数
function testHuiWenShu() {
// var num = 121;
for (var i = 1; i < 10000; i++) {
var num1 = String(i);
if (num1.length == 3) {
if (num1[0] == num1[2]) {
document.writeln(num1);
}
}
else if (num1.length == 4) {
if (num1[0] == num1[3] && num1[1] == num1[2]) {
document.writeln(num1);
}
}
else if (num1.length == 1) {
document.writeln(num1);
}
else if (num1.length == 2) {
if (num1[0] == num1[1]) {
document.writeln(num1);
}
}
}
}
二.回文数和平方回文数
function huiwen() {
for (var num = 100; num <= 3000; num++) { //num = 1234
var num1 = String(num);
var newNum = '';
for (var i = num1.length - 1; i >= 0; i--) {
newNum += num1[i]; //4321 1234
if (newNum == num1) {
document.writeln(num1 + '回文数');
//对数字进行开平方, 如果数字是121开平方后得到11
var n = parseInt(Math.sqrt(newNum));
if (n * n == num) {
document.writeln(num1 + '平方回文数');
}
}
}
}
}
三.水仙花数
function shuixianhua() {
var num = Number(prompt('请输入一个数字')); ///string- 数字
var bai = parseInt(num / 100);
var shi = parseInt(num / 10 % 10);
var ge = parseInt(num % 10);
// if (bai * bai * bai + shi * shi * shi + ge * ge * ge == num) {
if (Math.pow(bai, 3) + Math.pow(shi, 3) + Math.pow(ge, 3) == num) {
document.write(num + '是一个水仙花数');
}
}
三.1-100每个数的因子
function yinzi() {
for (var num = 1; num <= 100; num++) {
document.writeln(num + '的因子有:');
for (var i = 1; i <= num; i++) {
if (num % i == 0) {
document.writeln(i);
}
}
document.writeln("<br>");
}
}
四.1-100的完数
function wanshu() {
for (var num = 1; num <= 100; num++) {
var sum = 0;
for (var yz = 1; yz < num; yz++) {
if (num % yz == 0) {
sum += yz;
}
}
if (sum == num) {
document.writeln(num + '是一个完数');
}
}
}
五.质数
for (var num = 2; num <= 100; num++) {
var flag = true; //0代表是一个质数
for (var i = 2; i < num; i++) { //1和本身
if (num % i == 0) {
// document.writeln('不是一个质数');
flag = false; //不是一个质数
break;
}
}
if (flag == true) {
document.writeln(num + '是一个质数');
}
}
六.丑数
var num = Number(prompt('请输入一个数字'));
while (num > 1) {
if (num % 2 == 0) {
num /= 2; //15
} else if (num % 3 == 0) {
num /= 3; //5
} else if (num % 5 == 0) {
num /= 5;
}
else {
document.writeln('不是一个丑数');
break;
}
}
if (num == 1) {
document.writeln('是一个丑数');
}
七.加密数字
function test2() {
var num = 2548;
var newNum = 0;
var qian = parseInt((parseInt(num / 1000) + 5) % 10);
var bai = parseInt((parseInt(num / 100 % 10) + 5) % 10);
var shi = parseInt((parseInt(num / 10 % 10) + 5) % 10);
var ge = parseInt((parseInt(num % 10) + 5) % 10);
newNum = ge * 1000 + shi * 100 + bai * 10 + qian;
document.writeln(newNum);
}
八.猴子吃桃(190)
公园里有一些桃子,猴子每天吃掉一半以后扔掉一个,第6天的时候发现还剩下1个桃子,问开始有几个桃子?
function tz() {
var tz = 1;
for (var t = 1; t < 7; t++) {
tz = (tz+1)*2;
}
document.writeln(tz);
}
公园里有200个桃子,猴子每天吃掉一半以后扔掉一个,问6天以后还剩余多少桃子?
var tao = 200;
for (var i = 0; i < 6; i++) {
tao = parseInt(tao / 2) - 1;
}
alert(tao);
九.小芳存零花钱(76)
小芳的妈妈每天给她2.5元钱,她都会存起来,但是,每当这一天是存钱的第5天或者5的倍数的话,她都会花去6元钱,请问,经过多少天,小芳才可以存到100元钱
function xiaofang() {
//钱
var money = 0;
var tian = 0;
while (true) {
tian++;
money += 2.5;
if (tian % 5 == 0) {
money -= 6;
}
if (money == 100) {
break;
}
}
document.writeln('第' + tian + '天攒了' + money + '钱');
}
十.字符串反转
function test3() {
var num = prompt('请输入内容');
var str = '';
for (var i = num.length - 1; i >= 0; i--) {
str += num[i];
}
document.writeln(str);
}
十一.兔子
function tuzi() {
var sum = 0; //兔子和
var youtu = 1;
var xiaotu = 0;
var chengtu = 0;
for (var yue = 1; yue <= 10; yue++) {
if (yue == 1) {
xiaotu = 0;
chengtu = 0;
sum = 1;
}
else {
chengtu = xiaotu + chengtu;
xiaotu = youtu;
youtu = chengtu;
sum = chengtu + xiaotu + youtu;
}
}
document.writeln('兔子总和是' + sum); //55
document.writeln('成兔是' + chengtu); //21
document.writeln('小兔是' + xiaotu); //13
document.writeln('幼兔' + youtu); //21
}
十二.获取字符串中字符出现的次数
function zfc() {
var str = 'hello world';
var num = 0; //l字符出现的次数
var num2 = 0; //o字符出现的次数 2
for (var i = 0; i < str.length; i++) {
if (str[i] == 'l') {
num++;
} else if (str[i] == 'o') {
num2++;
}
}
document.writeln(num2); //2
document.writeln(num); //3
}
十三.平方回文数
function hw() {
var n = prompt('输入一个范围');
var count = 0;
document.writeln(' <table style="border: 1px solid black;">');
for (var a = 1; a <= n; a++) {
// 把a倒着来,和原值判断
var b = String(a); //'10' [0][1]
var c = '';
for (var i = b.length - 1; i >= 0; i--) {
c += b[i];
}
if (c == b) {
var fang = parseInt(Math.sqrt(c)); //开方后
if (fang * fang == c) {
document.writeln(' <tr> <td style="border: 1px solid black;">' + c + '</td></tr>');
count++;
}
}
}
document.writeln(' </table>')
document.writeln(count);
}
十四.打印图形
function tuxing2() {
for (var i = 1; i <= 4; i++) { //行
for (var j = 4; j >= i; j--) {
document.writeln('*');
}
for (var k = 1; k <= i; k++) { //i=2 k=1,2 i=3 k=123
document.writeln(k);
}
for (var f = (i - 1); f >= 1; f--) {
document.writeln(f);
}
document.writeln('<br>');
}
}
十五.韩信点兵
韩信带兵不足百人,3人一行排列多一人,5人一行排列正好,7人一行排列少两人,求士兵的人数?
for (var i = 1; i <= 100; i++) {
if (i % 3 == 1 && i % 5 == 0 && i % 7 == 5) {
document.writeln(i);
}
}
for (var i = 1; i <= 1500; i++) {
if (i % 3 == 2 && i % 5 == 4 && i % 7 == 6) {
document.writeln(i);
}
}
图形打印-菱形
for (var i = 1; i <= 4; i++) {
for (var j = 1; j <= 5; j++) {
document.writeln('*');
}
document.writeln('<br>');
}
for (var i = 1; i <= 4; i++) { // * **
for (var j = 1; j <= i; j++) {
document.writeln('*');
}
document.writeln('<br>');
}
for (var i = 1; i <= 4; i++) {
//将图形分为两部分,左边的空格和右边的星
for (var j = 3; j >= i; j--) {
document.writeln(' ');
}
//这个用来打印星
for (var j = 1; j <= 2 * i - 1; j++) {
document.writeln('*');
}
document.writeln('<br>');
}
//上半部分的三角
for (var i = 1; i <= 4; i++) {
//左边部分的空格
for (var j = 4; j >= i; j--) {
document.write(' ');
}
//右边的星
for (var k = 1; k <= 2 * i - 1; k++) {
if (k == 1 || k == 2 * i - 1) {
document.write('*');
} else {
document.write(' ');
}
}
document.write("<br>");
}
//下半部分的三角
for (var i = 1; i <= 3; i++) {
//左边的空格
for (var j = 0; j <= i; j++) {
document.write(' ');
}
//右边的星
for (var k = 5; k >= 2 * i - 1; k--) {
if (k == 5 || k == 2 * i - 1) {
document.write('*');
} else {
document.write(' ');
}
}
document.write("<br>");
}