c语言中的二分法
\\\题外:对于printf引号中的内容一定要细心书写 ; 数组由a[0]开始计数,切记;尤其是与for循环中i=1 搞混
运用a[i+1]等超前数据时 需先用
for(i=0;i<=n-1;i++)
{scanf("%d",&a[i]);}
给数组全部赋值
题目:对于方程 8*x^4+7*x^3+2*x^2+3*x+6=Y 给定一个实数Y(|Y|<=1000000000),求方程的解 x=k,其中0<=k<=100,若方程无解,则输出“No solution!”(不含引号)若方程存在一个解 x=k 满足 0<=k<=100,则输出“x = k”(不含引号,k 为方程的解,精确 到小数点后 4 位) 否则,输出“No solution!”(不含引号)
程序:
#include<stdio.h>
#include<math.h>
int main()
{
double x,L,R,mid,k,m;
int y,i;
scanf("%d",&y);
m=0;
x=0;
k=0;
L=0; / /对题目分析可得,函数在0到100必是增函数
R=100;
for(;1;) ///相当于while(1) 即判断条件无限为真
{ mid=(L+R)/2;
if(8*mid*mid*mid*mid+7*mid*mid*mid+2*mid*mid+3*mid+6<y){
L=mid; ///如果有解 则y必大于f(0) 必小于f(100) 故如果y>f(mid)则 x位于mid 与100之间
}
else {
R=mid;
}
if((R-L)<0.0000000001)break; ///0.00000001位数越多,结果越精确
}
m=8*mid*mid*mid*mid+7*mid*mid*mid+2*mid*mid+3*mid+6;
k=fabs(y-m); //两者误差
if(k>0.01){ //就算两x不等于 其y值误差最多0.00001
printf("No solution!");
}
else{
printf("x = %.4lf",mid);
}
return 0;
c语言中的二分法的更多相关文章
- JAVA语言中的修饰符
JAVA语言中的修饰符 -----------------------------------------------01--------------------------------------- ...
- Java语言中的面向对象特性总结
Java语言中的面向对象特性 (总结得不错) [课前思考] 1. 什么是对象?什么是类?什么是包?什么是接口?什么是内部类? 2. 面向对象编程的特性有哪三个?它们各自又有哪些特性? 3. 你知 ...
- python语言中的编码问题
在编程的过程当中,常常会遇到莫名其妙的乱码问题.很多人选择出了问题直接在网上找答案,把别人的例子照搬过来,这是快速解决问题的一个好办法.然而,作为一个严谨求实的开发者,如果不从源头上彻底理解乱码产生的 ...
- 在C语言中利用PCRE实现正则表达式
1. PCRE简介 2. 正则表达式定义 3. PCRE正则表达式的定义 4. PCRE的函数简介 5. 使用PCRE在C语言中实现正则表达式的解析 6. PCRE函数在C语言中的使用小例子 1. P ...
- C语言中函数声明实现的位置
在学习C语言的时候我遇到了这么个事情,因为之前先学习的C#,在C#编译器中,函数的声明位置不会影响编译的结果,但是在C语言中却发生了错误 先看一段代码: #include <stdio.h> ...
- C语言中的栈和堆
原文出处<http://blog.csdn.net/xiayufeng520/article/details/45956305#t0> 栈内存由编译器分配和释放,堆内存由程序分配和释放. ...
- 在易语言中调用MS SQL SERVER数据库存储过程方法总结
Microsoft SQL SERVER 数据库存储过程,根据其输入输出数据,笼统的可以分为以下几种情况或其组合:无输入,有一个或多个输入参数,无输出,直接返回(return)一个值,通过output ...
- C语言中结构体赋值问题的讨论
今天帮师姐调一个程序的BUG,师姐的程序中有个结构体直接赋值的语句,在我印象中结构体好像是不能直接赋值的,正如数组不能直接赋值那样,我怀疑这个地方有问题,但最后证明并不是这个问题.那么就总结一下C语言 ...
- Coursera-Getting and Cleaning Data-week4-R语言中的正则表达式以及文本处理
博客总目录:http://www.cnblogs.com/weibaar/p/4507801.html Thursday, January 29, 2015 补上第四周笔记,以及本次课程总结. 第四周 ...
随机推荐
- C++ Unicode SBCS 函数对照表
C++ Unicode SBCS 函数对照表,以备日后查阅 Generic SBCS UNICODE TCHAR char wchar_t _TEOF EOF WEOF _TINT int wint_ ...
- 大白话系列之C#委托与事件讲解(一)
从序言中,大家应该对委托和事件的重要性有点了解了吧,虽然说我们现在还是能模糊,但是从我的大白话系列中,我会把这些概念说的通俗易懂的.首先,我们还是先说说委托吧,从字面上理解,只要是中国人应该都知道这个 ...
- MVC View中获取Url参数的值
如果url是 /home/index?id=3 直接Request就ok. Razor方法 @Html.ViewContext.RouteData.Values["id"] @Re ...
- Oracle数据库——体系结构
一.涉及内容 1.了解数据库的物理存储结构和逻辑存储结构 二.具体操作 1.分别使用SQL 命令和OEM 图形化工具查看本地数据库的物理文件,并使用OEM 工具在现有的users 表空间中添加user ...
- mac版photoshop滤镜库报错解法
http://bbs.pcbeta.com/viewthread-1556878-1-1.html
- Java collection 的一些介绍 集合
collections主要提供一些,排序的算法,随机的,反向的, collection 是容器的祖先接口 线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应 ...
- 1kkk
代码: # !usr/bin/python3.4 # -*- coding:utf-8 -*- import requests import os import time import re from ...
- Android 异步加载解决方案
Android的Lazy Load主要体现在网络数据(图片)异步加载.数据库查询.复杂业务逻辑处理以及费时任务操作导致的异步处理等方面.在介绍Android开发过程中,异步处理这个常见的技术问题之前, ...
- 转:深入研究mysql中group by与order by取分类最新时间内容
鉴于项目的需要,就从网上找到该文章,文章分析得很详细也很易懂,在android里, (不知道是不是现在水平的限制,总之我还没找到在用ContentProvider时可以使用子查询),主要方法是用SQL ...
- C语言常用的小代码
圆周率Pi tan(Pi/4)=1 => Pi=4*arctan(1) 反正切函数arctan()在C语言里表示为atan(),为保证精度取圆周率的代码如下: const double Pi = ...