Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 27.09.2015
Сообщений: 25

Дано равенство, в котором все цифры заменены на буквы: uxt + tuv = yvy

27.09.2015, 21:25. Показов 1950. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребят, помогите пожалуйста начинающему программисту, направьте в правильном направлении:
"Дано равенство, в котором все цифры заменены на буквы: uxt + tuv = yvy"

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public class uxt{
public static void main(String[] args){
{
int i;
byte[] u = {0,1,2,3,4,5,6,7,8,9};
byte[] x = {0,1,2,3,4,5,6,7,8,9};
byte[] t = {0,1,2,3,4,5,6,7,8,9};
byte[] y = {0,1,2,3,4,5,6,7,8,9};
byte[] v = {0,1,2,3,4,5,6,7,8,9};
for(i=0; i<=9; i++) {
int z = u[i];
int k = x[i];
int l = t[i];
int m = y[i];
int n = v[i];
}
}
}
}
Что дальше делать, я не знаю. Пробовал вручную на листочке написать, так там даже равенство не соблюдается, то есть ещё нужно это условие учесть.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.09.2015, 21:25
Ответы с готовыми решениями:

Дано равенство, в котором цифры заменены на буквы: rqtr + wrt = rwuu Найдите сколько у него решений
Задача 1 Дано равенство, в котором цифры заменены на буквы: rqtr + wrt = rwuu Найдите сколько у него решений, если различным буквам...

Есть равенство, в котором все цифры заменены на буквы: give + more = money
Помогите пожалуйста: &quot;Есть равенство, в котором все цифры заменены на буквы: give + more = money !Цифра не должна повторяться(У каждой...

На основе имеющегося файла создать другой файл, в котором все строчные буквы заменены на заглавные.
Помогите! Дан файл f,компоненты которого являются символами.Получить файл g,образованный из файла f заменой всех строчных букв на...

17
636 / 528 / 165
Регистрация: 01.04.2010
Сообщений: 1,843
28.09.2015, 15:26
Цитата Сообщение от Mishanya174 Посмотреть сообщение
цифры заменены на буквы: uxt + tuv = yvy
(100u+10x+t) + (100t + 10u + v) = 100y + 10v + y
110u + 10x + 101t + v = 101y + 10v
110u + 10x + 101t - 101y - 9v = 0

Далее тупой перебор 10000 вариантов.

Добавлено через 7 минут
Доп. условия:
1. v != 0
2. y > 2, если ведущие нули невозможны
2. y > 1, если ведущие нули возможны

Добавлено через 10 минут
Тупо "в лоб"
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public static void main11(final String... args) throws Exception {
    for (int u = 1; u < 10; u++) {
        for (int x = 0; x < 10; x++) {
            for (int t = 1; t < 10; t++) {
                for (int y = 3; y < 10; y++) {
                    for (int v = 1; v < 10; v++) {
                        if (f(u,x,t,y,v) == 0) {
                            System.out.println("" + u + x + t + " + " + t + u + v + " = " + y + v + y);
                        }
                    }
                }
            }
        }
    }
}
 
static int f(final int u, final int x, final int t, final int y, final int v) {
    return  110 * u + 10 * x + 101 * t - 101 * y - 9 * v;
}
Добавлено через 2 минуты
Но, если предположить, что цифры в числах не должны быть равны друг другу, т.е. t != u, x != v и т.п., то задача не имеет решения.
1
0 / 0 / 0
Регистрация: 27.09.2015
Сообщений: 25
28.09.2015, 15:57  [ТС]
aleksandy, я извиняюсь, забыл написать вопрос к задаче.
"Найдите, сколько решений у равенства, если различным буквам соответствуют различные цифры"
0
636 / 528 / 165
Регистрация: 01.04.2010
Сообщений: 1,843
28.09.2015, 16:13
Mishanya174, я же написал.

Цитата Сообщение от aleksandy Посмотреть сообщение
задача не имеет решения.
т.е. 0.
1
0 / 0 / 0
Регистрация: 27.09.2015
Сообщений: 25
29.09.2015, 00:51  [ТС]
aleksandy, поясните пожалуйста, что Вы этим действием делаете?
(100u+10x+t) + (100t + 10u + v) = 100y + 10v + y
110u + 10x + 101t + v = 101y + 10v
110u + 10x + 101t - 101y - 9v = 0

У нас ведь не произведение в местах, где нет знака между буквами (т.е. не u*x*t+t*y*v=y*v*y), а просто тупо цифры. То есть например 137+792=929, где u=1;x=3;t=7;y=9;v=2
У нас условие u>0; t>0; y>0
Следовательно перебираем каждые циклы, с условием выше. Результат каждого цикла преобразуем в строку. Затем склеиваем строки, согласно нашему условию (uxt=tyv+yvy), склеенные строки переводим обратно в числа и выводим на экран только те строки, которые удовлетворяют равенству. Код ниже (извиняюсь, если оформляю что то неправильно):
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
 for (int u = 0; u < 10; u++) {
                   for (int x = 0; x < 10; x++) {
                       for (int t = 0; t < 10; t++) {
                           for (int y = 0; y < 10; y++) {
                               for (int v = 0; v < 10; v++) {
                                    String u1 = Integer.toString(u);
                                    String x1 = Integer.toString(x);
                                    String t1 = Integer.toString(t);
                                    String y1 = Integer.toString(y);
                                    String v1 = Integer.toString(v);
                                    int z = Integer.parseInt(u1+x1+t1);
                                    int l = Integer.parseInt(t1+y1+v1);
                                    int k = Integer.parseInt(y1+v1+y1);
                                   if (z+l==k) {
                                      System.out.println(" "+z+" + "+l+" = "+k);
 
                                                }
 
             }
       }
                       }
                   }
               }
       }
