712 / 351 / 120
Регистрация: 09.12.2020
Сообщений: 918

Определить наименьшее основание системы счисления для числа

09.12.2020, 05:19. Показов 12957. Ответов 12

Студворк — интернет-сервис помощи студентам
Всем привет! Нужно решить задачку на питоне. Важно, что списки использовать нельзя, функции тоже. "Половину" я уже сделал, определил основания обоих чисел. Дальше не могу без списков и функций. Вставляю свой код

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
s = input()
 
k = 0
 
i = 0
for char in s:
    if(i == 0):
        max = ord(char)
    i += 1
i = 0
for char in s:
    if(ord(char) > max):
        max = ord(char)
if max >= 49 and max <= 57:
    answ = max - 47
else:
    answ = max - 54
 
s1 = input()
 
k = 0
 
i = 0
for char in s1:
    if(i == 0):
        max1 = ord(char)
    i += 1
i = 0
for char in s1:
    if(ord(char) > max):
        max1 = ord(char)
if max1 >= 49 and max1 <= 57:
    answ1 = max1 - 47
else:
    answ1 = max - 54
Тут answ - основание первого числа, answ1 - второго числа. Почти на 100 процентов уверен в том, что работает))) Помогите, пожалуйста!
Условие задачи:

Не всякое число может являться записью в данной системе счисления. Например, 123 не может быть числом ни в двоичной, ни в троичной системе. Наименьшее основание системы счисления, в которой может быть записано это число – четыре.

Напишите программу, которая это и будет определять.

Вводятся два числа, записанных в разных, но неизвестных системах счисления. Для каждого из них нужно найти минимальное основание системы счисления, в которой это число может быть записано. Затем число в меньшей системе перевести в систему с большим основанием.

Гарантируется, что основания разные и не превышают 10.

Формат ввода
Два целых положительных числа.

Формат вывода
Целое число.

Пример 1
Ввод Вывод
123
214
102
Пример 2
Ввод Вывод
192
10010
18
Примечания
В задаче нельзя использовать списки, методы и функции.


Заранее спасибо.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.12.2020, 05:19
Ответы с готовыми решениями:

Чему равно наименьшее основание системы счисления
мне нужно написать код, который найдет чему равно наименьшее основание системы счисления, допустим (x), при котором 225(система...

Чему равно наименьшее основание позиционной системы счисления
Чему равно наименьшее основание позиционной системы счисления x, при котором 225x = 405y? Ответ записать в виде целого числа. x и y...

Определите основание системы счисления
Значение арифметического выражения: N^25 — 2*N^13 + 10 записали в системе счисления с основанием N. С помощью python определите основание...

12
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
09.12.2020, 08:30
Цитата Сообщение от alilxxey Посмотреть сообщение
Наименьшее основание системы счисления
Python
1
2
n = int(input())
print(max(map(int, str(n))) + 1)
1
712 / 351 / 120
Регистрация: 09.12.2020
Сообщений: 918
09.12.2020, 09:16  [ТС]
Цитата Сообщение от iSmokeJC Посмотреть сообщение
print(max(map(int, str(n))) + 1)
нельзя же использовать списки) или я чего то не догоняю?
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
09.12.2020, 09:44
Python
1
2
3
4
5
6
7
def foo(x:int)->int:
   maxx = 1
   while x>0:
       if x%10 > maxx:
           maxx = x%10
       x /= 10
   return maxx+1
1
712 / 351 / 120
Регистрация: 09.12.2020
Сообщений: 918
09.12.2020, 10:11  [ТС]
Цитата Сообщение от iSmokeJC Посмотреть сообщение
def foo(x:int)->int:
   maxx = 1
   while x>0:
       if x%10 > maxx:
           maxx = x%10
       x /= 10
   return maxx+1
нельзя функции использовать! Не понял вообще смысл кода. Можно пояснение?
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
09.12.2020, 10:30
Функция возвращает минимальную степень счисления
0
712 / 351 / 120
Регистрация: 09.12.2020
Сообщений: 918
09.12.2020, 10:31  [ТС]
Цитата Сообщение от iSmokeJC Посмотреть сообщение
Функция возвращает степень минимальную счисления
так я ж уже написал расчет минимальной системы счисления, нужно теперь вторую часть задачи сделать
0
Эксперт Python
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,318
09.12.2020, 11:58
Лучший ответ Сообщение было отмечено alilxxey как решение

Решение

alilxxey,
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
a = input()
b = input()
ssa = ssb = '0'
for i in a :
    if i > ssa:
        ssa = i 
for j in b:
    if j  > ssb:
        ssb = j 
if ssb<ssa:
    ssa, ssb = ssb, ssa
    a, b = b, a 
ssa = int(ssa) + 1
ssb = int(ssb) + 1
 
# вторая часть #
tmp = 0
for i in a:
    tmp = int(i) + tmp * ssa
a_b = ''
while tmp > 0:
    a_b = str(tmp % ssb) + a_b
    tmp = tmp // ssb
print(a_b)
1
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
09.12.2020, 12:23
если ввести ноль видимо минимальное основание СС это единица
0
712 / 351 / 120
Регистрация: 09.12.2020
Сообщений: 918
09.12.2020, 12:38  [ТС]
Цитата Сообщение от eaa Посмотреть сообщение
если ввести ноль видимо минимальное основание СС это единица
ну по сути же да) просто не предусмотрен этот случай, а так да, по сути это единичная система счисления)

Добавлено через 2 минуты
Цитата Сообщение от Gdez Посмотреть сообщение
a = input()
b = input()
ssa = ssb = '0'
for i in a :
    if i > ssa:
        ssa = i
for j in b:
    if j  > ssb:
        ssb = j
if ssb<ssa:
    ssa, ssb = ssb, ssa
    a, b = b, a
ssa = int(ssa) + 1
ssb = int(ssb) + 1
# вторая часть #
tmp = 0
for i in a:
    tmp = int(i) + tmp * ssa
a_b = ''
while tmp > 0:
    a_b = str(tmp % ssb) + a_b
    tmp = tmp // ssb
print(a_b)
Спасибо большое! По тестирующей системе Яндекс.Лицея задача оценена на 9.7/10. Не знаю куда делись еще 0.3 балла, решение вроде бы даже идеальное.
0
Эксперт Python
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,318
09.12.2020, 12:40
Лучший ответ Сообщение было отмечено alilxxey как решение

Решение

alilxxey, вместо последнего принта попробуй
Python
1
2
3
if a_b == '':
    a_b = 0
print(a_b)
1
712 / 351 / 120
Регистрация: 09.12.2020
Сообщений: 918
09.12.2020, 13:10  [ТС]
Цитата Сообщение от Gdez Посмотреть сообщение
alilxxey, вместо последнего принта попробуй
вы просто гениальны.... Подправил там немного по РЕР8, соединил воедино и получил 10 баллов) Спасибо вам огромное, что бы я без вас делал)

Gdez решил задачу, прикрепляю финальную версию работающей на 10/10 программы:

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
a = input()
b = input()
ssa = ssb = '0'
for i in a:
    if i > ssa:
        ssa = i 
for j in b:
    if j > ssb:
        ssb = j 
if ssb < ssa:
    ssa, ssb = ssb, ssa
    a, b = b, a 
ssa = int(ssa) + 1
ssb = int(ssb) + 1
 
# вторая часть #
tmp = 0
for i in a:
    tmp = int(i) + tmp * ssa
a_b = ''
while tmp > 0:
    a_b = str(tmp % ssb) + a_b
    tmp = tmp // ssb
    
if a_b == '':
    a_b = 0
print(a_b)
0
Эксперт Python
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,318
09.12.2020, 13:16
alilxxey, последняя гениальность не моя.
А так
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.12.2020, 13:16
Помогаю со студенческими работами здесь

Найти основание системы счисления
На вход подаётся число 210 (с основанием СС = 5), это же число с n-ым основанием имеет вид 313, найти основание n. Думал просто...

Для заданного целого числа k найти наименьшее основание p системы счисления
Для заданного целого числа k найти наименьшее основание p системы счисления, в которой представление числа k не содержит нулей. Напечатать...

Для данного целого k найти наименьшее основание p системы счисления, где представление числа k не имеет нулей
Для заданного целого числа k найти наименьшее основание p системы счисления, в которой представление числа k не содержит нулей. Напечатать...

Для целого k найти наименьшее основание системы счисления, в которой представление k не содержит нулей
Помогите, пожалуйста решить задачу, заранее спасибо!!!:) Для заданного целого числа k найти наименьшее основание p системы...

Наименьшее основание позиционной системы счисления
Наименьшее основание позиционной системы счисления X, при котором 123 с основанием x = 146 с основанием y,равно... С подробным решением...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

Новые блоги и статьи
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru