Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Языки программирования > Python
Перезагрузить страницу помогите с решение задач в Python
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
Jasp Jasp вне форума
Новичок
 
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 09.10.2016
По умолчанию помогите с решение задач в Python - 09.10.2016, 23:39

1) Напиши функцию, принимающую три положительных числа и возвращающую сумму квадратов двух наибольших из них. В теле функции нужно использовать единственное выражение.
def two_of_three(a, b, c):
"""Возвращает x*x + y*y, где x и y — два наибольших значения среди a, b, c.

>>> two_of_three(1, 2, 3)
13
>>> two_of_three(5, 3, 1)
34
>>> two_of_three(10, 2, 8)
164
>>> two_of_three(5, 5, 5)
50
"""
2) Попробуй написать функцию, которая делает то же самое, что и конструкция if.
def if_function(condition, true_result, false_result):
"""Возвращает true_result если условие condition истинно и false_result в противном случае.

>>> if_function(True, 2, 3)
2
>>> if_function(False, 2, 3)
3
>>> if_function(3==2, 3+2, 3-2)
1
>>> if_function(3>2, 3+2, 3-2)
5
"""
if condition:
return true_result
else:
return false_result

В действительности эта функция не во всех случаях идентична конструкции if. Для доказательства этого факта напишите функции c, t и f так, что with_if_statement возвращает число 1, а with_if_function не возвращает.
def with_if_statement():
if c():
return t()
else:
return f()

def with_if_function():
return if_function(c(), t(), f())

def c():
"*** ТВОЙ КОД ЗДЕСЬ ***"

def t():
"*** ТВОЙ КОД ЗДЕСЬ ***"

def f():
"*** ТВОЙ КОД ЗДЕСЬ ***"

4) Одна из нерешенных проблем математики — гипотеза Коллатца — касается последовательности чисел называемой сиракузской или последовательностью чисел-градин.

Выберем любое положительное число n.
Если n четное, тогда делим его на 2.
Если n нечетное, тогда умножаем его на 3 и прибавляем 1.
Продолжаем те же действия с n, пока не получим 1.
Гипотеза Коллатца заключается в том, что какое бы начальное число n мы ни взяли, рано или поздно мы получим 1. Число n будет то увеличиваться, то уменьшаться, но в результате все равно n станет равным 1 (по крайней мере для всех провереных чисел — строгих доказательств этого не существует).

Последовательность чисел n инога называют последовательностью чисел-градин, поскольку градины тоже перемещаются в атмосфере вверх и вниз пока в конце концов не упадут на землю.
def hailstone(n):
"""Выводит сиракузскую последовательность (числа-градины), начинающуюся с n, и возвращает ее длину.

>>> a = hailstone(10) # Семь элементов: 10, 5, 16, 8, 4, 2, 1
10
5
16
8
4
2
1
>>> a
7
"""
"*** ТВОЙ КОД ЗДЕСЬ ***"
5) Напиши однострочную программу, которая выводит в консоль саму себя. Можно использовать следующие возможности Python:

числа;
инструкции присвоения;
строки в одинарных и двойных кавычках;
арифметические операторы +, -, * и /;
встроенную функцию print;
встроенную функцию eval, которая вычисляет значение представленного строкой выражения;
встроенную функцию repr, которая возвращает строковое выражение аргумента.
Ты можешь соединить две строки с помощью +, можешь повторить строку много раз, домножив ее на число. Точки с запятой ; могут использовться для разделения нескольких инструкций в одной строке, например:

>>> c='c';print('a');print('b' + c * 2)
a
bcc

Разберись во взаимосвязи одиночных и двойных кавычек, а также в результатах вызова repr со строковым аргументом.
Ответить с цитированием
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Решение логических задач. Линус Prolog 0 09.01.2015 21:21
Решение задач на C# Надежда_ИСУ Задания за деньги 2 28.01.2013 18:21
Решение задач в Delphi 7 Надежда_ИСУ Delphi 2 24.01.2013 18:46
Решение задач $ back191 Задания за деньги 0 26.03.2012 12:54
Решение задач Nooau Pascal 1 09.01.2012 18:49
решение задач на Прологе farzona Задания за деньги 2 07.11.2011 20:45
Требуется помощь в решение задачи на Python Женгя Python 2 21.01.2011 20:42
Решение задач на VBA ivory Visual Basic 1 09.04.2009 23:29
Stackless Python как реализовать решение задачи Vladimir the Red Sunny Python 9 22.09.2007 01:19
помогите в решение простых задач старому phpшнику :) chubaka Prolog 1 17.06.2006 22:42
Решение логических задач!!! Sever Prolog 1 19.04.2005 20:18



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов