○問題1解答
(1)
『入力する』という作業をする時には入出力パッケージを読み込まなければならないので
import java.io.*
(2)
『Coinの初期値は一万以外は50枚で1万は0枚』から
int Coin[][]={{10,50},{100,50},{1000,50},{10000,0}};
(3)
bnoやincは入力した数字が入る変数なので
入力の処理をしているメソッドを呼び出す必要があるので
Input();
(4)
if文での分岐で
おつりがマイナスの時(入力したお金が足りない)
おつりがない時
のふたつがあるので残りは『おつりがある時の処理』だから
oturi>0
(5)
Swich文で以外の数の時の処理は
default:
○問題2
プログラム最後に
System.out.println("\n\n\n\nSystem-----------");
for(i=0;i<4;i++){
System.out.println("inCoin["+i+"][1]="+inCoin[i][1]);
}
for(i=0;i<4;i++){
System.out.println("outCoin["+i+"][1]="+outCoin[i][1]);
}
for(i=0;i<4;i++){
System.out.println("Coin["+i+"][1]="+Coin[i][1]);
}
を追加して確認してみた所
--------------------------------------------------実行結果----------
***Automatic Sell Machine Program***
Orion Bear is 240yen
How many buy?
input-------> 70
price=16800yen
Insert money------->20000
Heres your Change
Oturi=3200yen
+++Todays Your Luck+++
* *
***** *****
*** ***
** ** ** **
System-----------
inCoin[0][1]=0
inCoin[1][1]=0
inCoin[2][1]=0
inCoin[3][1]=2
outCoin[0][1]=0
outCoin[1][1]=2
outCoin[2][1]=3
outCoin[3][1]=0
Coin[0][1]=50
Coin[1][1]=48
Coin[2][1]=47
Coin[3][1]=2
------------------------------------------------------------
よって完全なプログラムは
-----------------------------------------プログラム----------
/*
Program :rep3b.java
StudentID:035740F
Author :Mituhide Neho
Date :03/11/09/(Sun)
Comments :Autmatic Sell Machine Purogram
*/
import java.io.*;
public class rep3b{
public static void main(String args[]){
int rem,i=0,inc,bno,price;
int oturi,rem2;
int Coin[][]={{10,50},{100,50},{1000,50},{10000,0}};
int outCoin[][]={{10,0},{100,0},{1000,0},{10000,0}};
int inCoin[][]={{10,0},{100,0},{1000,0},{10000,0}};
System.out.println("\n***Automatic Sell Machine Program***\n");
System.out.println("Orion Bear is 240yen");
System.out.print("\nHow many buy?\n input-------> ");
bno=Input();
if((bno>100)||(bno<=0)){
System.out.println("Error!");
return;
}
price=bno*240;
System.out.println("price="+price+"yen");
System.out.print("Insert money------->");
inc=Input();
if((inc%10!=0)||(inc>=100000)){
System.out.println("Error!");
return;
}
rem=inc;
do{
rem=rem/10;
inCoin[i][1]=inCoin[i][1]+(rem%10);
Coin[i][1]=Coin[i][1]+inCoin[i][1];
i++;
}while(i<4);
oturi=inc-price;
if(oturi<=-1){
System.out.println("Not Enouth Money!\nError!");
}else if(oturi==0){
System.out.println("Thank you!\n");
Omake();
}else if(oturi>0){
System.out.println("\nHeres your Change");
i=0;
rem2=oturi;
do{
rem2=rem2/10;
outCoin[i][1]=outCoin[i][1]+(rem2%10);
Coin[i][1]=Coin[i][1]-outCoin[i][1];
i++;
}while(i<4);
System.out.println("Oturi="+oturi+"yen\n");
Omake();
}
System.out.println("\n\n\n\nSystem-----------");
for(i=0;i<4;i++){
System.out.println("inCoin["+i+"][1]="+inCoin[i][1]);
}
for(i=0;i<4;i++){
System.out.println("outCoin["+i+"][1]="+outCoin[i][1]);
}
for(i=0;i<4;i++){
System.out.println("Coin["+i+"][1]="+Coin[i][1]);
}
}
static int Input(){
BufferedReader Reader=
new BufferedReader(
new InputStreamReader(System.in),1);
String aaa;
try{
aaa=Reader.readLine();
return Integer.parseInt(aaa);
}catch(Exception e){
return 0;
}
}
static void Omake(){
int i,a,b;
System.out.println("+++Todays Your Luck+++");
i=(int)(Math.random()*3);
switch(i){
case 0:
System.out.println(" * ");
System.out.println("*****");
System.out.println(" *** ");
System.out.println("** **");
break;
case 1:
System.out.println(" * * ");
System.out.println("***** *****");
System.out.println(" *** *** ");
System.out.println("** ** ** **");
break;
case 2:
System.out.println(" * * * ");
System.out.println("***** ***** *****");
System.out.println(" *** *** *** ");
System.out.println("** ** ** ** ** **");
break;
default:
System.out.println("Hazure!");
break;
}
}
}
-------------------------------------------------------------------
考察&反省&感想へ
目次へ