c#將陣列中的各數互質後輸出
如何將陣列 互質後**化為互質的整數陣列)輸出呢?
先寫可以將輸入的小數轉換為分數的函式 integercvt
public string integercvt(double numb)//可以將輸入的小數轉換為分數
value = value / a;
num = num / a;
result = string.format("/", value, num);
}else if (numb < 0)
value = value / a;
num = num / a;
result = string.format("-/", value, num);
}else if (numb == 0)
}catch (exception)
return result;
}
再寫可以將輸入的小數陣列做互質處理後輸出的函式 primecvt
public double primecvt(double mart)//可以將輸入的小數陣列做互質處理後輸出
);//把b中各數按/分割後存到sarra
sarray[count] = convert.todouble(sarra[1]);//sarra取分母轉double存sarray
count++;
}max1 = sarray.max();//儲存最大的分母
for (int i = 0; i < a; i++)
}while (max1 != 1);//當最大分母為1時退出
//#region把mart裡面的數取非0的最小數
min1 = 1;//初始值
for (int i = 0; i < a; i++)//取出非零的乙個絕對值做min1的初始值
else
break;}}
for (int i = 0; i < a; i++)//取非零最小絕對值min1
}else if (mart[i] == 0)
else }}
//#endregion
int a2 = a;
int n = 0;
while (n != a2)//當整數數與元素數不同時執行
}else //如果遇到0就把元素數減1
}min1--;
}min1++;
for (int i = 0; i < a; i++)
return mart;
}
測試
private void button1_click(object sender, eventargs e)
;double c = primecvt(b);
messagebox.show(c[0].tostring() + "," + c[1].tostring() + "," + c[2].tostring() + "," + c[3].tostring());
}
測試結果
C 中輸出陣列
c 中輸出陣列資料分兩類情況 字元型陣列和非字元型陣列 當定義變數為字元型陣列時,採用cout 陣列名 系統會將陣列當作字串來輸出,如 char str 10 cout str 如果想輸出字元陣列的位址,則需要進行強制轉換,如 char str 10 static cast 型別轉換,void 是空...
演算法 將陣列元素換成字元後重新排序輸出
將一組數字先排序後輸出,然後再以字串的形式排序,輸出 1 7 14 0 9 4 18 18 2 4 0 1 2 4 4 7 9 14 18 18 0 1 14 18 18 2 4 4 7 9 include using namespace std include include include in...
C中各資料型別的取值範圍
以前學了那麼久的c,一直不清楚各資料型別佔多少位,取值範圍是多少。因為書上都說的不具體,只是說int一般是16位或者32位,short一般16位,long物件一般是32位等 等。c程式語言 中的練習2 1很簡便的幫忙解決了這個問題,不僅利於理解,而且直接可在不同的機器得到答案。如何獲得各資料型別的取...