问一道直线系方程方程题目!!

求一道直线方程的题,&
小桥桥盖栋210
过点(5,7)且和直线x+2y-4=0垂直的直线方程可以设为2x-y+a=010-7+a=0a=-3即2x-y-3=0 它与直线x+2y-4=0的交点为(2,1)所以对称点的横坐标x=2×2-5=-1纵坐标为y=2×1-7=-5即对称点为(-1,-5).
真谢谢你,太棒了
为您推荐:
其他类似问题
两点连线斜率=2,过(5,7),求出与原直线的交点,求点(5,7)与交点坐标值的差值,加在交点坐标上即可得出。
扫描下载二维码问一道算法题目(解一元一次方程的问题)_c语言吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:455,324贴子:
问一道算法题目(解一元一次方程的问题)收藏
非伸手党,要占用几楼,误差。
三叔正版授权网游公测!
NCL是一家专门从事计算器改良与升级的实验室,最近该实验室收到了某公司所委托的一个任务:需要在该公司某型号的计算器上加上解一元一次方程的功能。实验室将这个任务交给了一个刚进入的新手ZL先生。为了很好的完成这个任务,ZL先生首先研究了一些一元一次方程的实例:  4+3x=8  6a-5+1=2-2a  -5+12y=0  ZL先生被主管告之,在计算器上键入的一个一元一次方程中,只包含整数、小写字母及+、-、=这三个数学符号(当然,符号“-”既可作减号,也可作负号)。方程中并没有括号,也没有除号,方程中的字母表示未知数。  你可假设对键入的方程的正确性的判断是由另一个程序员在做,或者说可认为键入的一元一次方程均为合法的,且有唯一实数这是原题下面发上我的源代码和思考过程。
#include&stdio.h&#include&string.h&void fun(char *a,int left ,int right , int *b ,int *c)
// int fun(字符数组 上界 下界 常数 系数){
// 循环变量f=1;sum=0;for (i= i&= i++){
if(a[i] == '-') f=-1;
if (a[i] =='+') f=1;
if(a[i] &='0' && a[i] &= '9')
sum=10*sum + a[i] - '0' ;
if(a[i]&='a' && a[i]&='z')
else *b=}}// 函数 用来在a[left] -- a[right]中 得出a常数,b系数。int main( int argc, char *argv[]){char *a;
// 等于号的位置;
// 字符数组总共元素int b,c;
// b为常数 c为系数int d,e;
// d为常数 e为系数
//循环变量 //方程的解 //字母a=NULL;dy=0;scanf("%s",a);z=strlen(a);for(i=1;i&=z;i++){if (a[i] == '==' ){z=i;}}for(i=1;i&=z;i++){if ( a[i] &= 'z' && a[i] &='a'){zm=a[i];}}a=0;b=0;fun(a,1,dy,&b,&c);fun(a,dy,z,&d,&e);jie=(d-b)/(e-c);printf("%c = %d",zm,jie);getch();return 0;}这是我的第一次源代码,后来经过人指点改为:#include&stdio.h&#include&string.h&void fun(char *a,int left ,int right , int *b ,int *c)
// int fun(字符数组 上界 下界 常数 系数){
// 循环变量f=1;sum=0;for (i= i&= i++){
if(a[i] == '-') f=-1; if (a[i] =='+') f=1; if(a[i] &='0' && a[i] &= '9') { sum=10*sum + a[i] - '0' ; } if(a[i]&='a' && a[i]&='z') *c= else *b=}}// 函数 用来在a[left] -- a[right]中 得出a常数,b系数。int main( int argc, char *argv[]){char a[20];
// 等于号的位置;
// 字符数组总共元素int b,c;
// b为常数 c为系数int d,e;
// d为常数 e为系数
//循环变量 //方程的解 //字母a=NULL;dy=0;scanf("%s",a);z=strlen(a);for(i=0;i&z;i++){if (a[i] == '==' ){z=i;}}for(i=0;i&=z;i++){if ( a[i] &= 'z' && a[i] &='a'){zm=a[i];}}fun(a,1,dy,&b,&c);fun(a,dy,z,&d,&e);jie=jie=((double)(d-b))/(c-e);printf("%c = %.3f",zm,jie);getch();return 0;}——————改动日志:
改动日志:char *a;
a[20];//存放字符串的字符数组 //方程的解
改为dy = 0;
dy=0;两处的
for(i=1;i&=z;i++)
for(i = 0; i & i++)if (a[i] == '==' )
if (a[i] == '=' ){z=i;
{dy =a=0;b=0;
a=0;b=0;fun(a,1,dy,&b,&c);
fun(a, 0, dy - 1, &b, &c);fun(a,dy,z,&b,&c);
改为 fun(a, dy + 1, z - 1, &b, &c);jie=(d-b)/(e-c);
jie=((double)(d-b))/(e-c);printf("%c = %d",zm,jie);
printf("%c = %f",zm,jie);——————提问:1.为什么不能直接char *a? 我记得,不是说如果不用malloc开辟内存的话,char *a 可以存储255个字符的吗?2.请问一下关于强制类型转换问题?这里我认为应该是(double)((d-b)/(e-c))的说。。要不然我认为应该是只把d-b转换了吧?
然后经过人家指点后的代码不会出现第一次代码的内存错误了(初步判定为char *a处段错误)————————可是当3x+2=10这样的问题仍然不能正确显示。。因为SUM未清零,会使左边常数为
后来考虑设置一个变量fh,用于检测是否赋值过比如如果SUM被赋值给了字幕,那么fh=0,加个if(fh) 判断是否给b赋值但后来遇到3x+5+2x=???这样的式子时候fh清零后,什么时候改回1是个问题。。。————————以上修改的代码因在环境中及时修改,无代码了。。
最后想了想给出了这样的代码:
最后想了想给出了这样的代码:#include&stdio.h&#include&string.h&void fun(char *a,int left ,int right , int *b ,int *c)
// int fun(字符数组 上界 下界 常数 系数){
// 循环变量
// 标记是否有字母bj=1;f=1;sum=0;for (i= i&= i++)
{bj=1;if(a[i] == '-') f=-1;
if (a[i] =='+') f=1;
if(a[i] &='0' && a[i] &= '9')
sum=10*sum + a[i] - '0' ;
if(a[i]&='a' && a[i]&='z')
if(a[i] =='-' || a[i]=='+' ||i==right && sum!=0){ *b=sum*f; sum=0;}
}}// 函数 用来在a[left] -- a[right]中 得出a常数,b系数。int main( int argc, char *argv[]){char a[20];
// 等于号的位置;
// 字符数组总共元素int b,c;
// b为常数 c为系数int d,e;
// d为常数 e为系数
//循环变量 //方程的解 //字母scanf("%s",a);z=strlen(a);for(i=0;i&z;i++){if (a[i] == '=' ){dy=i;}}for(i=0;i&z;i++){if ( a[i] &= 'z' && a[i] &='a'){zm=a[i];}}b=0;c=0;d=0;e=0;fun(a,0,dy,&b,&c);fun(a,dy+1,z-1,&d,&e);jie=((double)(d-b))/(c-e);printf("%c = %4.3f",zm,jie);getch();return 0;}也就是判断一下 常数后面是符号等。。(前几楼的代码也忘记*f对符号处理了)但是当输入数据为:20+3x=-18-6+12x=047-2=6y+3-25a+18-2=-7a-2-a+1a-3=a-3时候标准答案为:x=-12.667x=0.500y=7.000a=1.000a=0.000我的答案为:x=-12.667x=-0.500y=-0.833a=-0.000a=0.000实在不知道如何修改。。烦请大神们费心如果是伸手贴,请吧务监督并处理。。感谢吧务辛勤劳作让C语言吧一天天被净化。
——————————问题结束——————
1.说实话我觉得指针这类东西还是少用一点……不研究很长时间的话还是挺容易出错的2.double/int 自动变成double 没差别
97玩玩《村长征战团》建立自己的帝国!
1、如果实在调不出来了,可以尝试在函数中实时输出这些值。看看和你手动算的是否一样比如在fun()中间加上printf("b==%d",b);这类的语句2、字符串长度习惯还是用len / l 来定义~
#include&iostream&#include&iomanip&int main(){double num=0,zx=0,zs=0,yx=0,ys=0;char w,c;char f='z';while(cin&&c){
if(f=='z'&&(c=='+'||c=='-')) {zs+=num=0;}else if(f=='f'&&(c=='+'||c=='-')) {zs-=num=0;}if(((c&=65)&&(c&=90))||((c&=97)&&(c&=122))) {w=c;if(f=='z')zx+=if(f=='f')zx-=f='x';num=0;}if(c=='-') f='f';else if(c=='+') f='z';else if(c&=48&&c&=57) num=num*10+c-'0';if(c=='=') {if(num==0)else if(f=='f') zs-=else if(f=='z') zs+= }}num=0;f='z';while(cin&&c){if(f=='z'&&(c=='+'||c=='-')) {ys+=num=0;}else if(f=='f'&&(c=='+'||c=='-')) {ys-=num=0;}if(((c&=65)&&(c&=90))||((c&=97)&&(c&=122))) {w=c;if(f=='z')yx+=if(f=='f')yx-=f='x';num=0;}if(c=='-') f='f';else if(c=='+') f='z';else if(c&=48&&c&=57) num=num*10+c-'0';if(c=='?')}if(f=='f') ys-=if(f=='z') ys+=cout&&zs&&' '&&ys&&' '&&yx&&' '&&zx&&if(zs==ys) {cout&&w&&'='&&"0.000";return 0;}//否则会运行错误cout&&w&&'='&&setiosflags(ios::fixed)&&setprecision(3)&&1.0*(zs-ys)/(yx-zx);}感觉上你的算法有问题……自己写了一个很挫的……勿怪~
闲着无聊写了一个玩玩。
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或M(-1,0)到直线3x-y-3=0的距离是|-3-3|32+(-1)2=3105,所以M到另三边距离也是3105,其中有一条边和3x-y-3=0平行设为3x-y+c=0,由|-3+c|32+(-1)2=3105,解得c=9或c=-3(舍去)故方程为3x-y+9=0另两条和他们垂直,所以斜率为-13设为:x+3y+b=0,由|-1+b|12+32=3105,解得b=-5或b=7故所求直线方程为:x+3y-5=0,x+3y+7=0,故正方形其它三边所在的直线方程为:3x-y+9=0,x+3y-5=0,x+3y+7=0
请在这里输入关键词:
科目:高中数学
来源:不详
题型:填空题
已知直线l1过点A(-2,3),B(4,m),直线l2过点M(1,0),N(0,m-4),若l1⊥l2,则常数m的值是______.
科目:高中数学
来源:不详
题型:填空题
已知△ABC中,A(1,-1),B(2,2),C(3,0),则AB边上的高线所在直线方程为______.
科目:高中数学
来源:不详
题型:单选题
过点A(2,3)且垂直于直线2x+y=0的直线方程为(  )A.x-2y+=40B.2x+y-7=0C.x-2y+3=0D.x-2y+5=0
科目:高中数学
来源:不详
题型:解答题
已知直线x-y+2=0,点P的坐标为(1,-1),求:(1)点P到直线l的距离;(2)过点P与直线l平行的直线l1的方程;(3)过点P与直线l垂直的直线l2的方程.
科目:高中数学
来源:不详
题型:填空题
过点(-6,4),且与直线x+2y+3=0垂直的直线方程是______.
科目:高中数学
来源:不详
题型:单选题
在同一平面直角坐标系中,直线l1:ax+y+b=0和直线l2:bx+y+a=0有可能是(  )A.B.C.D.
科目:高中数学
来源:不详
题型:解答题
已知直线l:ax+by+c=0.(Ⅰ)求证:直线ax+by+c=0通过定点(1,1)的充要条件是a+b+c=0(a,b,c不全为0);(Ⅱ)若直线l:ax+by+c=0与直线2x+y+3=0平行,求a-3ba+b的值.
科目:高中数学
来源:不详
题型:填空题
若直线和坐标轴都相交,则有&&&&&&&&&&&&&&&&&&&&。
精英家教网新版app上线啦!用app只需扫描书本条形码就能找到作业,家长给孩子检查作业更省心,同学们作业对答案更方便,扫描上方二维码立刻安装!
作业讨论群:一道高一直线方程的题目_百度知道
一道高一直线方程的题目
角B被Y轴平分,角C被直线Y=X平分,-1)已知三角形ABC的一个顶点为A(3,(B在Y轴正半轴上
提问者采纳
b)AB斜率为(-1-b)/3BC方程为y=(1+b)x&#47,直线BC,AC关于y=x对称;3BC斜率为(1+b)&#47,0)在AC上AC斜率为1/(b-3)]=1解得b=5代入BC方程得;3+b,BC关于y=x对称,B关于y=x对称的点(b;3]*[1&#47设B为(0,斜率乘积为1即([1+b)/(b-3)AC
其他类似问题
为您推荐:
直线方程的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁一道直线方程的题目_百度知道
一道直线方程的题目
且被两平行直线3x+y-6=0和3x+y+3=0所截得得线段长为9,0)直线过点(1,求直线L的方程如果哪个高手知道答案
提问者采纳
因为平行直线3x+y-6=0和3x+y+3=0截得y轴的长度为3+6=9. 所以该直线平行于y轴。 直线L的方程 : x=1
其他类似问题
为您推荐:
直线方程的相关知识
其他1条回答
(k+3)) 联立3x+y+3=0与y=kx-k 解此方程组得这两条直线的交点坐标为: [9&#47:设直线L的方程为y=kx+b 因为直线L过点(1;(k+3)) 根据两点间距离公式即PQ=9得:k=-4/(k+3)]^2+[9k/(k+3): Q((k-3)/(k+3),0) 所以k+b=0: P((k+6)&#47,即b=-k 所以直线L的方程为y=kx-k 联立3x+y-6=0与y=kx-k 解此方程组得这两条直线的交点坐标为,-6k/3 供参考,3k/(k+3)]^2=81 解得;3x+4/3 所以直线L的方程为 y=-4&#47解
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 直线系方程 的文章

 

随机推荐