Вы находитесь на странице: 1из 6

Напишите программу, которая считывает список чисел 

lstlst из первой строки и число xx из


второй строки, которая выводит все позиции, на которых встречается число xx в
переданном списке lstlst.

Позиции нумеруются с нуля, если число xx не встречается в списке, вывести строку


"Отсутствует" (без кавычек, с большой буквы).

Позиции должны быть выведены в одну строку, по возрастанию абсолютного значения.

a=[int(i) for i in input().split()]

b=int(input())

j=len(a)

k=0

#c=0

if b not in a:

print('Отсутствует')

while k<=j:

if k==j:

break

elif b == a[k]:

#c+=1

print(k)

k+=1
3.2( Словари)
Когда Антон прочитал «Войну и мир», ему стало интересно, сколько слов и в каком
количестве используется в этой книге.

Помогите Антону написать упрощённую версию такой программы, которая сможет


подсчитать слова, разделённые пробелом и вывести получившуюся статистику.

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

s = input().lower().split() --- приймаємо вводь і робимо всі маленькі

d={} --- создаємо пустий словарь

for x in s : проходимося по списку за умовою,

if d.get(x)!=None: провіряємо чи є ,якщо є то плюс 1

d[x]+=1

else :

d.setdefault(x,1) додаємо до списку

for key, value in d.items():

print(key, value)

3.3 (Словари)

Напишите программу, которая считывает строку с числом nn, которое задаёт количество


чисел, которые нужно считать. Далее считывает nn строк с числами x_ixi, по одному числу
в каждой строке. Итого будет n+1n+1 строк.

При считывании числа x_ixi программа должна на отдельной строке вывести


значение f(x_i)f(xi). Функция  f(x)  уже реализована и доступна для вызова. 

Функция вычисляется достаточно долго и зависит только от переданного аргумента xx. Для


того, чтобы уложиться в ограничение по времени, нужно избежать повторного вычисления
значений.

def f(x):

return x**2

n=int(input())

d={}

for x in range(0,n):
x=int(input())

if d.get(x)==None:

d.setdefault(x,f(x))

print(d[x])

В какой-то момент в Институте биоинформатики биологи перестали понимать, что говорят


информатики: они говорили каким-то странным набором звуков.

В какой-то момент один из биологов раскрыл секрет информатиков: они использовали при
общении подстановочный шифр, т.е. заменяли каждый символ исходного сообщения на
соответствующий ему другой символ. Биологи раздобыли ключ к шифру и теперь
нуждаются в помощи:

Напишите программу, которая умеет шифровать и расшифровывать шифр подстановки.


Программа принимает на вход две строки одинаковой длины, на первой строке записаны
символы исходного алфавита, на второй строке — символы конечного алфавита, после
чего идёт строка, которую нужно зашифровать переданным ключом, и ещё одна строка,
которую нужно расшифровать.

Пусть, например, на вход программе передано:


abcd
*d%#
abacabadaba
#*%*d*%

Это значит, что символ a исходного сообщения заменяется на символ * в


шифре, b заменяется на d, c — на % и d — на #.
Нужно зашифровать строку abacabadaba и расшифровать строку #*%*d*% с помощью
этого шифра. Получаем следующие строки, которые и передаём на вывод программы:
*d*%*d*#*d*
dacabac

abetka=input()

translate =input()

d=dict(zip(abetka,translate))

#print(d)

decrypted=input()

encrypted=input()

for key in decrypted:

print(d.get(key),end='')

print()

for he in encrypted:

print(abetka[translate.index(he)], end = '')


print()

Простейшая система проверки орфографии может быть основана на использовании


списка известных слов.
Если введённое слово не найдено в этом списке, оно помечается как "ошибка".

Попробуем написать  подобную систему.

На вход программе первой строкой передаётся количество   dd  известных нам


слов,  после чего на  dd  строках указываются эти слова.  Затем
передаётся  количество  ll  строк текста для проверки, после чего  ll  строк текста.

Выведите уникальные "ошибки" в произвольном порядке.   Работу  производите без учёта


регистра.

Sample Input:
4
champions
we
are
Stepik
3
We are the champignons
We Are The Champions
Stepic

Sample Output:
stepic
champignons
the

d=int(input())
w=[]
re=[]
while 0<d:
d-=1
s=input().lower()
w.append(s)
d1=int(input())
while 0<d1:
d1-=1
s1=input().lower().split()
for x in s1:
if x not in w:
re.append(x)
lst=list(set(re))
for x in lst:
print(x)
Группа биологов в институте биоинформатики завела себе черепашку.

После дрессировки черепашка научилась понимать и запоминать указания биологов


следующего вида:
север 10
запад 20
юг 30
восток 40
где первое слово — это направление, в котором должна двигаться черепашка, а число
после слова — это положительное расстояние в сантиметрах, которое должна пройти
черепашка.

Но команды даются быстро, а черепашка ползёт медленно, и программисты догадались,


что можно написать программу, которая определит, куда в итоге биологи приведут
черепашку. Для этого программисты просят вас написать программу, которая выведет
точку, в которой окажется черепашка после всех команд. Для простоты они решили считать,
что движение начинается в точке (0, 0), и движение на восток увеличивает первую
координату, а на север — вторую.

Программе подаётся на вход число команд nn, которые нужно выполнить черепашке, после
чего nn строк с самими командами. Вывести нужно два числа в одну строку: первую и
вторую координату конечной точки черепашки. Все координаты целочисленные.

Sample Input:
4
север 10
запад 20
юг 30
восток 40

Sample Output:
20 -20

start_y=0
start_x=0
d=int(input())
while 0<d:
d-=1
s=input().split()
if s[0]=='север':
start_y+=int(s[1])
if s[0]=='восток':
start_x+=int(s[1])
if s[0]=='юг':
start_y-=int(s[1])
if s[0]=='запад':
start_x-=int(s[1])
print(start_x,start_y)

Вам также может понравиться