soru su 4 basamaklı bi sayı girecek kullanıcı. kod bu sayının basamaklarını toplayıp ekrana yazdıracak ben su kodu yazdım sorun nerede acaba?


import java.util.Scanner;
/**
*
* @author sss
*/
public class JavaApplication9 {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {

int tamsayı=2345 ;
int yüzlerbsamagı;
int binlerbsamagı;
int onlarbsamagı;
int birlerbasamagı;
int sonuc;

binlerbsamagı = tamsayı/1000;
yüzlerbsamagı = tamsayı/100;
onlarbsamagı = tamsayı/10;
birlerbasamagı = onlarbsamagı % 10 ;


System.out.print("değer giriniz:" );
Scanner input = new Scanner(System.in);

tamsayı = input.next();

sonuc = binlerbsamagı+yüzlerbsamagı+onlarbsamagı+birlerbasamagı;

System.out.println("tamsayı nın basamakları toplamı " + sonuc);
}
}

 

pardon int tamsayı ; o ilk yazdığım.

kurkcudukkaninadonentilki

binlerbsamagı = tamsayı/1000;
yüzlerbsamagı = tamsayı/100;
onlarbsamagı = tamsayı/10;
birlerbasamagı = onlarbsamagı % 10 ;

işlemleri hatalı olmuş. şimdi "binlerbsamagı = tamsayı/1000;" yaptık ya, bu işlem bittikten sonra tamsayı hala 2345, 345 değil yani.

reliable

@reilable dediğin kısım tamam da hatayı surası veriyor neden acaba??

System.out.print("değer giriniz:" );
Scanner input = new Scanner(System.in);

tamsayı = input.next();

kurkcudukkaninadonentilki

scanner classı import edilmedi mi acaba? (edilmiş)

hata ne diyor?

bide giriş işlemini hesaplamalardam önce yaparsak iyi olur. bu sekilde hep 2345 için sonuc üretilir.

reliable

hatayı buldum sorun suymuş :

tamsayı = input.nextInt(); birinci hatam

input u önce tanımladığım için

binlerbsamagı = tamsayı/1000;
yüzlerbsamagı = tamsayı/100;
onlarbsamagı = tamsayı/10;
birlerbasamagı = onlarbsamagı % 10 ;

bunları altına aldım sonuç : 263 çıktı :) neden 263 çıktı 264 olmalıydı :)

kurkcudukkaninadonentilki

bilmem :) hangi giriş için verdiki bu sonucu?

reliable

2345 için. şimdi su soruyla uğraşıyorum :

2. Write a program that lets the user guess the outcome of a die roll. The program randomly generates an integer from 1 to 6, which represents the value of the die. The program prompts the user to enter a guess and reports whether the guess is correct or incorrect.

ne demek istiyor acaba:)

kurkcudukkaninadonentilki

zar atılacak, random r = new random; y=r.nextint(6)+1; kullanıcı bir sayı girecek 1-6 arası, x=input.next(); x ile y karşılastırılacak, if(). kullanıcının sayıyı bilip bilmediği yazdırılacak, syso.

ben boyle anladım.

reliable

hımmm. kullanıcı sayı tahmin edecek tutarsa program yanıt verecek tutmazsa vermeyecek. oke tşk uğraşayım bununla.

kurkcudukkaninadonentilki
1

mobil görünümden çık