利用sql语句解决简单的数学题

简介: 今天在解决一个问题的时候,发现自己的数学水平严重下降,现在是光有思路没有答案,自己简单算了几个答案,还是不太满意。 最后尝试写了一个简单的pl/sql就解决了。 问题是这样的,一个系统的处理结果会提供两个参数,用这个参数来衡量系统的情况,一个我们设为pass_ratio,另一个设为fail_ratio. 我们假设需要投入时间分别设为x,y 就是返回pass_ratio需要的时间为x,返回fail_ratio的时间为y 需要从x,y中得到一个最优组合。
今天在解决一个问题的时候,发现自己的数学水平严重下降,现在是光有思路没有答案,自己简单算了几个答案,还是不太满意。
最后尝试写了一个简单的pl/sql就解决了。
问题是这样的,一个系统的处理结果会提供两个参数,用这个参数来衡量系统的情况,一个我们设为pass_ratio,另一个设为fail_ratio. 我们假设需要投入时间分别设为x,y
就是返回pass_ratio需要的时间为x,返回fail_ratio的时间为y
需要从x,y中得到一个最优组合。
如果返回的结果为pass_ratio的值,会有一个公式 pass_ratio*x-x-y>0
如果返回的结果为fail_rat io的值,会有一个公式$fail_ratio*y-y-x>0
我写了下面的pl/sql来简单实现,还是用穷举法来做,在这个方面,电脑还是比人脑强大的多啊。
pass_ratio=$1
fail_ratio=$2
sqlplus -s  n1/n1 set serveroutput on
set feedback off
begin
for x in 5..50 loop
  for y in 5..50 loop
  if($pass_ratio*x-x-y>0 and $fail_ratio*y-y-x>-2) then
dbms_output.put_line($pass_ratio||' '||$fail_ratio||' '||x||' '||y||' pass:'||to_number($pass_ratio*x-x-y)*0.88||'-- fail:'||to_number($fail_ratio*y-y-x)*0.88);
end if;
 end loop;
end loop;
end;
/
EOF


输出的结果如下:
 > ksh a.sh 1.5 3.1
1.5 3.1 23 11 pass:.44-- fail:.088
1.5 3.1 25 12 pass:.44-- fail:.176
1.5 3.1 27 13 pass:.44-- fail:.264
1.5 3.1 29 14 pass:.44-- fail:.352
1.5 3.1 31 15 pass:.44-- fail:.44
1.5 3.1 33 16 pass:.44-- fail:.528
1.5 3.1 35 17 pass:.44-- fail:.616
1.5 3.1 37 18 pass:.44-- fail:.704
1.5 3.1 39 19 pass:.44-- fail:.792
1.5 3.1 41 20 pass:.44-- fail:.88
1.5 3.1 43 21 pass:.44-- fail:.968
1.5 3.1 44 21 pass:.88-- fail:.088
1.5 3.1 45 22 pass:.44-- fail:1.056
1.5 3.1 46 22 pass:.88-- fail:.176
1.5 3.1 47 23 pass:.44-- fail:1.144
1.5 3.1 48 23 pass:.88-- fail:.264
1.5 3.1 49 24 pass:.44-- fail:1.232
1.5 3.1 50 24 pass:.88-- fail:.352

看输出的结果自己的大脑是算不出来的。还是写个程序来的方便。:)
目录
相关文章
|
SQL XML Oracle
Mybatis动态SQL语句查询,实现一个参数 可查询多个字段。
Mybatis动态SQL语句查询,实现一个参数 可查询多个字段。
697 0
Mybatis动态SQL语句查询,实现一个参数 可查询多个字段。
|
8月前
|
SQL Java 数据库连接
如何在 Java 代码中使用 JSqlParser 解析复杂的 SQL 语句?
大家好,我是 V 哥。JSqlParser 是一个用于解析 SQL 语句的 Java 库,可将 SQL 解析为 Java 对象树,支持多种 SQL 类型(如 `SELECT`、`INSERT` 等)。它适用于 SQL 分析、修改、生成和验证等场景。通过 Maven 或 Gradle 安装后,可以方便地在 Java 代码中使用。
2564 11
|
SQL 存储 缓存
一文搞懂MySQL中一条SQL语句是如何执行的
一文搞懂MySQL中一条SQL语句是如何执行的
|
SQL Oracle 关系型数据库
mysql和oracle 命令行执行sql文件 数据库执行sql文件 执行sql语句
mysql和oracle 命令行执行sql文件 数据库执行sql文件 执行sql语句
208 0
|
SQL 存储 关系型数据库
MySQL的第一篇文章——了解数据库、简单的SQL语句
MySQL的第一篇文章——了解数据库、简单的SQL语句
|
SQL Python
Pandas与SQL的数据操作语句对照
Pandas与SQL的数据操作语句对照
274 0
Pandas与SQL的数据操作语句对照
|
SQL 程序员 开发工具
【Sql Server】基础之分组查询重复出现多条记录的SQL语句,以及group by和having、min函数运用
基础之分组查询重复出现多条记录的SQL语句,以及group by和having、min函数运用
732 0
【Sql Server】基础之分组查询重复出现多条记录的SQL语句,以及group by和having、min函数运用
SQL 查询表中每门课程成绩最好的前n名学生 优于group by语句的方法
SQL 查询表中每门课程成绩最好的前n名学生 优于group by语句的方法
SQL 查询表中每门课程成绩最好的前n名学生 优于group by语句的方法
|
SQL 数据库 数据安全/隐私保护
使用SQL语句 查询电话号码 加密显示
使用SQL语句 查询电话号码 加密显示
462 0
使用SQL语句 查询电话号码 加密显示
|
SQL 存储 安全
MYSQL数据库初窥门径, SQL语句地熟练使用, 图形化界面提高效率
MYSQL数据库初窥门径, SQL语句地熟练使用, 图形化界面提高效率
MYSQL数据库初窥门径, SQL语句地熟练使用, 图形化界面提高效率