!/usr/bin/env python2
-*- coding: utf-8 -*-
"""
Created on Thu Sep  6 10:16:37 2018
@author: liuxing
二分法求解一元多次方程
"""import tensorflow as tfdef f(x):
y=pow(x,3)*3+pow(x,2)*2-19
return ydef tRange(a,b,x,fa,fb,fx):
b=x
a=a
x=tf.divide(tf.add(a,b),2)
fa=fa
fb=fx
fx=f(x)
return (a,b,x,fa,fb,fx)def fRange(a,b,x,fa,fb,fx):
b=b
a=x
x=tf.divide(tf.add(a,b),2)
fa=fx
fb=fb
fx=f(x)
return (a,b,x,fa,fb,fx) def body(a,b,x,fa,fb,fx,i,n):
a,b,x,fa,fb,fx =tf.cond(tf.less(tf.multiply(fa,fx),0),lambda: tRange(a,b,x,fa,fb,fx),lambda: fRange(a,b,x,fa,fb,fx))
return (tf.Print(a,[a],"a:"),tf.Print(b,[b],"b:"),tf.Print(x,[x],"x:"),tf.Print(fa,[fa],"fa:"),tf.Print(fb,[fb],"fb:"),tf.Print(fx,[fx],"fx:"),tf.Print(i+1,[i],"i:"),tf.Print(n,[n],"n:"))def c(a,b,x,fa,fb,fx,i,n):
t1=tf.greater(tf.divide(tf.subtract(b,a),2),tol)
t2=tf.not_equal(fx,0)
t3=tf.less(i,n)
return tf.logical_and(tf.logical_and(t1,t2),t3)a = tf.placeholder(tf.float32,shape=(),name="mya")
b = tf.placeholder(tf.float32,shape=(),name="myb")
x = tf.placeholder(tf.float32,shape=(),name="myx")
tol= tf.placeholder(tf.float32,shape=(),name="mytol")
fa = tf.constant(0,dtype=tf.float32,name="myfa")
fb = tf.constant(0,dtype=tf.float32,name="myfb")
fx = tf.constant(0,dtype=tf.float32,name="myfx")
i = tf.constant(0,dtype=tf.int32,name="myi")
n = tf.constant(0,dtype=tf.int32,name="myi")input_dict={a:-10,b:10,x:0,fa:f(-10),fb:f(10),fx:f(0),tol:1e-7,n:100}
res = tf.while_loop(c, body, loop_vars=[a,b,x,fa,fb,fx,i,n])with tf.Session() as sess:
y=sess.run(res,feed_dict=input_dict)
print y



n:[100]
i:[20]
x:[1.65252209]
b:[1.65252686]a:[1.65251732]
fx:[-7.43866e-05]fa:[-0.000221252441]fb:[7.2479248e-05]

n:[100]
i:[21]
x:[1.65252447]
b:[1.65252686]
fa:[-7.43866e-05]fx:[-1.90734863e-06]a:[1.65252209]fb:[7.2479248e-05]

i:[22]
n:[100]
a:[1.65252447]x:[1.65252566]b:[1.65252686]fx:[3.81469727e-05]

fb:[7.2479248e-05]fa:[-1.90734863e-06]

i:[23]n:[100]

b:[1.65252566]x:[1.65252507]
a:[1.65252447]

fb:[3.81469727e-05]
fa:[-1.90734863e-06]
fx:[1.90734863e-05]
n:[100]
i:[24]
x:[1.65252471]
b:[1.65252507]
a:[1.65252447]
fb:[1.90734863e-05]
fa:[-1.90734863e-06]
fx:[7.62939453e-06]
n:[100]
x:[1.65252459]
fx:[3.81469727e-06]i:[25]a:[1.65252447]b:[1.65252471]

fa:[-1.90734863e-06]
fb:[7.62939453e-06]
n:[100]
b:[1.65252459]
x:[1.65252447]fb:[3.81469727e-06]i:[26]a:[1.65252447]

fx:[-1.90734863e-06]fa:[-1.90734863e-06]

(1.6525245, 1.6525246, 1.6525245, -1.9073486e-06, 3.8146973e-06, -1.9073486e-06, 27, 100)

