• Предмет: Информатика
  • Автор: aleksandrmazepov33
  • Вопрос задан 6 лет назад

это на питоне

Указаны фамилии и номера телефонов n=10 человек в записной книжке. Составить программу, которая определяет, есть ли в записной книжке: а) телефон определенного лица, и, если есть, печатает номер ее телефона; б) информация о человеке с заданным номером телефона, и, если есть, вывести фамилию этого человека.​

Ответы

Ответ дал: badnsnus
2

Ответ:

а)

n = [['Попов', '+799966666'], ['Иванов', '+799963266'], ['Сидоров', '+799126666'], ['Онегин', '+799966326'],

    ['Пушкин', '+799966662'], ['Блок', '+742966666'], ['Толстой', '+799921666'], ['Афанасьев', '+799966132'],

    ['Есенин', '+731266666'], ['Лермонтов', '+799932666']]

a = input('Введите Фамилию: ')

x = 0

for i in range(len(n)):

   if n[i][0] == a:

       print('Номер телефона:', n[i][1])

       x = 1

       break

if x == 0:

   print('Такого человека нет в базе')

б)

n = [['Попов', '+799966666'], ['Иванов', '+799963266'], ['Сидоров', '+799126666'], ['Онегин', '+799966326'],

    ['Пушкин', '+799966662'], ['Блок', '+742966666'], ['Толстой', '+799921666'], ['Афанасьев', '+799966132'],

    ['Есенин', '+731266666'], ['Лермонтов', '+799932666']]

a = input('Введите Фамилию: ')

x = 0

for i in range(len(n)):

   if n[i][1] == a:

       print('Фамилия:', n[i][0])

       x = 1

       break

if x == 0:

   print('Такого номера нет в базе')

БОНУС

Решение, которое работает и для а, и для б:

import re

n = [['Попов', '899966666'], ['Иванов', '+799963266'], ['Сидоров', '+799126666'], ['Онегин', '+799966326'],

    ['Пушкин', '+799966662'], ['Блок', '+742966666'], ['Толстой', '+799921666'], ['Афанасьев', '+799966132'],

    ['Есенин', '+731266666'], ['Лермонтов', '+799932666']]

a = input('Введите номер или фамилию: ')

x = 0

if re.match(r'^[0-9_.+]', a):

   for i in range(len(n)):

       if n[i][1] == a:

           print('Фамилия:', n[i][0])

           x = 1

           break

   if x == 0:

       print('Такого номера нет в базе')

else:

   for i in range(len(n)):

       if n[i][0] == a:

           print('Номер:', n[i][1])

           x = 1

           break

   if x == 0:

       print('Такого человека нету в базе')


aleksandrmazepov33: лучший
aleksandrmazepov33: у тебя б не очень верно записано , там пользователь должен ввести номер, и получить фамилию
Вас заинтересует