Ordinals Java - класс Java Я
Застрял в получении запроса на ввод числа от 1 до 10 - и результаты должны добавить st, rd, th и nd к числу. Напишите программу, которая предлагает пользователю ввести любое целое число от 1 до 10, а затем отображает целое число в порядковой форме с присоединенным суффиксом.
public class Ordinals {
public static String Ordinals(int i) {
System.out.println("Enter an integer between 0 to 10: ");
Scanner input = new Scanner(System.in);
int hundred = value % 100;
int tens = value % 10;
if (hundred - tens == 10) {
return "th";
}
switch (tens) {
case 1:
return "st";
case 2:
return "nd";
case 3:
return "rd";
default:
return "th";
}
public static void main(String[] args) {
Ordinals number = new Ordinals();
for (int i = 1; i <= 10; i++) {
String st = number.Ordinals(i);
System.out.println(i + " = " + i + st);
}
}
}
2 ответа
Решение
На мой взгляд, было бы лучше двигаться Scanner
на главную:
public static void main(String[] args) {
Ordinals number = new Ordinals();
Scanner input = new Scanner(System.in);
while(true){
System.out.println("Enter an integer between 0 to 10: ");
int i = input.nextInt();
System.out.println(i+number.Ordinals(i));
}
}
а затем добавить в Ordinals:
int value = i;
Метод будет независимым от типа ввода.
Добавлять value = input.nextInt()
под линией создания сканера.