1. vb 求編程 找零問題 要求找出錢幣最少(只有1,5,10,20,50元),請設計函數change輸出找零方案
給個思路吧.
你這個題的意思寫的不明確,我想這個函數大概是需要一個價格,和一個給的金額.
設定變數, num50,num20,num10,num5,num1 需要找的零錢的數量.
首先 ,金額-價格=找零,如果找零=0 就不用說了.
然後, 找零/50 ,得出需不需要50的.用找零mod/50 得出還需要找多少. 這里可以做判斷,如果找零>0 並且 找零/50>0 ,並且 找零 mod 50 =0 ,也就是說找一張50的就可以了,那就結束函數
以此類推
找零餘額/20 ,找零餘額 mod 20 .... 判斷是否找夠....
2. java編程計算付款和找零
importjava.io.IOException;
importjava.io.InputStream;
importjava.util.ArrayList;
importjava.util.List;
publicclassChange{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
System.out.println("請輸入價格:");
doublem=Double.parseDouble(getInputLine());
System.out.println("請付款金額:");
doublec=Double.parseDouble(getInputLine());
change(m,c);
}
(){
InputStreaminputStream=System.in;
List<Byte>cmdBuffer=newArrayList<Byte>();
intt;
try{
while(true){
t=inputStream.read();
if(t==' '){
byte[]bs=newbyte[cmdBuffer.size()];
for(inti=0;i<cmdBuffer.size();i++){
bs[i]=cmdBuffer.get(i);
}
returnnewString(bs).trim();
}else{
cmdBuffer.add((byte)t);
if(cmdBuffer.size()>1024){
returnnull;
}
}
}
}catch(IOExceptione){
returnnull;
}
}
publicstaticdouble[]moneys={0.01,0.02,0.05,0.1,0.2,0.5,1,2,5,10,20,50,100};
/**
*@paramm
*價格
*@paramc
*付款
*/
publicstaticvoidchange(doublem,doublec){
doublez=c-m;
if(z<0){
System.out.println("付款不足!");
}elseif(z==0){
System.out.println("不需要找零。");
}else{
System.out.println("找零共:"+z+"元");
System.out.println("其中:");
for(inti=moneys.length-1;i>=0;i--){
doublemoney=moneys[i];
intcount=0;
while((z-money)>=0){
z-=money;
count++;
}
if(count>0){
System.out.println(money+"元:"+count+"張");
}
}
}
}
}
3. C語言實收金額找零代碼怎麼寫
#include<stdio.h>
voidmain()
{
doubleprice,money=0;
intnum;
printf("請輸入方便麵的價格和購買的數量:");
scanf("%lf%d",&price,&num);
money+=price*num;
printf("請輸入作業本的價格和購買的數量:");
scanf("%lf%d",&price,&num);
money+=price*num;
printf("請輸入圓珠筆的價格和購買的數量:");
scanf("%lf%d",&price,&num);
money+=price*num;
printf("應付金額:%.2lf ",money);
printf("實收金額:");
{
doublemoney1;
scanf("%lf",&money1);
printf("找零:%.2lf ",money1-money);
}
}