为了账号安全,请及时绑定邮箱和手机立即绑定

编写代码生成所有数对,其平方和等于 100

编写代码生成所有数对,其平方和等于 100

PHP
紫衣仙女 2022-01-08 14:39:10
编写代码生成所有数对,其平方和等于 100 即:- x^2 + y^2 = 100<?phpfunction getPossibleSquare($limit){    $numbers = [];    $number = 0;    while(pow($number, 2) < $limit) {        array_push($numbers, $number);        $number++;    }    return $numbers;}function generateCombinations($numbers, $equals){    $combinations = [];    foreach($numbers as $x) {        foreach($numbers as $y) {            if( (pow($x, 2) + pow($y, 2)) == $equals ) {                array_push($combinations, [$x, $y]);            }        }    }    return $combinations;}$limit = 100;$combinations = generateCombinations( getPossibleSquare($limit), $limit );
查看完整描述

2 回答

?
开满天机

TA贡献1786条经验 获得超13个赞

C语言的程序是:


int num , i , j , root;

scanf ( "%d", &num );//Input the number

root = sqrt( num ); //We don't need to check the square upto input number. Just upto 

                  //Its square root

for( i = 1 ; i < root ; i++ )

{

    j = i;

    for( ; j < root ; j++ )

    {

        if( ( ( i*i ) + ( j*j ) ) == num ) //If square is equal to number

        {

            printf( "%d %d\n",i,j );      //Print the combination

        }

    }

}


查看完整回答
反对 回复 2022-01-08
?
守着星空守着你

TA贡献1799条经验 获得超8个赞

此代码用于 INT 号:$limit => 100


<?php

    $limit = 100;  

    $max_pair_value = ceil(sqrt($limit));


    for($i = 0; $i<=$max_pair_value; $i++){

        for($j = $i; $j<=$max_pair_value; $j++){

            $answer = pow($i,2) + pow($j, 2);  //YOUR CONDITION

            if($answer == $limit){

                $pair[] = [0=>$i, 1=>$j];

            }

        }

    }

    print_r($pair);  //UNIQUE PAIR

?>


查看完整回答
反对 回复 2022-01-08
  • 2 回答
  • 0 关注
  • 174 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号