一、c語言四舍五入的設(shè)計(jì)思路是怎樣的?求詳細(xì)解答。。。。
#include<stdio.h>
void main()
{
int a;
float x,i;
scanf(%f,&x);
i=x-int(x);//x減去整數(shù)部分
if(i>=0.5) a=int(x)+1;//x大于0,x小于0的情況自己寫咯
else a=int(x);//c語言中類型轉(zhuǎn)換是用向0取整的
printf(%d\n,a);
}
如果還需要保留多少位小數(shù),可以這樣設(shè)計(jì)程序:
以保留3位為例,x先乘1000,再按上面程序做判斷,得到a值,再把a(bǔ)除以1000。
舉個(gè)例x=1.2359
y=x*1000; //y=1235.9減去整數(shù)部分后
i=y-int(y);//i=0.9; 這時(shí)可判斷是進(jìn)一
a=int(y)+1;//a=1236
x=a/1000.0;//即x=1.236
二、pascal 動(dòng)態(tài)規(guī)劃 奶牛打工 怎么做,思路是什么?
分析
這道題目和上面的采藥的區(qū)別僅僅在于,每個(gè)物品可以無限次的取,其他的和采藥并沒有什么區(qū)別。
當(dāng)然,這樣的問題仍然可以用背包模型來解決,我們將這種模型稱為無限背包。
在這種情況下,我們可以把上面的opt[i-1,j-v[i]]變成opt[i,j-v[i]],即允許一種物品被取多次。
又由于是計(jì)數(shù),所以應(yīng)該有opt[i,j]:=opt[i,j-v[i]]+opt[i-1,j]。
還有一個(gè)優(yōu)化就是我們可以把opt數(shù)組壓縮成長度為total的一維數(shù)組(因?yàn)檫@樣是不會(huì)影響結(jié)果的),可以極大地優(yōu)化它的空間復(fù)雜度。
狀態(tài)的確定
我們用opt[i]表示硬幣總面值為i時(shí)共有多少種方法
Opt[i]:=opt[i]+opt[i-value[j]];(j=1,2,3..n)
代碼
for i:=0 to total do opt[i]:=0;
opt[0]:=1;
for i:=1 to n do
for j:=a[i] to t do
opt[j]:=opt[j]+opt[j-a[i]];
writeln(opt[t]);
三、flash中制作小人行走的思路
我不很懂腳本。要是我做這個(gè)。我就用最笨最笨的方法。
把地圖上每一個(gè)點(diǎn)都做成按鈕。
地圖上任意兩點(diǎn)間小人的移動(dòng)都做成影片剪輯。
鼠標(biāo)點(diǎn)擊任意一個(gè)點(diǎn)的時(shí)候就加載固定的影片剪輯。
要是地圖上點(diǎn)太多我就放棄。選擇別的動(dòng)畫表現(xiàn)形式。
四、做java開發(fā),怎么才能理清思路思緒,我一直都是暈的,理不清
抽絲剝繭.
你說的信息比較少,看代碼暈的話,我只能猜你做的是別人已經(jīng)開發(fā)了一半的項(xiàng)目.
Java一般應(yīng)該是web項(xiàng)目,如果是其他的可以類比,這種項(xiàng)目一定以頁面為起點(diǎn),抓住這個(gè)起點(diǎn),往后面追.剛開始接手的時(shí)候不要看無關(guān)的代碼,也不用起記憶無關(guān)的表,就一個(gè)功能點(diǎn)開始,從前臺(tái)往后面追,一直追到數(shù)據(jù)訪問,理清楚業(yè)務(wù)以及用到的表.
瀏覽器的開發(fā)者工具可以抓取請求和響應(yīng)結(jié)果,沒有頭緒的時(shí)候,點(diǎn)一下菜單,抓取請求,再(eclipse為例)ctrl+H搜索一下抓到的請求方法,就可以快速找到j(luò)ava文件.再在xml文件里搜索類名,就可以找到注入的相關(guān)配置.
等積累多了,業(yè)務(wù)和表自然就熟悉了,也就不會(huì)暈了.