Köşe durum: Bir sayının basamakları
Yaygın bir programlama alıştırması, bir tamsayının basamaklarını alıp bunları bir şekilde yeniden düzenlemeyi içerir. Bir tamsayının son basamağını elde etmenin en hızlı yolu 10 ile mod almak (% 10)tır. Bu, tamsayıyı 10'a böldüğünde kalan değeri döndürür.
İşte bir tamsayının son basamağını döndüren bir yöntem. Bu yöntem, olası girdilerin tam olarak yarısı olan negatif sayılar için başarısız olur. Bunun nedeni, 10 ile mod almanın tamsayının işaretini korumasıdır.
lastDigit() yönteminin hatalı bir değer döndürmesine neden olacak bir tamsayı değeri gir.
Bu egzersiz
Java'da Teste Giriş
kursunun bir parçasıdırEgzersiz talimatları
lastDigit()yöntemi tarafından son basamağı doğru belirlenmeyen çok basamaklı bir tamsayı yaz.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
public class LastDigit {
public static void main(String[] args) {
// Write down an integer that causes an incorrect return value of lastDigit()
int n = ____;
System.out.println("The last digit of " + n + " equals " + lastDigit(n) + ".");
}
public static int lastDigit(int a) {
return a % 10;
}
}