JavaScript中简单的逻辑思维题

1.输入半径,高,求圆柱体的面积,和体积,把体积、面积返回给函数调用者,然后由调用者输出面积和体积大小.
    圆面积:PI*R*R
圆周长:2*PI*R

圆柱体表面积s:(2PIR)h+(PIRR)2
圆柱体积v:(PI
R
R)*h

    var r= parseInt(prompt("请输入半径")),h=parseInt(prompt("请输入高")),mianji,tiji; //声明变量
    //求圆柱体面积,体积
    function sums (r,h) {
       return (2*Math.PI*r)*h+(Math.PI*r*r)*2;  //圆柱面积计算公式
    }
    function sumv (r,h) {
        return (Math.PI*r*r)*h; //圆柱体积计算公式
    }
  mianji=sums(r,h)
    tiji=sums(r,h)
  document.write(mianji)
document.write(tiji)
2.输入一个三位数,判定它是否是水仙花数(输出是否是水仙花数的结果必须由调用者来输出,不能由函数内部输出)

g=n%10;

s=parseInt(n/10)%10;

b=parseInt(n/100)

var num=parseInt(prompt(“请输入一个三位数”)),g,s,b;
function hua(num) {
b=parseInt(num/100);
s=parseInt(num%100/10);
g=parseInt(num%10);
if (num==ggg+bbb+sss){
return true;
}else {
return false;
}
}
var result=hua(num);
if (result){
document.write(“这是一个水仙花数”)
}else {
document.write(“这不是一个水仙花数”)
}

3.输入三个数(0-9之间) 找出最大数和最小数,然后组成最大的三位数。
var a =parseInt(prompt("请输入第一个数字"))
var b = parseInt(prompt("请输入第二个数字"))
var c = parseInt(prompt("请输入第三个数字"))
 function  max(a,b,c) {
     var max ,mid , min ;
     var x=max(a,b);//存储ab最大值
     var y=max(x,c)//y就是abc最大值
     return max*100+mid*10+min;
 }

 function max(a,b) {
     return a>b?a:b
 }
 function min(a,b) {
     return a>b?a:b
 }
alert(max(a,b,c))
4.提供一个函数,此函数用来打印由“*”组成的矩形,但是行数和列数,
做为形参,由调用者来给具体的行数和列数,最后由函数打印出对应行数列数大小的矩形
var row=prompt('请输入矩形的行数')
var clo=prompt('请输入矩形的列数')

function juxing(r,c){
    for(i=0;i<r;i++){
        for( j=0;j<c;j++){
            document.write('*')
        }
        document.write("
"
) } } juxing(row,clo)
5.如4题一样,最后打出等腰三角形
        var row =prompt('请输入三角形的行数')
        var col =prompt('请输入三角形的列数')
function san(row,col){
    for(i=0;i<row;i++){
        for(j=0;j<col;j++){
            document.write('*');
        }
        document.write('
'
); } }
6.输入2个日期 (年月日),计算两个日期相差多少天?(改写成函数,体会重用原则)
   var year1=parseInt(prompt("请输入第一个年份"))
    var month1=parseInt(prompt("请输入第一个月份"))
    var day1=parseInt(prompt("请输入第一个天数"))
    var year2=parseInt(prompt("请输入第一个年份"))
    var month2=parseInt(prompt("请输入第一个月份"))
    var day2=parseInt(prompt("请输入第一个天数"))
//    相差天数
    var d= totalday(year1,month1,day1)-totalday(year2,month2,day2);
//   相差年份
    var dYear=(year1-year2)*365;
    if (year1>year2){
        for(var y=year2+1;y<year2-1;y++){
            if(){
                day++;
            }
        }
    }
7. 写一个函数,有唯一参数接口1个,参数类型为number; 返回值为1,表示是质数;返回值为0,表示不是质数。
var num=parseInt(prompt("请输入一个大于1的正整数"));
var str=num+"=";
function number(num) {
    if(num>0){
        for(var i=2 ;i<num;i++){
            if (num%i==0){
                num=num/i;
                if(num==1){
                    str+=i;
                    break;
                }
                else {
                    str+=i+"*";
                    i--;
                }
            }
        }
    }
}

你可能感兴趣的:(JavaScript中简单的逻辑思维题)