Необходимо написать функцию на языке Python3 print_fio

Задача:

Напишите функцию print_fio(name, surname, patronymic), которая принимает три параметра: name – имя человека; surname – фамилия человека; patronymic – отчество человека; а затем выводит на печать ФИО человека (на одной строке, только первые буквы в порядке surname-name-patronymic).

Необходимые и дополнительные условия: Для считывания текста используйте команду input(); для печати текста на экране используйте команду print(), добавив параметр sep='' для печати на одной строке. Используйте def для объявления функции.

Решение:

a = input("Введите имя ")
b = input("Введите отчество ")
c = input("Введите фамилию ")
first_name = a
patronymic = b
last_name = c 
def print_fio(first_name, last_name, patronymic):
   print(f"{first_name[0].upper()}+{patronymic[0].upper()}+{last_name[0].upper()}")

Вывод:

Введите имя Иван
Введите отчество Сидоров
Введите фамилию Петрович

И далее ничего не печатает.

Однако, в рамках условия в решении должны содержаться первая заглавная буква ФИО. Подскажите, в каком месте я ошибся в коде ?


Ответы (1 шт):

Автор решения: mrBars1k

Вы забыли объявить саму функцию, также конкатенацию через + здесь делать не нужно для строчного вывода текста. Повторно заключать в переменную введённый текст не нужно, Вы уже создаёте переменные с введённым текстом.

a = input("Введите имя ")
b = input("Введите фамилию ")
c = input("Введите отчество ")

def print_fio(a, b, c):
   print(f"{b[0].upper()}{a[0].upper()}{c[0].upper()}")

print_fio(a, b, c)
→ Ссылка