VDS за 300р от нашего партнера SpaceWeb
[2]
20 Мар 2012, 23:52

Перевод кода на Python

Всем привет, имеется вот такой код написанный на C#

public static int[,] funk(int[,] S) { int width = S.GetLength(0); int height = S.GetLength(1);
int[,] result = new int[width, height];
result[0, 0] = S[0, 0];
for (int x = 1; x < width; x++) result[x, 0] = S[x, 0] + result[x - 1, 0];
for (int y = 1; y < height; y++) result[0, y] = S[0, y] + result[0, y - 1];
for (int y = 1; y < height; y++) for (int x = 1; x < width; x++) result[x, y] = S[x, y] + result[x - 1, y] + result[x, y - 1] - result[x - 1, y - 1];
return result; }

Ребят помогите пожалуйста перевести его на python, я пыталась, но что-то делаю не так...

def funk(): w = 100.0 h = 100.0 x = 1.0 y = 1.0 si = [0.0, 0.0] result = [w, h] result [0.0, 0.0] = si[0.0, 0.0]
for x in range(w): x +=1 result[x, 0] = si[x, 0] + result[x - 1, 0]
for y in range(h): y +=1 result[0, y] = si[0, y] + result[0, y - 1]
for x in range(w): x +=1 for y in range(h): y +=1 result[x, y] = si[x, y] + result[x - 1, y] + result[x, y - 1] - result[x - 1, y - 1] return result

За ранее спасибо....

Комментарии (1)
grom 21.03.2012 09:52

Знал бы тут ещё кто-нибудь C#.

Вообщем почитал про работу с массивами, и вот что получилось.

def funk(S):
height = len(S);
width  = len(S[0]);

result = [[0 for j in xrange(width)] for i in xrange(height)];

result[0][0] = S[0][0];

for i in xrange(1, height):
result[i][0] = S[i][0] + result[i-1][0];

for i in xrange(1, width):
result[0][i] = S[0][i] + result[0][i-1];

for i in xrange(1, height):
for j in xrange(1, width):
result[i][j] = S[i][j] + result[i-1][j] + result[i][j-1] + result[i-1][j-1];

return result;

Это для Python 2. Для 3-ей версии будет немного по другому.
+3

Добавить комментарий

Войдите, чтобы написать о чем-нибудь...
Вход Регистрация
Web.onRails
Найди ответ на любой вопрос по Веб-разработке!
задать вопрос...
Вы можете разместить Рекламный пост самостоятельно, либо отправив контент по адресу admin@webonrails.ru→ Оплата здесь ←Неоплаченные посты удаляются.
Метки:
Лучшее
[52]
16 Окт 2011, 15:38
Вывести все элементы POST
[просмотров 16655]
[74]
31 мая 2011, 11:48
Python проверка существования переменной
[просмотров 11274]
[100]
19 Дек 2014, 16:16
User-agent для Internet Explorer 11
[просмотров 11259]
[4]
10 Окт 2018, 15:33
Как запретить просмотр сайта по IP?
[просмотров 9565]
[125]
21 Июл 2011, 14:04
Python Imaging Library (PIL)
[просмотров 8322]
[315]
11 Авг 2011, 00:21
Спецификация HTML5 от W3C
[просмотров 7391]
[315]
16 Июл 2011, 20:03
Python работа с MySQL
[просмотров 5617]

Вести с Хабра