C_Sharp 板


LINE

各位高手们 可以帮我看看我的程式出了什麽问题吗 我写了一个自动倒车入库的程式 我用了递回 在主程式中呼叫EXE副程式 然後在EXE的最後呼叫自己 但是程式中的e跟y可以顺利 传回自己重复运算 但是phi却不行>"< (随着呼叫次数改变 e y 会一直变 但是phi 跟theta却始终维持不变..) 我明明都用一样的方法写阿.. 请各位帮我解答吧! 感谢感谢!!!<(_ _)> using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication1 { class Program { //================================================= static public double LE(double x) //LE(x) { if (x<10) return 1; else if (x >= 10 && x<35) return (35-x) / 25; else return 0; } //================================================== static public double LC(double x) //LC(x) { if (x>=30 && x<40) return 1-((40-x)/10); else if (x>=40 && x<50) return (50-x)/10; else return 0; } //=================================================== static public double CE(double x) //CE(x) { if (x >= 45 && x < 50) return 1-((50-x) / 5); else if (x >= 50 && x < 55) return (55-x) / 5; else return 0; } //================================================= static public double RC(double x) //RC(x) { if (x >= 50 && x < 60) return 1-((60-x) / 10); else if (x >= 60 && x < 70) return (70-x) / 10; else return 0; } //================================================== static public double RJ(double x) //RJ(x) { if (x >= 65 && x < 90) return 1-((90 - x) / 25); else if (x >= 90) return 1; else return 0; } //================================================== static public double RB(double x) //RB(x) { if (x >= -100 && x < -45) return 1-((-45 - x) / 55); else if (x >= -45 && x < 10) return (10 - x) / 55; else return 0; } //================================================== static public double RU(double x) //RU(x) { if (x >= -10 && x < 25) return 1-((25 - x) / 35); else if (x >= 25 && x < 60) return (60 - x) / 35; else return 0; } //=================================================== static public double RV(double x) //RV(x) { if (x >= 40 && x < 65) return 1-((65 - x) / 25); else if (x >= 65 && x < 90) return (90 - x) / 25; else return 0; } //=================================================== static public double VE(double x) //VE(x) { if (x >= 80 && x < 90) return 1-((90 - x) / 10); else if (x >= 90 && x < 100) return (100 - x) / 10; else return 0; } //=================================================== static public double LV(double x) //LV(x) { if (x >= 90 && x < 115) return 1-((115 - x) / 25); else if (x >= 115 && x < 140) return (140 - x) / 25; else return 0; } //=================================================== static public double LU(double x) //LU(x) { if (x >= 120 && x < 155) return 1-((155 - x) / 35); else if (x >= 155 && x < 190) return (190 - x) / 35; else return 0; } //=================================================== static public double LB(double x) //LB(x) { if (x >= 170 && x < 225) return 1-((225 - x) / 55); else if (x >= 225 && x < 280) return (280 - x) / 55; else return 0; } //==================================================== static public double MIN(double m, double n) //Find the minimum of two numbers { if (m >= n) return n; else return m; } //==================================================== static public void EXE( double e, double y, double phi) { int NB = -30, NM = -15, NS = -6, ZE = 0, PS = 7, PM = 15, PB = 30; double[] MOTHER = new double[35]; double[] CHILD = new double[35]; double Add_Childs = 0, Add_Mothers = 0, theta; int counter; CHILD[0] = MIN(RB(phi), LE(e)) * PS; CHILD[1] = MIN(RB(phi), LC(e)) * PM; CHILD[2] = MIN(RB(phi), CE(e)) * PM; CHILD[3] = MIN(RB(phi), RC(e)) * PB; CHILD[4] = MIN(RB(phi), RJ(e)) * PB; CHILD[5] = MIN(RU(phi), LE(e)) * NS; CHILD[6] = MIN(RU(phi), LC(e)) * PS; CHILD[7] = MIN(RU(phi), CE(e)) * PM; CHILD[8] = MIN(RU(phi), RC(e)) * PB; CHILD[9] = MIN(RU(phi), RJ(e)) * PB; CHILD[10] = MIN(RV(phi), LE(e)) * NM; CHILD[11] = MIN(RV(phi), LC(e)) * NS; CHILD[12] = MIN(RV(phi), CE(e)) * PS; CHILD[13] = MIN(RV(phi), RC(e)) * PM; CHILD[14] = MIN(RV(phi), RJ(e)) * PB; CHILD[15] = MIN(VE(phi), LE(e)) * NM; CHILD[16] = MIN(VE(phi), LC(e)) * NM; CHILD[17] = MIN(VE(phi), CE(e)) * ZE; CHILD[18] = MIN(VE(phi), RC(e)) * PM; CHILD[19] = MIN(VE(phi), RJ(e)) * PM; CHILD[20] = MIN(LV(phi), LE(e)) * NB; CHILD[21] = MIN(LV(phi), LC(e)) * NM; CHILD[22] = MIN(LV(phi), CE(e)) * NS; CHILD[23] = MIN(LV(phi), RC(e)) * PS; CHILD[24] = MIN(LV(phi), RJ(e)) * PM; CHILD[25] = MIN(LU(phi), LE(e)) * NB; CHILD[26] = MIN(LU(phi), LC(e)) * NB; CHILD[27] = MIN(LU(phi), CE(e)) * NM; CHILD[28] = MIN(LU(phi), RC(e)) * NS; CHILD[29] = MIN(LU(phi), RJ(e)) * PS; CHILD[30] = MIN(LB(phi), LE(e)) * NB; CHILD[31] = MIN(LB(phi), LC(e)) * NB; CHILD[32] = MIN(LB(phi), CE(e)) * NM; CHILD[33] = MIN(LB(phi), RC(e)) * NM; CHILD[34] = MIN(LB(phi), RJ(e)) * NS; MOTHER[0] = MIN(RB(phi), LE(e)); MOTHER[1] = MIN(RB(phi), LC(e)); MOTHER[2] = MIN(RB(phi), CE(e)); MOTHER[3] = MIN(RB(phi), RC(e)); MOTHER[4] = MIN(RB(phi), RJ(e)); MOTHER[5] = MIN(RU(phi), LE(e)); MOTHER[6] = MIN(RU(phi), LC(e)); MOTHER[7] = MIN(RU(phi), CE(e)); MOTHER[8] = MIN(RU(phi), RC(e)); MOTHER[9] = MIN(RU(phi), RJ(e)); MOTHER[10] = MIN(RV(phi), LE(e)); MOTHER[11] = MIN(RV(phi), LC(e)); MOTHER[12] = MIN(RV(phi), CE(e)); MOTHER[13] = MIN(RV(phi), RC(e)); MOTHER[14] = MIN(RV(phi), RJ(e)); MOTHER[15] = MIN(VE(phi), LE(e)); MOTHER[16] = MIN(VE(phi), LC(e)); MOTHER[17] = MIN(VE(phi), CE(e)); MOTHER[18] = MIN(VE(phi), RC(e)); MOTHER[19] = MIN(VE(phi), RJ(e)); MOTHER[20] = MIN(LV(phi), LE(e)); MOTHER[21] = MIN(LV(phi), LC(e)); MOTHER[22] = MIN(LV(phi), CE(e)); MOTHER[23] = MIN(LV(phi), RC(e)); MOTHER[24] = MIN(LV(phi), RJ(e)); MOTHER[25] = MIN(LU(phi), LE(e)); MOTHER[26] = MIN(LU(phi), LC(e)); MOTHER[27] = MIN(LU(phi), CE(e)); MOTHER[28] = MIN(LU(phi), RC(e)); MOTHER[29] = MIN(LU(phi), RJ(e)); MOTHER[30] = MIN(LB(phi), LE(e)); MOTHER[31] = MIN(LB(phi), LC(e)); MOTHER[32] = MIN(LB(phi), CE(e)); MOTHER[33] = MIN(LB(phi), RC(e)); MOTHER[34] = MIN(LB(phi), RJ(e)); for (counter = 0; counter <= 34; counter++) { Add_Childs = Add_Childs + CHILD[counter]; Add_Mothers = Add_Mothers + MOTHER[counter]; } theta = Add_Childs / Add_Mothers; Console.WriteLine("\n\ntheta: {0}", theta); e = e + 1.6 * Math.Sin((Math.PI / 180) * theta) * Math.Cos((Math.PI / 180) * phi); y = y + 1.6 * Math.Sin((Math.PI / 180) * theta) * Math.Cos((Math.PI / 180) * phi); phi =(180/Math.PI)* Math.Atan((Math.Sin((Math.PI / 180) * phi) + 1.6 * Math.Cos(Math.PI / 180 * phi) * Math.Sin(Math.PI / 180 * theta)) / (Math.Cos((Math.PI / 180) * phi) - 1.6 * Math.Sin(Math.PI / 180 * phi) * Math.Sin(Math.PI / 180 * theta))); Console.WriteLine("\n\nNew_x: {0}", e); Console.WriteLine("\n\nNew_y: {0}", y); Console.WriteLine("\n\nNew_phi: {0}", phi); Console.WriteLine("======================================="); phi = phi*Math.PI/180; while (e != 50 && y != 100 && e<=100 && y<=100&&theta!=0&&phi!=90) EXE( e, y, phi); Console.Read(); } static void Main(string[] args) { double e1, phi1, y1; string temp1, temp2, temp3; Console.Write("1.请输入X值: "); temp1 = Console.ReadLine(); e1 = System.Convert.ToDouble(temp1); Console.Write("2.请输入Y值: "); temp3 = Console.ReadLine(); y1 = System.Convert.ToDouble(temp3); Console.Write("3.请输入φ值: "); temp2 = Console.ReadLine(); phi1 = System.Convert.ToDouble(temp2); EXE(e1, y1, phi1); } } } --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.127.208.92 ※ 编辑: ssupermaxx 来自: 59.116.51.211 (01/13 21:29) ※ 编辑: ssupermaxx 来自: 59.116.51.211 (01/14 01:42)
1F:推 EricTsai:自己F11一步一步跑会看不出来吗... 01/14 14:01







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:e-shopping站内搜寻

TOP