導航:首頁 > 編程語言 > vb百錢百雞問題程序

vb百錢百雞問題程序

發布時間:2025-02-19 17:22:19

A. 用VB編寫一個「百錢買百雞」程序

百錢其實可以招雞,不一定要買雞。

看你是真心需要答案我就寫一個,不過我習慣用C#,語法相近,無非就是一個一元一次方程多個解,公雞母雞都是5元一隻,你就假設公雞加母雞X只,小雞Y只。方程就是:

5x+y/3=100.

百錢買百雞意思就是保證XY都是整數就好了,對編程來講就是一個從1到100遍歷X,判斷Y是不是真的是整數的過程。可能數學老師神話了這一個方程,但是編程思想就是這么一個簡單的原理:

privatevoidbutton1_Click(objectsender,EventArgse)
{
//5x+y/3=100;
intcount=0;
stringy="";
stringresult="";
Regexreg=newRegex(@"^((d|[123456789]d)?|100)$");
for(intx=1;x<100;x++)
{
y=((100-5*x)*3).ToString();
if(reg.IsMatch(y)&&(x+Convert.ToInt32(y))==100)
{
count++;
result+="解"+count.ToString()+":x"+count.ToString()+"="+x.ToString()+"y"+count.ToString()+"="+y.ToString()+" ";
}
}
result=(result=="")?"無解":result;
MessageBox.Show(result);
}

結果你看一下,價格肯定是你亂給的,無解:

他就有解了,而且,我記得好像公雞母雞價格不一樣

B. 百錢百雞 VB編程 代碼

假設你的百雞百錢是經典的演算法,公雞5錢,母雞3錢,3小雞一錢,下面的代碼在VB裡面調試通過。
Dim a As Integer, b As Integer, c As Integer
For a = 1 To 20
For b = 1 To 33
c = 100 - a - b
If (a + b + c = 100) And (a * 5 + b * 3 + c / 3 = 100) Then
Print a, b, c
End If
Next b
Next a

C. VB百錢買百雞

小雞抄3隻值1元吧,用窮舉了,下面定義襲 a,b,c變數,5元一隻么最多20隻,小雞再多也只是舉到100隻,窮舉判斷可。dim a as integer ,b as integer ,c as integer for a=0 to 20for b = 0 to 33for c =0 to 100If 5 * a + 3 * b + 1 / 3 * c = 100 And a + b + c = 100 Then
Print "公雞" & a, "母雞" & b, "小雞" & c endifnextnextnext

D. vb中如何算百元買百雞問題詳解

百元買百雞問題:
一百個銅錢買了一百隻雞,其中公雞一隻錢、母雞一隻3錢,小雞一錢3隻,問一百隻雞中公雞、母雞、小雞各多少)。
這是一個古典數學問題,設一百隻雞中公雞、母雞、小雞分別為x,y,z,問題化為三元一次方程組:
這本來是數學問題,現在用編寫程序的方法解決就變得相對簡單。
通常採用枚舉演算法來實現:
所謂枚舉演算法,就是一一列舉,逐個檢驗:
關於枚舉演算法,可以看看我的文章:
http://hi..com/syx54/item/d791e7d8d1ff2b45fa576861

現在用枚舉演算法來解決本題:
假設:公雞X只,母雞Y只,小雞Z只,
不難知道:
X 不會超過20
Y 不會超過33
Z 不會超過300

並且有關系式:(注意,這兩個關系式必須同時成立,才是問題的解)
X + Y + Z = 100
5X + 3Y + Z/3 = 100

採用枚舉演算法的程序結構,往往就是循環里邊嵌套選擇;
循環 -- 實現 一一列舉,
選擇 -- 實現 逐個檢驗。

程序如下:
Option Explicit

Private Sub Command1_Click()
Dim x As Integer
Dim y As Integer
Dim z As Integer
For x = 1 To 20
For y = 1 To 33
For z = 1 To 300
If x + y + z = 100 And 5 * x + 3 * y + z / 3 = 100 Then
Print x, y, z
End If
Next z
Next y
Next x
End Sub

E. VB 解決問題:百錢買百雞, 公雞5錢一隻, 母雞3錢一隻, 小雞1錢3隻

Dim a As Integer,b As Integer,c As IntegerFor a=0 To 20For b=0 To 33c=100-a-bIf (5*a+3*b+c/3=100) Then '第一復個條件(a+b+c=100)寫不寫無所謂,你的制c本來就是用100-a-b得出的,也就是a+b+c一定=100Print a,b,cEnd IfNext bNext a'這里注意嵌套循環的順序,for循環中b是嵌套在a中的,所以先要next b,然後next a

閱讀全文

與vb百錢百雞問題程序相關的資料

熱點內容
現場管理有哪些文件 瀏覽:713
linuxapache集群 瀏覽:406
代碼修改form名稱 瀏覽:507
華為g9是安卓系統嗎 瀏覽:688
貝葉斯網路構建方法 瀏覽:197
模仿網站素材哪裡來 瀏覽:488
小程序選擇器時間 瀏覽:47
win10任務管理器頻率 瀏覽:583
禹城市網路傳媒怎麼樣 瀏覽:629
招商applepay免密 瀏覽:828
超市收銀數據怎麼核對 瀏覽:716
win10電腦壁紙問題 瀏覽:778
右鍵單擊桌面文件無反應 瀏覽:941
ftp文件名帶時間 瀏覽:547
java面試題抽象類和介面有什麼區別 瀏覽:984
mac電腦壓縮文件到windows 瀏覽:258
如何刪除qq最近聯系人 瀏覽:228
iphone6關閉單手 瀏覽:831
3扣1用什麼app 瀏覽:387
簡單內核程序 瀏覽:675

友情鏈接