Итого: 46 решений с нулём
28 решений без нуля
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
29.09.2015, 00:58
Цитата Сообщение от Mishanya174 Посмотреть сообщение
У нас ведь не произведение в местах, где нет знака между буквами (т.е. не u*x*t+t*y*v=y*v*y), а просто тупо цифры.
это надо указывать заранее. В математике это именно произведение.
1
636 / 528 / 165
Регистрация: 01.04.2010
Сообщений: 1,843
29.09.2015, 06:11
Цитата Сообщение от Mishanya174 Посмотреть сообщение
нет знака между буквами (т.е. не u*x*t+t*y*v=y*v*y), а просто тупо цифры
В школе раскладывать числа не учили?
Code
1
2
3
137 = 100 * 1 + 3 * 10 + 7
792 = 100 * 7 + 9 * 10 + 2
929 = 100 * 9 + 2 * 10 + 9
Цитата Сообщение от Mishanya174 Посмотреть сообщение
Итого: 46 решений с нулём
28 решений без нуля
И ни одного, удовлетворяющего
Цитата Сообщение от Mishanya174 Посмотреть сообщение
различным буквам соответствуют различные цифры
1
0 / 0 / 0
Регистрация: 27.09.2015
Сообщений: 25
29.09.2015, 10:54  [ТС]
aleksandy, спасибо, что показали, как раскладываются числа.
Цитата Сообщение от aleksandy
В школе раскладывать числа не учили?
так я в школе не учился.

Добавлено через 8 минут
aleksandy, смотрите результат компиляции, 28 решений:
Цитата Сообщение от aleksandy
И ни одного, удовлетворяющего
137 + 792 = 929
146 + 682 = 828
155 + 572 = 727
164 + 462 = 626
173 + 352 = 525
182 + 242 = 424
191 + 132 = 323
246 + 693 = 939
255 + 583 = 838
264 + 473 = 737
273 + 363 = 636
282 + 253 = 535
291 + 143 = 434
355 + 594 = 949
364 + 484 = 848
373 + 374 = 747
382 + 264 = 646
391 + 154 = 545
464 + 495 = 959
473 + 385 = 858
482 + 275 = 757
491 + 165 = 656
573 + 396 = 969
582 + 286 = 868
591 + 176 = 767
682 + 297 = 979
691 + 187 = 878
791 + 198 = 989