tensorflow随笔-条件循环语句求解一元多次方程相关推荐

  1. [转载] Python入门(输入/输出、数据类型、条件/循环语句)

    参考链接: Python中的循环技术 在介绍之前我们先来看看计算机的三个根本性基础: 1.计算机是执行输入.运算.输出的机器 2.程序是指令和数据的集合 3.计算机的处理方式有时与人们的思维习惯不同 ...

  2. Java——求解一元n次方程(V1.0)

    Java--求解一元n次方程(V1.0) 主要思路 通过 接口(interface) 进行求解方法声明,通过 implements 声明自己使用的接口 通过字符串 equals() 方法以及 whil ...

  3. mysql里条件语句和循环语句_MySQL与Oracle 差异比较之四条件循环语句

    循环语句 编号 类别 oracle Mysql 注释 1 IF语句使用不同 IFiv_weekly_day = 'MON'THEN ii_weekly_day := 'MON'; ELSIFiv_we ...

  4. Python入门5_条件循环语句

    1 , 赋值操作: >>> x,y,z = 1,2,3 #等同于x = 1,y = 2, z = 3 >>> x,y = y,x #交换x,y的值 >> ...

  5. python基础之条件循环语句

    前两篇说的是数据类型和数据运算,本篇来讲讲条件语句和循环语句. 0x00. 条件语句 条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语 ...

  6. tensorflow随笔-条件语句-tf.cond

    tf.cond tf.cond( pred, true_fn=None, false_fn=None, strict=False, name=None, fn1=None, fn2=None ) 如果 ...

  7. tensorflow随笔-条件语句-tf.case

    tf.case tf.case( pred_fn_pairs, default=None, exclusive=False, strict=False, name='case' ) 创建case操作 ...

  8. C语言条件循环语句执行步骤,C语言中for语句的执行过程是什么?

    C语言中for语句的执行过程是:1.会先判断条件表达式是否成立,如果条件成立则执行中间循环体,执行完中间循环体后接着执行末尾循环体 :2.在执行完末尾循环体后对条件表达式再次判断,若条件还成立,则继续 ...

  9. tensorflow随笔-条件循环控制(4)

    例如非严格语义的示例:在下面的示例中,计数器i的最终值不依赖于x.while_loop可并行地增加计数器,并更新x. #!/usr/bin/env python2 # -*- coding: utf- ...

最新文章

  1. 【Android 逆向】Android 进程注入工具开发 ( 总结 | 源码编译 | 逆向环境搭建使用 | 使用进程注入工具进行逆向操作 ) ★★★
  2. Oracle12c开启scott账户
  3. 数据库原理及应用【四】数据库管理系统
  4. Intel Haswell/Broadwell架构/微架构/流水线 (6)-Unlamination微指令离解过程
  5. altium designer怎么添加元件库
  6. vue+html5实现分类、商品分类、类别、菜单的左右层级布局两种不同精美样式
  7. 前端安全XSS,CSRF
  8. ssq历史50【参数化】出现排序,最近未出排序,排行图
  9. 本周大新闻|PS VR2已确认20款大作,Magic Leap 1低价清库存
  10. 【SAP-PS笔记】基于WBS直接录入金额做结果分析的项目计划成本
  11. 关于数据治理的读书笔记 - 什么是数据战略?
  12. 纯干货:手把手地教你搭建Oracle Sharding数据库分片技术
  13. 河北软件职业技术学院计算机应用工程系,河北软件职业技术学院第四届模特大赛举办成功...
  14. 初步使用HTMLParser工具包【部分代码来自网络】
  15. 中国最美丽的地方排行榜国家地理
  16. ArcGIS如何创建渔网?渔网不见了。
  17. cron表达式生成函数(小时部分自定义) 1小时30分钟,1小时20分钟,1小时40分钟..
  18. 用户-用户生命周期切分(下)
  19. 长沙国储电脑城-学生买电脑-被坑记
  20. 交换机虚拟化和堆叠的区别_交换机级联与堆叠有何区别?(内含堆叠方法)

热门文章

  1. 个人日报0701-0703
  2. #ifdef #else #endif #fi #ifndef 的用法
  3. java小程序:求完全数
  4. opencv如何截取子图像
  5. Android自定义退出弹出框
  6. [转]Linux环境下段错误的产生原因及调试方法小结
  7. What is ieHTTPHeaders?
  8. php foreach循环中的变量
  9. vue中什么样的数据可以是在视图中显示
  10. python 动态类型_python学习--动态类型