Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.74/19: Рейтинг темы: голосов - 19, средняя оценка - 4.74
-16 / 1 / 0
Регистрация: 23.06.2019
Сообщений: 24

Исправить баг

03.11.2019, 15:54. Показов 4725. Ответов 32
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Необходимо исправить баг в коде ниже, я пыталась это сделать разными способами, ничего не получается( Если я правильно поняла суть бага в том, что там сохраняется цифра, каждый раз новая. А если нам нужна старое значение, то его уже нет, желательно с пояснением, заранее спасибо)
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
def hash(key):
 
    return len(key)
 
storage = [0] * 13
 
def set_value(key):
 
    index = hash(key)
 
    return storage[index]
 
def get_value(key,value):
 
    index = hash(key)
 
    storage[index] = value
 
get_value("XYZ", 7)
 
get_value("ABC", 42)
 
print(set_value("XYZ"))
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.11.2019, 15:54
Ответы с готовыми решениями:

Исправить баг
import random #***************************** digit = 0 dig1 = 0 dig2 = 0 dig3 = 0 #**************************** x = 0 x1 =...

Как исправить ошибку: формат теста исправить нельзя, только текст программы
class AmericanDate: def __init__(self, y, m, d): self.get_year = str(y) self.get_month = str(m//10)+str(m%10) ...

Исправить баг
сайт mixdoors.ru, плагин mavik Thumbnails (увеличение изображения ) работает в материалах, но не работает на страницах virtuemart, на...

32
-16 / 1 / 0
Регистрация: 23.06.2019
Сообщений: 24
03.11.2019, 18:00  [ТС]
Студворк — интернет-сервис помощи студентам
Рыжий Лис, спааасибо)
0
03.11.2019, 18:01

Не по теме:

хватит звать меня по нику

0
-16 / 1 / 0
Регистрация: 23.06.2019
Сообщений: 24
03.11.2019, 19:33  [ТС]
Рыжий Лис, вы наверное будете гореть с моей тупости( но вот что сказал преподаватель)
"Если я заведу 2 ключа: abc и cba со значениями 1 и 2 соответственно, то cba перезапишет abc. Т.е. коллизии не обрабатываются."
задание было "Избавиться от коллизии"

Добавлено через 52 секунды
Рыжий Лис, А как правильно к вам обращаться?(
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
03.11.2019, 20:01
Вот! Шла вторая страница треда, и мы выяснили задание.

К сожалению, с ходу подсказать решение не могу. Предлагаю почитать это: https://neerc.ifmo.ru/wiki/index.php?oldid=68142

Не по теме:

Цитата Сообщение от harlyk Посмотреть сообщение
Рыжий Лис, А как правильно к вам обращаться?(
Просто не нажимай на ник, чтобы не вставлялось [nick]Рыжий Лис[/nick]. Я и без этого вижу новые сообщения.

0
-16 / 1 / 0
Регистрация: 23.06.2019
Сообщений: 24
03.11.2019, 20:09  [ТС]
вот так вот бывает)) а если не сходу?( спасибо за помощь

Добавлено через 1 минуту
ОООчень надеюсь на вашу помощь, от этого зависит мой зачёт, а я туплю по черному) но буду пытаться и надеяться на вас(

Добавлено через 4 минуты
помогите(((

Добавлено через 14 секунд
помогите(((
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
03.11.2019, 20:13
Лучший ответ Сообщение было отмечено harlyk как решение

Решение

Открытая адресация

В массиве H хранятся сами пары ключ-значение. Алгоритм вставки элемента проверяет ячейки массива H в некотором порядке до тех пор, пока не будет найдена первая свободная ячейка, в которую и будет записан новый элемент. Этот порядок вычисляется на лету, что позволяет сэкономить на памяти для указателей, требующихся в хеш-таблицах с цепочками.
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
#уроки во школе серы и скучны
#веселья ни грамма в глазах школоты
 
 
size = 13
storage = [None] * size
 
def hash(key):
    result = 0
    for i in key:
        result += ord(i)
    return result % size
 
def set_value(key, value):
    index = hash(key)
    while storage[index]:
        index += 1
    storage[index] = key, value
 
def get_value(key):
    index = hash(key)
    key2, value = storage[index]
    while key2 != key:
        key2, value = storage[index]
    return value
 
 
print(storage)
set_value('abc', 7)
print(storage) 
set_value('cba', 42)
print(storage)
assert get_value('abc') == 7
print(storage)
Отсутствует проверка на выходы за границы списка.

Состояние хранилища:
Code
1
2
3
4
[None, None, None, None, None, None, None, None, None, None, None, None, None]
[None, None, None, None, None, None, None, None, ('abc', 7), None, None, None, None]
[None, None, None, None, None, None, None, None, ('abc', 7), ('cba', 42), None, None, None]
[None, None, None, None, None, None, None, None, ('abc', 7), ('cba', 42), None, None, None]
То есть храниться пара (ключ, значение). Если ячейка уже занята, то берётся следующая.
0
-16 / 1 / 0
Регистрация: 23.06.2019
Сообщений: 24
03.11.2019, 20:26  [ТС]
Рыжий Лис, огромное спасибо

Добавлено через 11 минут
скажи пожалуйста, что делает эта строка ?
Python
1
assert get_value('abc') == 7
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
03.11.2019, 20:28
это проверка, можете её удалить

Добавлено через 23 секунды
Если условие ложное, то бросится исключение.
0
-16 / 1 / 0
Регистрация: 23.06.2019
Сообщений: 24
03.11.2019, 20:29  [ТС]
Рыжий Лис, Если ввести cba 42, то зацикливается( ваш вариант когда
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
03.11.2019, 20:33
Python
1
2
3
4
5
6
7
def get_value(key):
    index = hash(key)
    key2, value = storage[index]
    while key2 != key:
        index += 1 #забыл
        key2, value = storage[index]
    return value
0
-16 / 1 / 0
Регистрация: 23.06.2019
Сообщений: 24
03.11.2019, 20:51  [ТС]
спасибоооо) вы бог)

Добавлено через 7 минут
мне все ещё требуется ваша помощь, ответ преподавателя(
"Когда storage заполнится это всё упадёт."
видимо не судьба это сдать(

Добавлено через 5 минут
Рыжий Лис, и меня минусанули на -41(( я просто очень тупая и переживаю( простите
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
03.11.2019, 20:52
Оно упадёт ещё раньше, потому что его заполнение идёт не сначала.

Добавлено через 48 секунд
Отсутствует проверка на выходы за границы списка.
Так добавьте.
0
-16 / 1 / 0
Регистрация: 23.06.2019
Сообщений: 24
03.11.2019, 21:48  [ТС]
и что с этим делать? Точнее как это сделать?

Добавлено через 1 минуту
Рыжий Лис, честно говоря, я запуталась и не особо понимаю, что происходит(

Добавлено через 28 минут
Помогите, сделать чтобы не падало) я думаю, я вас очень бешу свое тупостью и тем что, ною( и спасибо за всё что вы сделали

Добавлено через 6 минут
Рыжий Лис, мне надо просто расширить список, чтобы не падало?

Добавлено через 10 минут
Рыжий Лис, это конец?(

Добавлено через 5 минут
Рыжий Лис, Моего знания языка недостаточно чтобы это сделать, прошу вашей помощи)

Добавлено через 2 минуты
Рыжий Лис, хотя бы дайте намек)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.11.2019, 21:48

Как исправить баг?
Проблема следующая, при вводе play game или analyaze document меня должно перебросить в игру("угадай число") или проанализировать...

Баг ,как исправить?
Добрый день хотел бы обратиться к вам за помощью есть код : using System.Collections; using System.Collections.Generic; ...

Исправить баг (не фичу)
В моей игре не всегда работает начало новой игры при нажатии на "начать игру", просто пустой экран. Но не всегда, бывает работает бывает...

Как исправить баг
Ребята помогите исправить баг Win8x64

Исправить баг в программе
Здравствуйте уважаемые форумчане. На скорую руку набросал программу, в которой показываются картинки с животными и нужно выбрать первую...


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

Или воспользуйтесь поиском по форуму:
33
Ответ Создать тему
Новые блоги и статьи
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . . Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
Красочные поля с номером страницы svg+background-image
russiannick 04.11.2026
Красочные поля с номером страницы не менее важны чем в эпоху бумажных книг. Посему спешу представить почтеннейшей публике этот важный инструмент который эти поля и формирует. В процессе разработки. . .
Вступаем в новую фазу генерации favicons, векторную.
russiannick 02.11.2026
Теперь нет нужды скрывать что используется простой svg. Исходный код изображения помещаем в поле и жмем кнопку. Исходник преобразуется в вид корректный для помещения в favicon или в url(). Нажатие. . .
Генератор паролей (вариант №4)
Maks 01.11.2026
После публикации 3-го варианта генератора паролей, разослал его своим коллегам (с целью оценки), в итоге были получены следующие рекомендации: 1. Вернуть возможность использования знаков | 1 l I;. . .
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С. Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию? Фраза «Любая достаточно развитая технология неотличима от магии». . .
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль? Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология. «Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru