​ស្វែងយល់ពីកម្មវិធីប្តូរប្រាក់បង្កើត​ដោយភាសា Java

​ស្វែងយល់ពីកម្មវិធីប្តូរប្រាក់បង្កើត​ដោយភាសា Java
(ដកស្រង់ពីhttp://www.sombokit.com/)
ថ្មីៗ ​នេះ​សំបុកអាយធី បានទទួល​កម្មវិធី និងអត្ថបទ​ប់ង្ហាញពី​ការ​ប្រើប្រាស់​កម្មវិធីប្តូរប្រាក់ រួមជាមួយ Source Code ដែល​ផ្តល់ជូនដោយ កញ្ញា ហ៊ាន ម៉ាលាភ។  កម្មវិធី​​ដំណើរការនៅលើ Command Prompt (ផ្ទាំងខ្មៅ) មិនមាន Interface ឬរូបរាងស្រស់​ស្អាតអីទេ តែលោកអ្នក​អាច​យក គោលគំនិត (Concept) នៃ​កម្មវិធីនេះទៅ​បង្កើត​ជាមួយ​ភាសាដទៃ ឬដាក់ជារូបរាង​ឲ្យ​បានស្រស់ស្អាតជាងនេះ​ក៏បាន។
អំពីកម្មវិធី៖
– មើលអត្រា​ប្តូរប្រាក់
– បញ្ចូលអត្រា​ដោយខ្លួនឯងបាន
– ប្តូរពីលុយខ្មែរ ទៅលុយអាមេរិក – អឺរ៉ូ – យ៉េន – បាត និងដុង។
– រក្សាទុក​ប្រតិបត្តិការណ៍​ប្តូរប្រាក់ តាមរយៈ​ការបញ្ចូល​ឈ្មោះ គណនី និង​លេខជាដើម ។ល។

សូមពិនិត្យមើល Source Code

1 import java.util.*;
2 import java.io.*;
3 class CurrencyExchange {
4
5 public static void main(String[] args) throws IOException{
6
7 Scanner scan = new Scanner(System.in);
8
9 float exchange, input , output;
10
11 Console enter = System.console();
12 String result, end;
13
14 Calculation cal = new Calculation();
15
16 while(true)
17 {
18 System.out.println("\n******Welcome To Money Exchange Operation******");
19 System.out.println(" a. View Exchange Rate (In Khmer Riels)" );
20 System.out.println(" b. RIELS => USD c. USD => RIELS");
21 System.out.println(" d. RIELS => EUR e. EUR => RIELS");
22 System.out.println(" f. RIELS => JPY g. JPY => RIELS");
23 System.out.println(" h. RIELS => THB i. THB => RIELS");
24 System.out.println(" j. RIELS => VND k.VND => RIELS");
25 result = enter.readLine (" Please select your operation (a - k): ");
26
27 switch(result)
28 {
29 case "a":
30 case "A":
31 System.out.println("\n Exchange Rate (In Khmer Riels)");
32 System.out.println ("\n*****************Exchange Rate******************\n");
33 System.out.println ( "--In Khmer Riel--" );
34 System.out.println ( "Currency Buy Sell");
35 System.out.println ( "USD 4,045.00 4,057.00");
36 System.out.println ( "EUR 5,387.94 5,509.41");
37 System.out.println ( "JPY 47.8132 49.4756");
38 System.out.println ( "THB 131.00 132.30");
39 System.out.println ( "VND 0.1798 0.1932");
40
41 confirm(result);
42 break;
43
44 case "b":
45 case "B":
46 System.out.println("\n----------Money Exchange Khmer TO USD----------\n");
47 System.out.print("What is the current exchange rate from RIEL to USD? \n Rate:");
48 exchange = scan.nextFloat();
49 System.out.print("How much would you like to Exchange? \n Input Money:");
50 input = scan.nextFloat();
51 output = cal.KHMTO(input, exchange);
52 System.out.println(output + " $");
53
54 confirm(result,exchange,input,output);
55 break;
56 case "c":
57 case "C":
58 System.out.println("\n----------Money Exchange USD TO Khmer----------\n");
59 System.out.print("What is the current exchange rate from USD to Khmer? \n Rate:");
60 exchange = scan.nextFloat();
61 System.out.print("How much would you like to Exchange? \n Input Money:");
62 input = scan.nextFloat();
63 output = cal.TOKHM(input, exchange);
64 System.out.println(output + " R");
65
66 confirm(result,exchange,input,output);
67 break;
68
69 case "d":
70 case "D":
71 System.out.println("\n----------Money Exchange Khmer TO EUROPE----------\n");
72 System.out.print("What is the current exchange rate from RIEL to EUR? \n Rate:");
73 exchange = scan.nextFloat();
74 System.out.print("How much would you like to Exchange? \n Input Money:");
75 input = scan.nextFloat();
76 output = cal.KHMTO(input, exchange);
77 System.out.println(output + " €");
78
79 confirm(result,exchange,input,output);
80 break;
81 case "e":
82 case "E":
83 System.out.println("\n----------Money Exchange EUROPE TO Khmer----------\n");
84 System.out.print("What is the current exchange rate from EUROPE TO Khmer? \n Rate:");
85 exchange = scan.nextFloat();
86 System.out.print("How much would you like to Exchange? \n Input Money:");
87 input = scan.nextFloat();
88 output = cal.TOKHM(input, exchange);
89 System.out.println(output + " R");
90
91 confirm(result,exchange,input,output);
92 break;
93 case "f":
94 case "F":
95 System.out.println("\n----------Money Exchange Khmer TO JAPAN----------\n");
96 System.out.print("What is the current exchange rate from RIEL to JAPAN? \n Rate:");
97 exchange = scan.nextFloat();
98 System.out.print("How much would you like to Exchange? \n Input Money:");
99 input = scan.nextFloat();
100 output = cal.KHMTO(input, exchange);
101 System.out.println(output + " ¥");
102
103 confirm(result,exchange,input,output);
104 break;
105 case "g":
106 case "G":
107 System.out.println("\n----------Money Exchange JAPAN TO Khmer----------\n");
108 System.out.print("What is the current exchange rate from JAPAN TO Khmer? \n Rate:");
109 exchange = scan.nextFloat();
110 System.out.print("How much would you like to Exchange? \n Input Money:");
111 input = scan.nextFloat();
112 output = cal.TOKHM(input, exchange);
113 System.out.println(output + " R");
114
115 confirm(result,exchange,input,output);
116 break;
117 case "h":
118 case "H":
119 System.out.println("\n----------Money Exchange Khmer TO THAI----------\n");
120 System.out.print("What is the current exchange rate from RIEL to THAI? \n Rate:");
121 exchange = scan.nextFloat();
122 System.out.print("How much would you like to Exchange? \n Input Money:");
123 input = scan.nextFloat();
124 output = cal.KHMTO(input, exchange);
125 System.out.println(output + " B");
126
127 confirm(result,exchange,input,output);
128 break;
129 case "i":
130 case "I":
131 System.out.println("\n----------Money Exchange THAI TO Khmer----------\n");
132 System.out.print("What is the current exchange rate from THAI TO Khmer? \n Rate:");
133 exchange = scan.nextFloat();
134 System.out.print("How much would you like to Exchange? \n Input Money:");
135 input = scan.nextFloat();
136 output = cal.TOKHM(input, exchange);
137 System.out.println(output + " R");
138
139 confirm(result,exchange,input,output);
140 break;
141 case "j":
142 case "J":
143 System.out.println("\n----------Money Exchange Khmer TO VIET NAME----------\n");
144 System.out.print("What is the current exchange rate from RIEL to VIET NAME? \n Rate:");
145 exchange = scan.nextFloat();
146 System.out.print("How much would you like to Exchange? \n Input Money:");
147 input = scan.nextFloat();
148 output = cal.KHMTO(input, exchange);
149 System.out.println(output + " D");
150
151 confirm(result,exchange,input,output);
152 break;
153 case "k":
154 case "K":
155 System.out.println("\n----------Money Exchange VIET NAM TO Khmer----------\n");
156 System.out.print("What is the current exchange rate from VIET NAM TO Khmer? \n Rate:");
157 exchange = scan.nextFloat();
158 System.out.print("How much would you like to Exchange? \n Input Money:");
159 input = scan.nextFloat();
160 output = cal.TOKHM(input, exchange);
161 System.out.println(output + " R");
162
163 confirm(result,exchange,input,output);
164 break;
165
166 default:
167 System.out.println("\nInvalid Input");
168 System.out.println("\nPlease try again !!!:");
169
170 }
171 }
172 }
173
174 public static void confirm(String result,float exchange,float input,float output) throws IOException
175 {
176 Console enter = System.console();
177 String end;
178
179 end = enter.readLine("Do you want to end the operation (Y/N):");
180 if (end.equals("Y") ||(end.equals("y"))){
181
182 System.out.println("Please register first:");
183
184 Account(result,exchange,input,output);
185 Display();
186
187 System.out.println("\n==============Thank you for your operation==============\n");
188
189 System.exit(-1);}
190
191 else if(end.equals("N") ||(end.equals("n"))){}
192
193 else{
194 System.out.println("Invalid Input");}
195
196 }
197 public static void confirm(String result) throws IOException
198 {
199 Console enter = System.console();
200 String end;
201
202 end = enter.readLine("Do you want to end the operation (Y/N):");
203 if (end.equals("Y") ||(end.equals("y"))){
204
205 System.out.println("Please register first:");
206 Account(result);
207 Display();
208
209 System.out.println("\n==============Thank you for your operation==============\n");
210
211 System.exit(-1);}
212
213 else if(end.equals("N") ||(end.equals("n"))){}
214
215 else{
216 System.out.println("Invalid Input");}
217
218 }
219
220 public static void Account(String result,float exchange,float input,float output)throws IOException{
221
222 FileOutputStream out = new FileOutputStream(new File("account.txt"),true);
223 BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
224
225 System.out.print("Account Number:");
226 String No = in.readLine();
227 System.out.print("Account Name:");
228 String Name = in.readLine();
229 System.out.print("E-mail:");
230 String Email = in.readLine();
231 String Acc = "\nAccount Number:"+No+"\nAccount Name:"+Name+"\nEmail:"+ Email +" ";
232 String text="\n--------------------\nAccountInfo:\n"+ Acc + "\nOperation: " + result + "\nRate: " + String.valueOf(exchange) + "\nInput Money: " + String.valueOf(input)+"\nTotal Amount: "+String.valueOf(output) +"\n--------------------\n";
233
234 //out.write(Acc.getBytes());
235 out.write(text.getBytes());
236 out.flush();
237 out.close();
238 System.out.println("Record was saved successfully!");
239 }
240
241 public static void Account(String result)throws IOException{
242 String text="Operation: " + result;
243
244 FileOutputStream out = new FileOutputStream(new File("account.txt"),true);
245 BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
246
247 System.out.print("Account Number:");
248 String No = in.readLine();
249 System.out.print("Account Name:");
250 String Name = in.readLine();
251 System.out.print("E-mail:");
252 String Email = in.readLine();
253
254 //out.write(Acc.getBytes());
255 out.write(text.getBytes());
256 out.flush();
257 out.close();
258
259 System.out.println("Record was saved successfully!");
260
261 }
262
263 public static void Display()throws IOException{
264 File f = new File("account.txt");
265 System.out.println("\n-----------Display your account-----------");
266
267 if(f.exists()){
268 FileInputStream fis = new FileInputStream(f);
269 byte b;
270 do{
271 b= (byte) fis.read();
272 System.out.print((char)b);
273 }
274 while(b!=-1);
275 }
276 else
277 System.out.println("file does not exists!");
278 System.out.println("-------------------------------------");
279
280 }
281
282 }
283
284 class Calculation {
285 Calculation() {
286 }
287
288 private float exchange, output, input;
289 private int conversion;
290
291 public float TOKHM(float input, float exchange) {
292
293 output = (input * exchange);
294 return output;
295 }
296
297 public float KHMTO(float input, float exchange) {
298
299 output = (input / exchange);
300 return output;
301 }
302 }

ទាញយកកញ្ចប់កូដ

—————————————————————-

​ជាដំបូង៖ មុននឹងលោកអ្នក​អាចដំណើរ​ការ​កម្មវិធីនេះបាន លោកអ្នក​ចាំបាច់​ត្រូវ​តំឡើង Java JDK (អាចទាញយកបាន​ នៅទីនេះ)។ បន្ទាប់មក សូមដំណើ​ការ cmd (Ctrl + R រួចវាយ cmd) ។ ហើយ​សូមឈរ​លើ Drive ឬទីតាំង​ដែល File currencyexchange.java របស់អ្នកស្ថិតនៅ (ដោយប្រើ cd/)។ រួចសូម វាយ path= C:\Program Files\Java\jdk1.6.0_21\bin (ទីតាំងដែល Java JDK នោះស្ថិតនៅ)។ រួចសូមវាយថា javac CurrencyExchange.java (ដូចរូប) ដើម្បីដំណើរការ។

​ជំហានទី២៖ ប្រសិន​បើគ្មានការ Error ណាកើតឡើងទេ សូមបន្តវាយ Java CurrencyExchange (ហៅឈ្មោះ Class File)

​ជំហានទី៣៖ លោកអ្នក​នឹងទទួលបានសារស្វាគមន៍

​ជំហានទី៤៖ សូមជ្រើសរើសប្រតិបត្តិការណ៍​ណាមួយ ដែលអ្នក​ចង់ដំណើរ ដោយ​អាច​វាយអក្សរណាមួយ ចាប់ពី a ដល់ k

​រើសយកប្រតិបត្តិការណ៍ a គឺបង្ហាញ អត្រា ប្តួរប្រាក់

​ជំហានទី៥៖ គេនឹងសួរ​លោកអ្នក​ថា តើអ្នក​នឹង​បញ្ចប់​ប្រតិបត្តិការត្រឹមនេះឬ? សូមវាយ Y សម្រាប់ Yes ឬវាយ N សម្រាប់ No

​បើរើសយក No គឺបន្តប្រតិបត្តិការណ៍ ហើយ ឈានចូល ប្រតិបត្តិការណ៍ b

​ជំហានទី៦៖ បន្ទាប់ពី​បញ្ចូលអត្រា​ប្តូរប្រាក់ (Rate) រួច​ដាក់​ចំនួន​ទឹកប្រាក់រួចមក អ្នក​នឹងទទួលបានលទ្ធផល។ ហើយគេនឹងសួរ​អ្នក​ម្តងទៀតថា៖ តើអ្នក​នឹងបញ្ចប់វាត្រឹមនេះឬ? បើអ្នកវាយ Y (Yes) គឺគេនឹងទាមទារឲ្យ​អ្នកចុះឈ្មោះសិន (ដើម្បី​កត់ត្រារាល់ ប្រតិបត្តិការណ៍​របស់អ្នកទុក)។

ជំហានចុងក្រោយ៖ វានឹង​បង្ងាញជាព័ត៌មានដែល​អ្នក​បានបញ្ចូល និង​ប្រតិបត្តិការណ៍​របស់អ្នក (ដូចរូប)


​សម្រាប់ចម្ងល់ និងវិធី​បង្កើត​កម្មវិធី​នេះលម្អិត សំបុកអាយធី​នឹងរៀបចំជូន​ប្រសិនបើ​មានសំណូមពរពី​មិត្តអ្នកអាន។

Posted on ខែមករា 24, 2012, in Uncategorized. Bookmark the permalink. បញ្ចេញមតិ.

ឆ្លើយ​តប

Fill in your details below or click an icon to log in:

ឡូហ្កូ WordPress.com

អ្នក​កំពុង​បញ្ចេញ​មតិ​ដោយ​ប្រើ​គណនី WordPress.com របស់​អ្នក​។ Log Out / ផ្លាស់ប្តូរ )

រូប Twitter

អ្នក​កំពុង​បញ្ចេញ​មតិ​ដោយ​ប្រើ​គណនី Twitter របស់​អ្នក​។ Log Out / ផ្លាស់ប្តូរ )

រូបថត Facebook

អ្នក​កំពុង​បញ្ចេញ​មតិ​ដោយ​ប្រើ​គណនី Facebook របស់​អ្នក​។ Log Out / ផ្លាស់ប្តូរ )

Google+ photo

អ្នក​កំពុង​បញ្ចេញ​មតិ​ដោយ​ប្រើ​គណនី Google+ របស់​អ្នក​។ Log Out / ផ្លាស់ប្តូរ )

កំពុង​ភ្ជាប់​ទៅ​កាន់ %s

%d bloggers like this: