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

Не могу доделать логику в коде

17.03.2023, 15:11. Показов 655. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, помогите с кодом на python по данной логике от итерация=1 до итерация=n

Задача:
зададим число r1 , зададим число t , зададим число n
разделим r на 2 получим r2 .
от r1 отнимем t получим o .
от t отнимем r2 получим rez1 .
от o отнимем r2 получим rez2 .
повторим для значений r2 rez1 rez2 n раз
при окончании количества повторений сделать заново для всех полученных rez1 и rez2
зададим число r1 , зададим число t , зададим число n
разделим r на 2 получим r2 .
от r1 отнимем t получим o .
от t отнимем r2 получим rez1 .
от o отнимем r2 получим rez2 .
повторим для значений r2 rez1 rez2 n раз
при окончании количества повторений сделать заново для всех полученных rez1 и rez2

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
                                                                 256/2   = 128
                                                                 256-211 =  45
                                                                 211-128 =  83
                                                                 45-128  = -83
                                                               итерация=1
                             128/2  =  64                                                 128/2  =  64
                             128--83= 211                                                 128-83 =  45
                             -83-64 =  147                                                 83-64 =  19
                             211-64 = -147                                                 45-64 = -19
                                                              итерация=2
           64/2    =   32                 64/2   =   32                              64/2   =  32            64/2 =  32                
           64--147 =  211                 64-147 =  -83                              64--19 =  83            64-19=  45
          -147-32  = -179                 147-32 =  115                             -19-32  = -51            19-32= -13
           211-32  =  179                -83-32  = -115                              83-32  =  51            45-32=  13
сделали тестовый код, но работает не корректно + идёт только по 1 ветке.

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
r1 = int(input("Введите число r1: "))
t = int(input("Введите число t: "))
n = int(input("Введите число n: "))
def get_results(r, t, n):
    result = []
    for i in range(n):
        r2 = r // 2
        o = r - t
        rez1 = t - r2
        rez2 = o - r2
        result.append((r2, rez1, rez2))
        r = r2
        
    for i in range(len(result)):
        r2, rez1, rez2 = result[i]
        while True:
            o = r - rez1
            r2 = o - rez2
            if r2 < 0:
                break
            r = 2*r2 + rez1 + rez2
            result[i] = (r2, rez1, rez2)
            print(result[i])
    # выводим результаты для каждой итерации
    return result
get_results(r1,t,n)

Если можно сделать вывод как в примере, буду премного благодарен!
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.03.2023, 15:11
Ответы с готовыми решениями:

Не могу доделать свой код, очень нужно его доделать
Здравствуйте, можете пожалуйста мне помочь с кодом, у меня тут сделано, так что при нажатии на объект он начинает уменьшаться и внутри него...

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

Не могу подобрать логику
Вопрос скорее всего лёгкий, но после бессонной ночи что-то голова плохо соображает. Помогайте)) Есть база данных к примеру table: ...

5
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,330
17.03.2023, 15:19
Цитата Сообщение от Siserian Посмотреть сообщение
r1 = int(input("Введите число r1: "))
t = int(input("Введите число t: "))
n = int(input("Введите число n: "))
эр богом поцелован? зачем к нему 1-цу прицепили и получается
Цитата Сообщение от Siserian Посмотреть сообщение
get_results(r1,t,n)
и
Цитата Сообщение от Siserian Посмотреть сообщение
def get_results(r, t, n):
0
0 / 0 / 0
Регистрация: 15.03.2019
Сообщений: 126
17.03.2023, 15:30  [ТС]
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
эр богом поцелован? зачем к нему 1-цу прицепили и получается
данный код был создан через chatgpt.

Добавлено через 2 минуты
код рабочий, только цикл дальше не делает.
0
Модератор
Эксперт Python
 Аватар для Fudthhh
2696 / 1602 / 513
Регистрация: 21.02.2017
Сообщений: 4,210
Записей в блоге: 1
17.03.2023, 15:40
Siserian, ак если код рабочий, то получается твой компьютер ленится, попробуй его пнуть.

Добавлено через 14 секунд
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
r1 = 256
t = 211
n = 2
 
data = [[r1, t]]
for i in range(n + 1):
    print("--------------")
    print(f"Итерация: {i}")
    print("--------------")
    temp_data = []
    for r1, t in data:
        r2 = r1 / 2
        o = r1 - t
        rez1 = t - r2
        rez2 = o - r2
        print(f"{r1}/{2} = {r2}")
        print(f"{r1}-{t} = {o}")
        print(f"{t}-{r2} = {rez1}")
        print(f"{o}-{r2} = {rez2}")
        temp_data.append([r2, rez2])
        temp_data.append([r2, rez1])
    data = temp_data
1
1712 / 579 / 76
Регистрация: 10.04.2009
Сообщений: 9,330
17.03.2023, 15:40
Цитата Сообщение от Siserian Посмотреть сообщение
данный код был создан через chatgpt
3, 3,5, 4? вау
задание типа как Райкин рассказывал монолог с сумкой и кошельком....
0
Модератор
Эксперт Python
 Аватар для Fudthhh
2696 / 1602 / 513
Регистрация: 21.02.2017
Сообщений: 4,210
Записей в блоге: 1
17.03.2023, 15:47
Лучший ответ Сообщение было отмечено Siserian как решение

Решение

Практически с желаемым выводом:
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
r1 = 256
t = 211
n = 2
 
data = [[r1, t]]
for i in range(n + 1):
    temp_data = []
    print_data = []
    for r1, t in data:
        r2 = r1 / 2
        o = r1 - t
        rez1 = t - r2
        rez2 = o - r2
        print_data.append([
            f"{r1}/{2} = {r2}",
            f"{r1}-{t} = {o}",
            f"{t}-{r2} = {rez1}",
            f"{o}-{r2} = {rez2}"
        ])
        temp_data.append([r2, rez2])
        temp_data.append([r2, rez1])
 
    text = f"Итерация: {i}"
    print(text.center(2**n * 40))
    for d in zip(*print_data):
        text = "".join(map("{:^40}".format, d))
        print(text.center(2**n * 40))
    data = temp_data
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.03.2023, 15:47
Помогаю со студенческими работами здесь

Не могу понять логику
Ребята подскажите в чем ошибка. Вот часть кода: Public Class Connect Public x As Integer, y As Integer 'Координата точки...

Не могу понять логику Яндекса...
Виноват, недоглядел один момент. Администраторы, убейте пожалуйста тему.

Не могу до конца понять логику скрипта
В общем взял один американский шаблон и адаптирую под себя. Там есть кусок кода отвечающий за страницу которая показывает: Так вот...

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

Не могу окончательно понять логику программы
Напишите программу, которая выводит на консоль простые числа в промежутке от . Используйте для решения этой задачи оператор &quot;%&quot;...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru