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, kursun bir parçasıdır
Java'da Teste Giriş
Egzersiz talimatları
lastDigit()yöntemi tarafından son basamağı doğru belirlenmeyen çok basamaklı bir tamsayı yaz.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
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;
}
}