Добавлено через 39 минут
10 решений увидел с повторяющимеся цифрами, итого 18:
137 + 792 = 929
146 + 682 = 828
173 + 352 = 525
191 + 132 = 323
246 + 693 = 939
264 + 473 = 737
273 + 363 = 636
282 + 253 = 535
291 + 143 = 434
382 + 264 = 646
391 + 154 = 545
473 + 385 = 858
482 + 275 = 757
491 + 165 = 656
573 + 396 = 969
591 + 176 = 767
682 + 297 = 979
691 + 187 = 878
0
636 / 528 / 165
Регистрация: 01.04.2010
Сообщений: 1,843
29.09.2015, 14:40
В большинстве из приведённых тобою вариантов u = y. В остальных тоже какое-нибудь условие не выполняется, т.ч. решения таки нет.
1
0 / 0 / 0
Регистрация: 27.09.2015
Сообщений: 25
29.09.2015, 15:28  [ТС]
aleksandy,
Цитата Сообщение от aleksandy
В большинстве из приведённых тобою вариантов u = y
из 10 последних покажи хоть один, где выполняется это равенство.
Цитата Сообщение от aleksandy
В остальных тоже какое-нибудь условие не выполняется
Какое-нибудь, это какое?
Цитата Сообщение от aleksandy
т.ч. решения таки нет.
Нет, есть.
0
 Аватар для ArtemFM
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
29.09.2015, 15:42
Можно я вольюсь в Вашу беседу....даже попытаюсь помочь, если задача ещё открыта... Я просто плохо понимаю по задачам и поэтому требуется разъяснения....

uxt + tuv = yvy

u = 1-9; x = 1-9; u = 1-9 и т.д.

Uxt + tUv = yvy - U совпадают?
uxT + Tuv = yvy - T совпадают?
и т.д.

И что программа выводит? все возможные равенства?

Добавлено через 6 минут
и что в итоге не получается?
0
0 / 0 / 0
Регистрация: 27.09.2015
Сообщений: 25
29.09.2015, 16:03  [ТС]
aleksandy, ArtemFM, открыта, не можно, а нужно
U совпадать могут. T совпадать могут и Y совпадать могут.
u>0; t>0;y>0 т.к. с "0" число начинаться не может.
программа выдаёт числа, я выше написал какие, сначала 28, где разным переменным присваиваются одни и те же числа (противоречит условию), "На глазок" отсеял 10, осталось 18. Вот код программули:
0
 Аватар для ArtemFM
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
29.09.2015, 16:29
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
public class RunTest {
    public static void main(String[] args) {
 
        String onePart, twoPart, threePart;
 
        int count = 0;
        for (int u = 0; u < 10; u++) {
            for (int t = 0; t < 10; t++) {
                for (int y = 0; y < 10; y++) {
                    for (int x = 0; x < 10; x++) {
                        for (int v = 0; v < 10; v++) {
                            if ((110*u + 101*t - 101*y + 10*x - 9*v) == 0) {
                                count++;
                                onePart = String.valueOf(u) + String.valueOf(x) + String.valueOf(t);
                                twoPart = String.valueOf(t) + String.valueOf(u) + String.valueOf(v);;
                                threePart = String.valueOf(y) + String.valueOf(v) + String.valueOf(y);;
                                System.out.print(onePart + " + " + twoPart + " = " + threePart +"\n");
                            }
                        }
                    }
                }
            }
        }
        System.out.print("\n Равенство имеет решение: " + count + " раз(-а);" );
 
    }
}
Добавлено через 9 минут
Этот код я протестировал и проверил... Работает... Как надо, усовершенствуй и отладь сам )))
0
636 / 528 / 165
Регистрация: 01.04.2010
Сообщений: 1,843
29.09.2015, 16:47
Сколько можно? ЗАДАЧА НЕ ИМЕЕТ РЕШЕНИЯ.

Модераторы, закрывайте тему.
0
 Аватар для ArtemFM
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
29.09.2015, 16:55
000 + 000 = 000
001 + 100 = 101
002 + 200 = 202
003 + 300 = 303
004 + 400 = 404
005 + 500 = 505
006 + 600 = 606
007 + 700 = 707
008 + 800 = 808
009 + 900 = 909
100 + 011 = 111
101 + 111 = 212
102 + 211 = 313
103 + 311 = 414
104 + 411 = 515
105 + 511 = 616
106 + 611 = 717
107 + 711 = 818
108 + 811 = 919
200 + 022 = 222
201 + 122 = 323
202 + 222 = 424
203 + 322 = 525
204 + 422 = 626
205 + 522 = 727
206 + 622 = 828
207 + 722 = 929
300 + 033 = 333
301 + 133 = 434
302 + 233 = 535
303 + 333 = 636
304 + 433 = 737
305 + 533 = 838
306 + 633 = 939
400 + 044 = 444
401 + 144 = 545
402 + 244 = 646
403 + 344 = 747
404 + 444 = 848
405 + 544 = 949
500 + 055 = 555
501 + 155 = 656
502 + 255 = 757
503 + 355 = 858
504 + 455 = 959
600 + 066 = 666
601 + 166 = 767
602 + 266 = 868
603 + 366 = 969
700 + 077 = 777
701 + 177 = 878
702 + 277 = 979
800 + 088 = 888
801 + 188 = 989
900 + 099 = 999

Равенство имеет решение: 55 раз(-а);
1
636 / 528 / 165
Регистрация: 01.04.2010
Сообщений: 1,843
29.09.2015, 16:58
Цитата Сообщение от Mishanya174 Посмотреть сообщение
покажи хоть один, где выполняется это равенство.
Да, во всех.

Кликните здесь для просмотра всего текста

Цитата Сообщение от Mishanya174 Посмотреть сообщение
Какое-нибудь, это какое?
Code
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
  uxt + tuv = yvy
- 137 + 792 = 929 (u1 != u2)(u2 = y)
- 146 + 682 = 828 (u1 != u2)(u2 = y)
- 155 + 572 = 727 (u1 != u2)(u2 = y)
- 164 + 462 = 626 (u1 != u2)(u2 = y)
- 173 + 352 = 525 (u1 != u2)(u2 = y)
- 182 + 242 = 424 (u1 != u2)(u2 = y)
- 191 + 132 = 323 (u1 != u2)(u2 = y)
- 246 + 693 = 939 (u1 != u2)(u2 = y)
- 255 + 583 = 838 (u1 != u2)(u2 = y) 
- 264 + 473 = 737 (u1 != u2)(u2 = y)
- 273 + 363 = 636 (u1 != u2)(u2 = y)
- 282 + 253 = 535 (u1 != u2)(u2 = y)
- 291 + 143 = 434 (u1 != u2)(u2 = y)
- 355 + 594 = 949 (u1 != u2)(u2 = y)
- 364 + 484 = 848 (u1 != u2)(u2 = y)
- 373 + 374 = 747 (u1 != u2)(u2 = y)
- 382 + 264 = 646 (u1 != u2)(u2 = y)
- 391 + 154 = 545 (u1 != u2)(u2 = y)
- 464 + 495 = 959 (u1 != u2)(u2 = y)
- 473 + 385 = 858 (u1 != u2)(u2 = y)
- 482 + 275 = 757 (u1 != u2)(u2 = y)
- 491 + 165 = 656 (u1 != u2)(u2 = y)
- 573 + 396 = 969 (u1 != u2)(u2 = y)
- 582 + 286 = 868 (u1 != u2)(u2 = y)
- 591 + 176 = 767 (u1 != u2)(u2 = y)
- 682 + 297 = 979 (u1 != u2)(u2 = y)
- 691 + 187 = 878 (u1 != u2)(u2 = y)
- 791 + 198 = 989 (u1 != u2)(u2 = y)
где u1 - это u в первом слагаемом, u2 - во втором.


Добавлено через 1 минуту
ArtemFM, ты условия задачи читал? Можешь не отвечать, это риторический вопрос. Я вижу, что нет.
1
 Аватар для ArtemFM
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
29.09.2015, 17:05
137 + 792 = 929 - где тут равенство?

uxt + tuv = yvy

v = 2 = true
x = 3 = true
v = 2 = true
y = 9 = true

а вот
u = 1 и 9 одновременно = false
1
0 / 0 / 0
Регистрация: 27.09.2015
Сообщений: 25
29.09.2015, 17:10  [ТС]
ArtemFM, aleksandy, спасибо, свои слова забираю назад.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.09.2015, 17:10
Помогаю со студенческими работами здесь

Сформируйте число, в котором все подряд идущие одинаковые цифры исходного числа заменены одной соответствующей цифрой
Дано восемнадцатизначное число. Сформируйте новое число, в котором все подряд идущие одинаковые цифры исходного числа заменены одной...

Дано натуральное число, в котором все цифры различны. Определить порядковый номер его максимальной цифры
Дано натуральное число, в котором все цифры различны. Определить порядковый номер его максимальной цифры, считая номера от начала числа с...

Дано вещественное число в котором все цифры различны
дано вещественное число в котором все цифры различны.определить порядковый номер его первой максимальной цифры 1)от конца числа 2)от...

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

Сформируйте новое число, в котором цифры кратные трем заменены уменьшенными в три раза цифрами
Реализуйте с помощью оператора выбора использование алгоритмической конструкции «Повторение» (1 — с предусловием, 2 — с постусловием, 3 — с...


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

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru