ej o edspace e di t qe me nje program te tille po ta perdorin bankat ne te vertete do te kishin humbje te medha
P.S. Per humor me shume se e di qe nuk do te perdoret ne banke tamam.
ej o edspace e di t qe me nje program te tille po ta perdorin bankat ne te vertete do te kishin humbje te medha
P.S. Per humor me shume se e di qe nuk do te perdoret ne banke tamam.
Edspace te falenderoj sinqerisht per ndihmen qe po me jep por ne programin e fundit ti e kishe bere shume te advancuar. Sipas detyres duhet vetem te bejme while loop dhe pa qene nevoja te perdoresh do while dhe private data members. Nqs ke kohe te lire ju lutem qe ta modifikosh vetem duke dhene nje zgjidhje te thjeshte programit si me poshte:
import java.util.Scanner;
public class banker {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
float balance, amount;
String transType;
System.out.print("What is the starting balance: ");
balance = scan.nextFloat();
System.out.print("Enter transaction: ");
transType = scan.next();
System.out.println("Begining balance: "+balance);
System.out.println("Transaction is: "+transType);
//while (
}
}
Shumë të thatë e paske humorin.Postuar më parë nga qoska
Nga nisesh qe thua do dalin bankat me humbje?
Në shikon ndonjë gabim në kod je i lutur ta korrigjosh. Unë kam vetëm pak javë që po programoj në Java dhe nuk e di mirë sintaksën. Gjatë programimit kam aplikuar më shumë njohuritë mbi C++, me mendimin se do punojnë edhe në Java.
Kodin e testova gjatë dhe nuk pashë ndonjë gabim. Për një detyrë shkolle e bën punën por megjithatë, më njofto nqs shikon ndonjë gabim.
-------------
Michigansi,
Duhet të jesh në gjëndje tani ta modifikosh kodin sipas dëshirës. Nuk ke për të mësuar gjë po ti shkruaj unë të gjitha programet. Prandaj po të përsëris edhe njëherë që ti mundohu ta shkruash vetë kodin në fillim dhe kur të hasësh probleme hidhe në forum.
Po të kem kohë mund të bëj diçka. Nuk të premtoj gjë.
Edi
mos e merr kaq personale se nuk e kisha per gabime ne kod. kodin nuk e kam lexuar fare pasi une se kam qejf javen(mgjthse di te programoj ne te) por pashe konvertimet qe beje nga float ne integer dhe nqs kete program do ta perdorje ne banke me verte dhe nqs ti do te kishe studiuar pak analize numerike(qe te meson te llogarisesh gabimet qe ben gjate veprimeve) do ta kuptoje se si rrumbullakimet e tua i cojen bankes tende dem me shume se 1 milion ne vit.
Per kete thashe ashtu atij cunit i duhet vetem per nje detyre kursi ne shkolle dhe nuk e di se nuk ben nje search dhe te gjej dicka te gatshme ta modifikoje sesa te lodhi te tjeret kot.
Qoska, bëj një kritikë për te qënë se nuk mjaftojnë dy rreshta komente që unë duhet të kisha studiuar analizë numerike për të kuptuar gabimet e konvertimit. Komente të tilla nuk më ndihmojnë mua që të mësoj Java nga ty që paske më shumë eksperiencë.
Ti që ke mësuar analizë numerike më sqaron dot problemin? Konvertimi nga float në integer punon pë mrekulli dhe nuk shoh të ketë asnjë gabim në konvertim përveç limiteve të vetë kompjuterit dhe Java që kam përmëndur më lart.
Ku është gabimi i konvertimit? Nga e nxjerr shifrën 1 milion? Si do ta shkruaje ti kodin që të mos ndodhte ky gabim dhe programi të përdorej në banka të vërteta?
Në je i zoti tu pergjigjesh atyre pyetjeve, atëherë mund të kemi një debat të dobishem në forum dhe të mësojmë diçka nga njëri tjetri. Ky është qëllimi i forumit të informatikës.
Edi
1. Ask for and read the customer BALANCE
2. Ask for and read TRANSACTION TYPE
3. While TRANSACTION TYPE is not EXIT do
Ask for and read Transaction AMOUNT
if TRANSACTION TYPE is DEPOSIT then
credit transaction AMOUNT to BALANCE
else if TRANSACTION TYPE is WITHDRAWAL then
if BALANCE can not cover transaction AMOUNT,
debit the customer $25.00 for insufficient funds
else
debit the customer for the transaction AMOUNT
endif
else
print a message saying "unidentified transaction"
endif
Ask for and read the next TRANSACTION TYPE
Endwhile
Edspace keto jane regullat qe duhet te ndiqen pa qene nevoja per do while, for loop, ose private data members vetem while loop lejohet. Une i dhash disi nje zgjidhje por nuk me jepte rezultatet e sakta.
Kodi i saktë dhe më i mirë është ai që kam postuar më lart. Ai kod zbaton teoritë e ndërtimit të klasave, është i zgjerueshëm për projekte të tjera, është më i thjeshtë për të lexuar e kuptuar, si dhe llogjikisht më i saktë.
Megjithatë, mqns ti këmbëngul që programi të mos përdorë variabla private, funksione, dhe do-while, atëherë po e varfëroj kodin që ti përshtatet rregullave të tua.
Funksioni kryhet njësoj si në programin e parë.
Në lidhje me do-while, arsyeja pse e përdora është se do-while ekzekuton kodin brënda përsëritjes (loop) të paktën një herë dhe pastaj vendos nqs do ta pësërisë prapë apo jo. Në rastin tonë, kur hapet programi ne nuk kemi marrë ende komandë nga përdoruesi, prandaj duhet të ekzekutojmë kodin të paktën një herë dhe pastaj të vendosim nqs do përsërisim procesin duke tërhequr dhe depozituar, apo do dalim nga përsëritja. Pra nuk është nevoja të bëjmë krahasimin while(!finished) që me herën e parë qe ekzekutojmë kodin.
Duke përdorur një do-while kemi një krahasim më pak dhe teorikisht kodi duhet të jetë pak më i shpejtë. Shpejtësia që fitojmë nga ky ndryshim (do-while apo while) është shumë shumë i vogël por e shkruajta ashtu sepse është mirë që këto gjëra të të bëhen shprehi që në fillim. Kur shkruan kod, mos mendo vetëm si të arrish rezultatin përfundimtar, por edhe si të arrish atë rezultat me mënyrën më efektive duke marrë parasysh shpejtësinë, qartësinë e kodit, ripërdorimin në të ardhmen, etj.
Ja një shëmbull për të ilustruar ndryshimin midis do-while dhe while:
Në kodin më lart, fjala Forumi do shfaqet në ekran ndërsa fjala Shqiptar NUK do shfaqet. Që të dyja bëjnë vetëm një krahasim por do-while e bën në fund ndërsa while e bën që në fillim.Kodi PHP:
boolean kushti_i_perseritjes = false;
do{
System.out.print("Forumi"); //bëj
}while( kushti_i_perseritjes ); //kontrollo
while( kushti_i_perseritjes ){ //kontrollo
System.out.print("Shqiptar"); //pastaj bëj
}
Në të gjitha librat dhe klasat e kompjuterit që të dyja format mësohen në të njëjtën kohë. Të njëjtën gjë duhet të bëjë edhe profesori yt dhe nuk duhet të të këshillojë të përdorësh vetëm njërën.
Ja dhe kodi:
Kodi PHP:
import java.util.Scanner;
public class Banker {
public static void main(String[] args) {
int balance = 0; //balanca qe gjendet ne banke
int deposit_total = 0; //shuma totale e depozitave
int withdraw_total = 0; //shuma totale e terheqjeve
int deposit_num = 0; //numri i depozitave te bera
int withdraw_num = 0; //numri i terheqjeve te bera
int transaction = 0; //shuma e depozituar ose terhequr
boolean finished = false;
Banker banker = new Banker();
Scanner scan = new Scanner(System.in);
String trans_type; //veprimi qe gjezh perdoruesi
//W per Withdraw, terheqje
//D per Deposit, depozite
//E per Exit, te mbylle programin
//Marrim shumen fillestare te llogarise
//E pyesim perdoruesin deri sa shuma te jete te pakten 1 qindarke
do{
System.out.print("What is the starting balance: $");
balance = (int)(scan.nextFloat() * 100);
}while(balance < 1);
while(!finished){
//Marrim veprimin qe do te kryej perdoruesi
System.out.print("Enter transaction (W/D/E): ");
trans_type = scan.next();
if(trans_type.equals("W") || trans_type.equals("D")){
// E pyesim perdoruesin per shumen e veprimit
// deri sa te shkruaj nje shume pozitive
do{
System.out.print("Enter Trans. Amt: $");
transaction = (int)(scan.nextFloat() * 100);
}while(transaction < 1);
if(trans_type.equals("D")){
//depozitojme parate ne llogari
//azhurnojme balancen
balance = balance + transaction;
deposit_total = deposit_total + transaction;
deposit_num = deposit_num + 1;
System.out.println("Balance after Deposit: $" + (float)(balance / 100.0));
}
else{
if( balance > transaction){
//terhiq parate, azhurno balancen
balance = balance - transaction;
withdraw_total = withdraw_total + transaction;
withdraw_num = withdraw_num + 1;
System.out.println("New Balance is $" + (float)(balance / 100.0));
}
else if( balance > 2500 ){
// nqs kerkon te terheqe me shume sec ka ne banke
// shikojme nqs ka me shume se 25 dollare dhe po te kete
// i japim 25 dollare
balance = balance - 2500;
withdraw_total = withdraw_total + 2500;
withdraw_num = withdraw_num + 1;
System.out.print("Insufficient fund. You have been debited $25.00.");
System.out.print(" New Balance is $" + (float)(balance / 100.0));
System.out.println();
}
else{
//ska para te mjaftueshme per terheqje
System.out.println("Insufficient funds.");
}
}
}
else if(trans_type.equals("E")){ //nqs perdoruesi mbaroi pune
finished = true;
//nxjerrim statistikat
//balanca fillestare
int starting_balance = balance - deposit_total + withdraw_total;
System.out.println("Your starting balance was $" + (float)(starting_balance / 100.0) );
System.out.println("You made " + withdraw_num + " withdrawals with a total of $" + (float)(withdraw_total / 100.0) );
System.out.println("You made " + deposit_num + " deposits with a total of $" + (float)(deposit_total / 100.0) );
System.out.println("Your new balance is $" + (float)(balance / 100.0) );
System.out.println("Goodbye!");
}
else{
// Perdoruesi shkruajti dicka ndryshe nga W, D, E
// prandaj i nxjerrim gabimin ne ekran
System.out.println("Unidentified transaction.");
System.out.println("[W]ithdraw");
System.out.println("[D]eposit");
System.out.println("[E]xit");
}
}
}
}
Edi
edi, mos te kisha lexuar titullin e temes do mendoja se ishte ne C kodi........![]()
Besoj se deri tani ( deri kur ke filluar te merresh me java) kishe programuar ne gjuhe si C a C++, kuptohet...![]()
nejse dhe une gati nje muaj kam qe po perdor java (client-server apps),dhe besoj se duhet pak per tu mesuar me paradigmen Object Oriented...
e ka ndo1 ebook te java network programming?????????
bye
The truth may be out there, but lies are inside your head.
Java network programming nga O'Reily.
Këtu ke shëmbujt që jepen në atë libër.
http://www.cafeaulait.org/books/jnp2...les/index.html
Librin e plotë mund ta marrësh me edonkey (rreth 3Mb)
Kliko këtu nqs e ke të instaluar:
ed2k://|file|Oreilly%20-%20Java%20Network%20Programming%202Ed.pdf|2640327| 2878C01D0FE2821D8F867E79EE3066AA|/
Kam lexuar nja dy libra për Java por nuk më pëlqen dhe aq. Më pëlqen që ka shumë klasa të gatshme dhe është portative për të gjithë sistemet operative por ka shumë rregulla për organizimin e objekteve.
Paradigmën e objekteve e kam ditur nga C++ dhe deri tani nuk shoh ndonjë avantazh të Java. Megjithatë s'kam bërë ndonjë program serioz deri tani që të shikoj të gjitha avantazhet.
Edi
Je punesuar nga nje kompani programimi ne Ny. Puna e pare jote eshte te shkruash nje program per sistemin e pageses se tyre. E zeme se c'do punetor ka nje karte dhe atje ka informacion per punetorin. Tani duhet te shkruajme nje program qe lexon inforacionin qe identifikon punetorin dhe priten cekun per c'do punetor qe i eshte lexuar informacioni. Perdorn emrin e nje punetori Done qe te behet exit programi. Duhet te perdoren while loop ose do while loop. Nuk duhen te perdoren private data members ose public thjesht nje programi i thjeshte.
You have just been hired by xyz corporation of New York as a programmer.
Your first assignment is to write a program for their payroll system. Given that
paychecks are computed from an employee time card, where an employee time card is
represented as a sequence of data items. Write a program that prompts for and reads
each employee's time card data and prints out the pay check for each time card read. Don't use private data members or public, just a simply program.
Use an employee first name of DONE as the sentinel for when the program is to stop.
Employee time cards have the following format:
Employee first name
A blank column
Employee last name
A blank column
Employee social security number e.g. 123456789
A blank column
the character 'c' for city office or 's' for suburban office
A blank column
the character 'u' for union or 'n' for non union member
number of regular hours (integer)
hourly pay rate (dollars . cents)
number of dependents (integer)
number of overtime hours (a float type number)
e.g. 123456789 c n 80 9.55 3 5.5
Your program should print the employees pay check showing the following values and
using the formula given below to compute each value:
- gross pay as (regular hours * rate) + (overtime hours * 1.5 * rate)
- federal tax as 0.14(gross - 13 * dependents)
- social security deduction as 0.052 * gross
- city tax as 4% of gross pay if employee works in the city, 0.0 if not
- union dues as 6.75% of gross pay if employee is in the union, 0.0 if not
- net pay as gross - fed tax - ssn deduction - city tax - union dues
print the pay check in this exact format/design. fill in the ___?__ information.
Kodi:******************************************************************************** ** xyz corporation date:03/27/89(Currnt date)** ** 999 john doe street ** ** manhattan, ny. 48197. ** ** ** ** Please pay name: ? ** ** Social security number: ? ** ** the amount of: ? dollars, and ? cents ** ** ** ** signed: ** ** xyz corp. president ** ** ** **------------------------------------------------------------------------------** ** ** ** regular pay: ? ** ** overtime pay: ? ** ** gross pay: ? ** ** federal tax: ? ** ** social sec. deduction: ? ** ** city tax: ? ** ** union dues: ? ** ** net pay: ? ** ** ** ********************************************************************************* use this sample data to test your program. John Doe 123456789 c U 80 8.00 0 20.5 Jim Kelly 123530000 S n 80 5.25 3 20.0 Ashley Simpson 200300400 C N 20 4.00 1 0.0 Larry Bird 300400500 s u 10 15.00 5 0.0 Mike Smith 400500600 s u 10 2.00 0 1.0 Done
Ndryshuar për herë të fundit nga edspace : 10-11-2004 më 02:34
Krijoni Kontakt