Содержание
-
Троицкая Л.П. «Cистемы счисления и основы изучения типов данных в Python на примерах»
-
Строка
Строка состоит из последовательности символов. Узнать количество символов (длину строки) можно при помощи функцииlen. Любой объект можно привести к строке, которая ему соответствует. Для этого нужно вызвать функцию str(), передав ей в качестве параметра объект, переводимый в строку
-
Срезы
Срез – извлечение из данной строки одного символа или некоторого фрагмента подстроки или подпоследовательности. S[i] – срез, состоящий из одного символа, который имеет номер i(нумерация с 0). Можно указывать отрицательные индексы (номер будет отсчитываться с конца, начиная с номера -1) !!! В питоне нет отдельного типа для символов строки, каждый объект который получается в результате среза S[i]– это тоже строка типа str
-
-
срезы # Выводим с конца через один символ
-
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом 1) Строится двоичная запись числа N. 2) К этой записи дописываются справа ещё два разряда по следующему правилу: а) находится остаток от деления на 2 суммы двоичных разрядов N, полученный результат дописывается в конец двоичной последовательности N. б) пункт а повторяется . Укажите минимальное число R, которое превышает 123 и может являться результатом работы алгоритма. for n in range(1, 100): s = bin(n)[2:] #перевод в 2-с.с. и получение строки s = s + str(s.count('1') % 2) #определяем сумму «1» в строке s = s + str(s.count('1') % 2) # и определяем остаток от деления на 2 # в скобках мы получили число , которое преобразуем в строку r = int(s, 2)#переводим строку из 2 с.с. В 10 с.с. if r > 123: # r – число print(r) break #126 ЕГЭ-5
-
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1. Строится двоичная запись числа N. 2. К этой записи дописываются справа ещё два разряда по следующему правилу: складываются все цифры двоичной записи, если а) сумма нечетная к числу дописывается 11, б) сумма четная, дописывается 00. Укажите такое наименьшее число R, которое превышает 114 и может являться результатом работы алгоритма. for n in range(1,1000): r = bin(n)[2:] # переводим в 2 с.с. И получаем строку if (r.count("1") % 2 == 1):# считаем сколько «1» в строке r += "11" # сумма «1» нечетная к строке дописывается 11 else : r += " 00“# сумма «1» четная к строке дописывается 00 if (int(r,2)) > 114:# перевод строки r из 2 с.с. В 10 с.с. print(int(r,2)) break
-
for i in range(10000,100000): # перебираем числа n=str(i) # из числа i делаем строку I и записываем в n a=int(n[0])+int(n[2])+int(n[4])#из строки n делаем срез b=int(n[1])+int(n[3])#срезы if min(a,b)== 7 and max(a,b)==23: #применяем функции print(i) #мин число при котором автомат выдает 723 break #ответ 50979
-
список
Способ перевода числа в n-ую систему счисления x=156 способ перевода числа в любую с.с. ss=[] #создаем пустой список while x>0:# пока есть цифры в числе ss.append(x%2)# добавляем остатки в список x=x//2# отбрасываем последнюю цифру print(ss)# печатаем получившийся список ss=ss[::-1]# распечатываем его с конца print(ss)# ss- это наше число в 2 с.с. И так во все с.с Только меняя ss.append(x%n), где n – искомая с.с. Использование списков
-
Дано арифметическое выражение: 73x1y67+49y6x В записи чисел переменными x и y обозначены неизвестные цифры из допустимого алфавита для указанных систем счисления. Определите, сколько различных значений может принимать выражение при всех возможных x и y. - 73x1y67+49y6x Использование set() множества
-
Операнды арифметического выражения записаны в системе счисления с основаниями 15 и 13: 4Cx415 + x62A13 В записи чисел переменной x обозначена неизвестная цифра из алфавита десятичной системы счисления. Определите наименьшее значение x, при котором значение данного арифметического выражения кратно 121. Для найденного значения x вычислите частное от деления значения арифметического выражения на 121 и укажите его в ответе в десятичной системе счисления. Основание системы счисления в ответе указывать не нужно.
-
способ решенияx обозначена неизвестная цифра из алфавита десятичной системы счисления
for x in range(10): t = int('4C' + x + '4', 15) + int( x + '62A', 13) ift % 121 == 0: print( t// 121) break Ответ: 234.
-
переменной x обозначены допустимые в данных системах счисления
Операнды арифметического выражения записаны в системе счисления с основаниями 19 и 16: 2x8419 + 2B3x16 В записи чисел переменной x обозначены допустимые в данных системах счисления неизвестные цифры. Определите наименьшее значение x, при котором значение данного арифметического выражения кратно 88. Для найденного значения x вычислите частное от деления значения арифметического выражения на 88 и укажите его в ответе в десятичной системе счисления
-
Операнды арифметического выражения записаны в системе счисления с основаниями 19 и 16
for x in '0123456789ABCDEF': #16 выбираем меньшую t = int('2' + x + '84', 19) + int('2B3' + x , 16) if t % 88 == 0: print(t // 88) break Ответ: 345.
Нет комментариев для данной презентации
Помогите другим пользователям — будьте первым, кто поделится своим мнением об этой презентации.