Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 14.10.2022
Сообщений: 6

Перевод кода с Питона на Джаву

12.12.2022, 00:18. Показов 1247. Ответов 4

Студворк — интернет-сервис помощи студентам
Python
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
A = [[1, 2, 3, 9, 9],[2, 2, 2, 9, 2],[1, 1, 2, 2, 4]]
r = len(A)
c = len(A[0])
B = [[0]*c for _ in range(r)]
M = [[0]*c for _ in range(r)]
 
def countff(A, M, r, c, y, x, value):
if y < 0 or x < 0 or x == c or y == r or M[y][x] > 0 or A[y][x] != value:
return 0
M[y][x] = 1
result = 1
result += countff(A, M, r, c, y-1, x, value)
result += countff(A, M, r, c, y, x-1, value)
result += countff(A, M, r, c, y+1, x, value)
result += countff(A, M, r, c, y, x+1, value)
return result
 
def fill(A, M, B, r, c, y, x, value, fillvalue):
if y < 0 or x < 0 or x == c or y == r or M[y][x] == 2 or A[y][x] != value:
return
M[y][x] = 2
B[y][x] = fillvalue
fill(A, M, B, r, c, y-1, x, value,fillvalue)
fill(A, M, B, r, c, y, x-1, value,fillvalue)
fill(A, M, B, r, c, y+1, x, value,fillvalue)
fill(A, M, B, r, c, y, x+1, value,fillvalue)
 
for y in range(r):
for x in range(c):
if M[y][x] == 0:
cnt = countff(A, M, r, c, y, x, A[y][x])
fill(A, M, B, r, c, y, x, A[y][x], cnt-1)
 
print(A)
print(B)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.12.2022, 00:18
Ответы с готовыми решениями:

Анаграмма из питона в Джаву
def sort(list): &quot;&quot;&quot; sorts the list using insertion sort :param list: the list of characters to be sorted in alphabetical...

Перевод кода С в Джаву
Добрый день. Имеется следующий код на С #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;stdlib.h&gt; const int size...

Перевод кода из питона в с++
import random N = random.randrange(2,10) print(&quot;N = &quot;,N) #x = N x = random.randrange(1,10) x_prev = x flag = True for i...

4
 Аватар для vvm28
771 / 539 / 67
Регистрация: 22.12.2013
Сообщений: 2,498
Записей в блоге: 26
12.12.2022, 19:33
nikmens, не всегда программисты java знают питон.
Вероятность ответа будет выше, если вы напишите условия вашей задачи.
Что должен делать ваш код? Напишите словами.
0
419 / 311 / 107
Регистрация: 30.08.2022
Сообщений: 1,195
15.12.2022, 13:36
Цитата Сообщение от vvm28 Посмотреть сообщение
не всегда программисты java знают питон
Тут и програмеры по питону не знают этот код, так как он не отформатирован
0
0 / 0 / 0
Регистрация: 14.10.2022
Сообщений: 6
15.12.2022, 16:30  [ТС]
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
public class Main{
public static void main(String[] args){
int[][] myArray = {{1, 2, 3, 9, 9},
                            {2, 2, 2, 9, 2}
                            {1, 1, 2, 2, 4}};
 int r = myArray.length;
 int c = myArray[0].length;
int[][] newArray = new int[r][c];
int[][] array = new int[r][c];
 for (int y = 0; y < myArray.length; y++) {
            for (int x = 0; x < myArray[0].length; x++) {
                if (array[y][x] == 0) {
                    int count = getCountFriendly(myArray, array, r, c, y, x, myArray[y][x]);
                    arrayFilling(myArray, array, newArray, r, c, y, x, myArray[y][x], count - 1);
                }
            }
        }
}
 
public static int getCountFriendly(int[][] myArray, int[][] array, int r, int c, int y, int x, int value) {
        if (y < 0 || x < 0 || x == c || y == r || array[y][x] > 0 || myArray[y][x] != value) return 0;
        array[y][x] = 1;
        int result = 1;
        result += getCountFriendly(myArray, array, r, c, y - 1, x, value);
        result += getCountFriendly(myArray, array, r, c, y, x - 1, value);
        result += getCountFriendly(myArray, array, r, c, y + 1, x, value);  // проход flood fill для подсчета
        result += getCountFriendly(myArray, array, r, c, y, x + 1, value);
        return result;
    }
 
    public static int arrayFilling(int[][] myArray, int[][] array, int[][] newArray, int r, int c, int y, int x,
                                   int value, int fillArray) {
        if (y < 0 || x < 0 || x == c || y == r || array[y][x] == 2 || myArray[y][x] != value) return 0;
        array[y][x] = 2;
        newArray[y][x] = fillArray;
        arrayFilling(myArray, array, newArray, r, c, y - 1, x, value, fillArray);
        arrayFilling(myArray, array, newArray, r, c, y, x - 1, value, fillArray);
        arrayFilling(myArray, array, newArray, r, c, y + 1, x, value, fillArray); // flood fill для заполнения нового массива
        arrayFilling(myArray, array, newArray, r, c, y, x + 1, value, fillArray);
        return arrayFilling(myArray, array, newArray, r, c, y, x, value, fillArray);
 
      }    
  }
}
0
 Аватар для vvm28
771 / 539 / 67
Регистрация: 22.12.2013
Сообщений: 2,498
Записей в блоге: 26
18.12.2022, 23:33
nikmens,
Цитата Сообщение от nikmens Посмотреть сообщение
int r = myArray.length;
 int c = myArray[0].length;
Зачем вам это? У вас получается все равно длинная массива одинаковая.

Половину вашего кода можно смело выкинуть. А вообще, лучше выкинуть весь код и написать его заново.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.12.2022, 23:33
Помогаю со студенческими работами здесь

Перевод кода с Питона на Паскаль
from itertools import product i = open('input.txt', 'r') o = open('output.txt', 'w+') l = int(i.read()) ALPHA = &quot;245&quot; d = for...

Перевод кода с Питона на Паскаль
Может кто помочь перевести код с питона на паскаль, или хотя бы объяснить примерно что он делает в указанных местах? # -*- coding: UTF-8...

Перевод в Джаву
Можете перевести из Паскал в Джава. Program aaa; s:real; k:integer; begin s:=1; for k:=1 to 10 do begin s:=s*(1/k*k*k*k*k);...

Перевод в Джаву
Можно перевод из Паскала в Джаву Условие задачи: Из положительных элементов матрицы N(10;10) сформировать матрицу M(10, KMAX), располагая...

Перевод в Джаву
Можете переводить using System; using System.Collections.Generic; using System.Linq; using System.Text; using...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru