С Новым годом! Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
3 / 3 / 1
Регистрация: 26.12.2019
Сообщений: 170
1

Ближайший палиндром

29.03.2022, 23:45. Показов 782. Ответов 4
Метки java (Все метки)

Author24 — интернет-сервис помощи студентам
Я только начал изучать java после js и не понимаю как тут сделать поиск ближайшего палиндрома к введенному числу, скажем у нас вводится число 100 и ближайший к нему 101.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.03.2022, 23:45
Ответы с готовыми решениями:

Строка палиндром
Добрый день! Помогите, пожалуйста, решить задачу: Дана строка символов в нижнем регистре,...

Java Палиндром
Добрый вечер! Не могу никак додуматься с чего начать и чем закончить ....помогите пожалуйста .....

Число - палиндром
Назовем натуральное число палиндромом, если его запись читается одинаково как с начала, так и с...

Проверка на палиндром. Ошибка
Задание: написать метод, который определяет является слово пaлиндромом или нет. Идея: присвоить...

4
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
30.03.2022, 09:25 2
Так же, как в js, скорее всего
0
3 / 3 / 1
Регистрация: 26.12.2019
Сообщений: 170
30.03.2022, 17:11  [ТС] 3
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import java.util.Scanner;
 
public class Program
{
    public static void main(String[] args)
    {
        Scanner in = new Scanner(System.in);
        int a, b, c, d;
        System.out.print("Print number: ");
        a = in.nextInt();
        b = a/100;
        c =(a/10)%10;
        d = a%10;
 
        //if palindrome
        if (b==d) { System.out.println("Palindrome."); return; }
 
        if (a == 100) { System.out.println("Answer: " + (a-1)); return; }
 
        if (b * 100 + c * 10 + b > a) { System.out.println("Answer: " + (b * 100 + c * 10 + b)); return; }
 
        if(c == 0) System.out.println("Answer: " + ((b - 1) * 100 + 90 + (b - 1)));
        else System.out.println("Answer: " + (b * 100 + (c - 1) * 10 + b));
    }
}
0
Модератор
Эксперт функциональных языков программированияЭксперт Python
37346 / 20778 / 4276
Регистрация: 12.02.2012
Сообщений: 34,187
Записей в блоге: 14
30.03.2022, 21:46 4
Лучший ответ Сообщение было отмечено ArtoriasDark как решение

Решение

ArtoriasDark, так это не универсальное решение...

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import java.util.Scanner;
 
public class Main
{
    public static boolean isPal(int n)
    {
        int m=n,r=0;
        
        while (n>0)
        {
            r=r*10+n%10;
            n=n/10;
        }
        return m==r;
    }
    public static void main(String[] args) {
        Scanner inp = new Scanner(System.in);
        int n,k1,k2;
        System.out.print("n=");
        n=inp.nextInt();
        
        if (isPal(n))
           System.out.println(n);
        else
        {
            k1=1;
            while(true)
            {
                if ( isPal(n+k1) ) break;
                k1++;
            }
            
            k2=1;
            while(true)
            {
                if ( isPal(n-k2) ) break;
                k2++;
            }
 
            if (k1<=k2)
               System.out.println(n+k1);
            else
               System.out.println(n-k2);
            
        }
        
    }
}
0
3 / 3 / 1
Регистрация: 26.12.2019
Сообщений: 170
30.03.2022, 21:55  [ТС] 5
А, точно у нас ведь еще сзади могут быть, не учел, спасибо
0
30.03.2022, 21:55
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.03.2022, 21:55
Помогаю со студенческими работами здесь

Java проверка строки на палиндром
Здравствуйте уважаемые форумчане. Прохожу обучающий курс Ява, и одна из задач не дает спать уже...

Палиндром
Добрый день. Я только начинаю изучение Java. Передо мной стоит задача - определить, является ли...

Палиндром
Добрый вечер! Проверяю, является ли число палиндромом. Взял строку, реверснул её и сравниваю через...

Clojure Палиндром
Здравствуйте! Пожалуйста, помогите решить задачу на Common Lisp! Дано натуральное число n....

Палиндром - не могу доделать (
Нужно проверить, является ли слово палиндромом. Задал слово, решил разбить его на чары и вывести в...

Задача про палиндром!
Добрый День! У меня проблема с задачей про палиндром, нужно ввести любую цифру(n&gt;0) и найти все...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru