Вопрос задан 09.06.2023 в 19:11. Предмет Информатика. Спрашивает Белая Ева.

Обьясните пожалуйста в чем проблема моего кода def square(side, symbol, peremennaya): for i in

range(side): for j in range(side): if peremennaya or i == 0 or j == 0 or i == side - 1 or j == side - 1: print(symbol, end=' ') else: print(' ') print() result = square(1, 3, 4) print(result)
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Цуканов Сергей.

В данном коде есть несколько проблем:

Переменная peremennaya не объявлена и не инициализирована перед вызовом функции square(), что приведет к ошибке при ее исполнении.

В функции square() есть несоответствие между использованием символа пробела и символа symbol. Вместо пробела следует использовать символ symbol в тех случаях, когда надо вывести этот символ.

Функция square() не возвращает никакое значение, поэтому ее вызов в переменную result ничего не присвоит.

В функции square() нет инструкции, которая сохраняла бы вывод функции в переменную result.

При вызове функции square() не передан параметр peremennaya.

Исправленный код может выглядеть так:

def square(side, symbol, peremennaya=False):

result = ''

for i in range(side):

for j in range(side):

if peremennaya or i == 0 or j == 0 or i == side - 1 or j == side - 1:

result += str(symbol) + ' '

else:

result += ' '

result += '\n'

return result

result = square(5, '*', True)

print(result)

В этом коде я добавил параметр peremennaya по умолчанию равный False, и инструкцию, которая сохраняет вывод функции в переменную result. Кроме того, я использовал строковый тип данных для символа symbol и добавил знак пробела после него для того, чтобы символы не налегали друг на друга

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Проблема в данном коде заключается в отсутствии возврата значения из функции square(). Вместо этого, функция только выводит результат на экран, но не возвращает его для дальнейшего использования.

Если вы хотите, чтобы функция square() возвращала результат, вы можете изменить её следующим образом:

python
def square(side, symbol, peremennaya): result = '' for i in range(side): for j in range(side): if peremennaya or i == 0 or j == 0 or i == side - 1 or j == side - 1: result += symbol + ' ' else: result += ' ' result += '\n' return result result = square(1, 3, 4) print(result)

В этой версии кода результат сохраняется в переменную result, используя оператор конкатенации строк +=. Затем результат возвращается с помощью оператора return. Теперь вы можете распечатать результат после вызова функции square().

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос