Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
3 / 3 / 0
Регистрация: 23.10.2018
Сообщений: 201
1

Найдите ошибку пожалуйста

11.12.2018, 08:30. Показов 2558. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Python
1
2
3
4
5
6
7
8
print('программа для нахождения общих цифр в записи')
a = input('введите первое число ')
b = input('введите второе число ')
с='0'*len(a+b)
for i in a:
    if a[i]==b[j] and c[j]==[0]:
        c[j]=a[i]
        print('Общая цифра: ', с)
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.12.2018, 08:30
Ответы с готовыми решениями:

Найдите ошибку, пожалуйста
import math # Вычисление функции f(u,t) по заданию def f(u,t): print(u,t) if...

Пожалуйста, найдите ошибку
while True: import random a= random.choice() b= random.choice() c=...

Пожалуйста, найдите ошибку!Сортировка данных
Задача: Чтобы предпочтения были видны сразу, нужно крупнейшие значения расположить наверху....

найдите ошибку пожалуйста си (Запросить у пользователя строку, найдите и удалите в ней повторяющиеся подряд двух буквенные слоги)
Запросить у пользователя строку, найдите и удалите в ней повторяющиеся подряд двух буквенные...

Пожалуйста, найдите ошибку)
вот такая задачка. Вывести на экран первые пять совершенных чисел (функция возвращает 1, если...

16
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
11.12.2018, 09:27 2
i у вас строка (символ) и вы используете ее как индекс. Вы же читали ошибку?
Python
1
2
3
4
Traceback (most recent call last):
  File "test.py", line 6, in <module>
    if a[i]==b[j] and c[j]==[0]:
TypeError: string indices must be integers
И откуда у вас переменная j появилась?
0
3 / 3 / 0
Регистрация: 23.10.2018
Сообщений: 201
11.12.2018, 11:15  [ТС] 3
Как исправить?
0
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
11.12.2018, 11:29 4
А я откуда знаю ход ваших мыслей?
Я бы запихнул каждое число (строку) в множество, чтобы исключить повторения.
Прошелся бы в цикле по одному множеству, проверяя каждый элемент на принадлежность второму множеству. Или взять результат пересечения множеств.
0
1728 / 968 / 199
Регистрация: 22.02.2018
Сообщений: 2,694
Записей в блоге: 6
11.12.2018, 14:28 5
Наби Кобан, Когда Вы приводите свой код, не мешало бы дать и алгоритм (условие задачи, которую Вы решаете), что бы не нужно было разбираться, какой алгоритм реализует Ваш код. Так было бы проще помочь Вам с поиском ошибки. Ошибки бывают и в алгоритме, не только такие как здесь, и тогда интерпретатор не выдает никаких сообщений, а просто получаете не правильный ответ. Это просто совет на будущее.
0
3 / 3 / 0
Регистрация: 23.10.2018
Сообщений: 201
11.12.2018, 14:35  [ТС] 6
Окей, надо сделать программу для поиска общих цифр в 2 числах. Множества использовать нельзя, краткий пример: 223 и 232 -общие цифры не 2 и 3, а 2 2 и 3, или 2 3 2, без разницы. Я хотел создать пустую строку, или список, забитую нулями, и по срезам сравнивать 2 числа, если в 2 числах есть одинаковая цифра в записи, то в список/строку с добавляется 1, и в ответ идут цифры по индексу из с, в которых стоят 1. Надеюсь понятно обьяснил
0
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
11.12.2018, 14:43 7
Наби Кобан, вы уже заводили эту тему. Найти общие цифры, входящие в запись двух чисел
Чем условие в новой задаче от условия в старой задаче?
Python
1
2
3
4
5
6
7
8
9
10
a = '123435123'
b = '2433466221213'
tmp = []
for i in a:
    if i in b:
        tmp.append(i)
print(' '.join(tmp))
 
1 2 3 4 3 1 2 3
>>>
0
3 / 3 / 0
Регистрация: 23.10.2018
Сообщений: 201
11.12.2018, 14:46  [ТС] 8
Ничем не отличается, только надо сделать по срезам и пустому списку/строке с
0
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
11.12.2018, 14:49 9
Я ничего не понял.
А нет. Понял.
1) А чем мой вариант не подходит?
2) Что вы хотите получить, если на вход идут числа 123423 12548523?
0
3 / 3 / 0
Регистрация: 23.10.2018
Сообщений: 201
12.12.2018, 10:38  [ТС] 10
1) 223 и 233
2) 1 2 2 3 4
0
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
12.12.2018, 10:53 11
Оно?
Python
1
2
3
4
5
6
7
8
9
10
a = '223'
b = '232'
a_spl = list(a)
b_spl = list(b)
tmp = []
for i in a_spl:
    if i in b_spl:
        b_spl.remove(i)
        tmp.append(i)
print(' '.join(tmp))
0
3 / 3 / 0
Регистрация: 23.10.2018
Сообщений: 201
12.12.2018, 11:23  [ТС] 12
Нет, на этот раз 223 и 233
0
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
12.12.2018, 11:35 13
Вообще не понимаю чего вы ходите, вот последний вариант от балды:
Python
1
2
3
4
5
6
7
8
9
10
11
a = '223'
b = '233'
a_spl = list(a)
b_spl = list(b)
tmp = []
for i in a_spl:
    if i in b_spl:
        while i in b_spl:
            b_spl.remove(i)
            tmp.append(i)
print(' '.join(tmp))
0
3 / 3 / 0
Регистрация: 23.10.2018
Сообщений: 201
12.12.2018, 11:39  [ТС] 14
Ну блин, ответ 2 3 3, а в этом случае верный ответ 2 3
0
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
12.12.2018, 11:40 15
Лучший ответ Сообщение было отмечено Наби Кобан как решение

Решение

Наби Кобан, вы издеваетесь?
Вот первый код, который я дал
Python
1
2
3
4
5
6
7
8
9
10
a = '223'
b = '233'
a_spl = list(a)
b_spl = list(b)
tmp = []
for i in a_spl:
    if i in b_spl:
        b_spl.remove(i)
        tmp.append(i)
print(' '.join(tmp))
Выдает ответ
Python
1
2
2 3
>>>
Откуда в вас столько лени, что вы даже проверить не можете???
1
3 / 3 / 0
Регистрация: 23.10.2018
Сообщений: 201
12.12.2018, 11:41  [ТС] 16
Я щас не шучу...... с моего компа выдает 2 2 3, а с чужого 2 3.... Извините, пожалуйста...
0
ioprst
12.12.2018, 11:43     Найдите ошибку пожалуйста
  #17

Не по теме:

Я сваливаю.

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.12.2018, 11:43

Найдите пожалуйста ошибку
Прога не правильно работает, подскажите что не так ? Должно выводить цифру котора чаще всех...

Найдите ошибку пожалуйста...
Программа считает сумму ряда с точность 0.001, формула n!/3*n^n Вроде все правильно, программа...

Найдите пожалуйста ошибку
1.Составьте программу вычисления суммы элементов от второго положительного и до конца. uses crt;...

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

Найдите ошибку пожалуйста
II. Turbo Pascal program three; var f: text; m: string; B: array of integer; ...

Найдите ошибку пожалуйста
Имеется TITLE EX_PROG PAGE ,132 STACK SEGMENT PARA STACK ‘STACK’ DB 64 DUP(‘STACK...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru