Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

Öne çıkan mesajlar

Mesaj tarihi:
Şimdi ödev şu, program da 5 function olucak, para yatırma, çekme, bakiye görüntüleme, son işlem ve çıkış. Her işlemden sonrada işlem menüsüne tekrar dönecek. 2 sorum var: 1. si Para yatırdıktan sonra ana menüye döndüğünde çıkışa ilk basışta olmuyor 3 4 kere girmek gerekiyor çıkış değerini. 2.de son işlemi göstermeyi nasıl yapacağım hakkında bir fikrim yok.

import java.util.Scanner;
public class bank {
static int bakiye=0;
static Scanner sc=new Scanner(System.in);
public static void tercih()
{

System.out.println("Para yüklemek için 1'e basınnPara çekmek için 2'ye basınnBakiye görüntleme için 3'e basınnÇıkış için 5'e basın");
int a;
while(true){
a=sc.nextInt();
if(a==1)
yukleme();

if(a==2)
cekme();

if(a==3)
bakiyegoruntuleme();


if(a==5)
break;
}
}
public static void bakiyegoruntuleme()
{
System.out.println("Kalan bakiyeniz: "+bakiye+" TL");
tercih();
}
public static void yukleme()
{
int n;
System.out.print("Yuklemek istediğiniz miktarı giriniz: ");
n=sc.nextInt();
bakiye=bakiye+n;
System.out.println("İşleminiz başarıyla gerçekleşmiştir.");
bakiyegoruntuleme();
tercih();
}
public static void cekme()
{
int n;
System.out.print("Çekmek istediğiniz miktarı giriniz: ");
n=sc.nextInt();
if(bakiye>=n)
{
bakiye=bakiye-n;
System.out.println("İşleminiz başarıyla gerçekleşmiştir.");
bakiyegoruntuleme();
tercih();
}
else
{
System.out.println("Hesabınızda bu miktarda para bulunmamaktadır.");
tercih();
}
}
public static void main(String[] args) {
tercih();

}

}

Mesaj tarihi:
main içinde tercih metodunu bir kere çağırıyorsun, while döngüsüne giriyorsun. Sen 5'i seçene kadar o döngü devam ediyor.

Diyelim 1'e bastın ve yukleme metoduna girdin. O metod bittiğinde metodu çağırdığın satırın arkasındana devam edecek zaten. Ama sen yukleme metodunun içinde bir kez daha tercih çağırıp yeni bir döngü daha başlatıyorsun. Aynı şey diğer metodlar için de geçerli. Dolayısıyla da kaç döngü başlattıysan o kadar 5'e basman gerekiyor. Kısacası main haricindeki tercih metod çağrılarını kaldırman lazım.

Onun dışında (kod stili gözümü yorduğu için) detaylara bakmadım.

Edit: Son işlemi göstermek ile kastın ne tam anlamadım. Diyelim adam en son para çekti, son işleme basınca yine para çekme menüsüne mi girecek? Yoksa ne kadar para çekildiğini mi gösterecek? vs vs
Mesaj tarihi:
Son işlemi göster diyince mesela en son 200 lira para çektiniz falan diyecek. Birde her işlemden sonra tercih menüsünü tekrar çağırmamız gerekiyormuş, o tercih olayını while sız yaparsam o zaman hallolur sanırım ama onu nasıl yapıcam bilmiyorum?
Mesaj tarihi:
Bakiye için int türünden bir değişken tanımlamışsın. İşlem sırasında bakiyeyi değiştiriyorsun. Aynı şekilde son işlemi özetleyen bir String tanımla. Her işlemde o String'in içeriğini değiştirirsin.

Diğer sorun için: while döngüsünü main metoduna kaydır. tercih metodu içinde sadece println'ler kalsın. Sadece "menüyü bastırsın" yani.
Mesaj tarihi:
Akıllı text editorü edinmeni tavsiye edeyim, yeni başlıyorsan IDE lere bulaşma.

Yazdığın code un okunabilirliği için tab lara '{' '}' hizalamaya dikkat et, okunabilirlik önemli en başta kendin için.

P.S: Post ettim, mesaj güncellendi :)
Mesaj tarihi:
Teşkürler sigisMoNd :)

SpiderS_DangeR said:
Tamam çok teşekkür ederim akşam denicem. Bir de java öğrenmeye daha yeni başladım ben anlayabileceğin gibi. Kodları okurken gözüm yoruluyo falan dedin ya, düzenli olarak nasıl yazabilirim ki ?


sigisMoNd'un bahsettiği code yerine quote kullanmışsın. Dolayısıyla kopyaladığın kodda indentation olmasına rağmen mesajında kaybolmuşlar. Ben de code kullandığın halde indentation olmadığını düşündüm ondan dedim. Mesajını değiştirdim, çok kötü de değilmiş. Çok daha beter yazanlar var. :)

Yine de düzenli kod yazmak hakkında detaylı bilgi istersen şuraya http://java.sun.com/docs/codeconv/CodeConventions.pdf bir göz atabilirsin. En azından şöyle bir bakmanı tavsiye ederim. Daha öğrenmediğin kesimleri atla.

Benim ilk gözüme çarpanlar değişken ve fonksiyon isimleri. Kelimelerin ilk harflerini büyük başlatırsan daha rahat okunur. bakiyegoruntuleme yerine bakiyeGoruntuleme mesela. Class isimleri de aynı şekilde, ama ilk onların ilk harfi de büyük oluyor.

Onun dışında satır içimde terimlerin arasında boşluk bırakman daha hoş olur. Öbür türlü çok sıkışık gözüküyor. Mesela

if(bakiye>=n) // sıkışık
if (bakiye >= n) // cillop

// İşler karışınca önemi daha iyi ortaya çıkıyor, şekil 1a:

if(int i=0;i<bakiyegoruntule("str"+n,arg2);godisnowhere()){
if (int i = 0; i < bakiyeGoruntule("str" + n, arg2); godIsNowHere()) {
Mesaj tarihi:
Hazır konu varken burdan sorayım. Mesela elimizde .art uzantılı dosya var notepad ile açılabiliyo ve düzgün satır satır yazılar çıkıyor. Bu textin içinde şöyle satırlar var "ASE 401195 00 000"
Java ile yazdığımız bir program ile bu satırları testip edip, sayıların arasındaki boşlukları sildirip yeni bir tane .art dosyası oluşturtup onun içine yazdırabiliyor muyuz bu yeni versiyonu? Yani java ile bu mümkün müdür?
Mesaj tarihi:
Mumkundur. "Java IO" veya "Java file read write" diye aratirsan bir suru ornek cikar karsina.
Ancak caiz degildir, o isi yapabilecegin cok daha basit diller var, python, jython gibi.
×
×
  • Yeni Oluştur...