2016-01-27 2 views
0

Я занимаюсь программированием в этом квартале, и мы делаем Python. Я работаю над заданием, и у меня возникли проблемы с этим.Напишите функцию, которая является уравнением

Вот что назначение спрашивать ...

Напишите функцию с именем рда, что, учитывая значения для семи параметров, перечисленных ниже, вычисляет соответствующий фактор готовности к PQ.

Вот уравнение я должен создать:

PQ = 8 * Па (С + С)/3 * Р (D + N + I)

Вот как параметры должны быть заказаны в функции заголовок:

рд (ISC р ра дп)

I = значение события (1-10 с 10 является "петь национальный гимн на Super Bowl")

S = количество часов спать вы были прошлой ночью

C = выстрелы эспрессо или других стимуляторов потребленный

Pn = часы подготовки, необходимые для преуспевания

Pa = часы вы на самом деле тратится на подготовку

D = трудность (1-10 с 10 - «квантовая физика»)

N = уровень нервозности (1-10 с 10 «канатом, идущим по Гранд-Каньону»)

Вот некоторые примеры того, как ваша функция должна работать:

>>>pq(6,8,2,5,3,5,7) 

0,8888888888888888

>>>pq(6,8,2,5,5,5,7) 

1,4814814814814814

До сих пор, это то, что я придумал ...

def pq(i,s,c,pn,pa,d,n): 
    denominator = 8 * pa * (s + c) 
    numerator = 3 * pn * (d + n + i) 
    return denominator/numerator 

def main(): 
    i = float(input("On a scale of 1 to 10, what is the level of importance of the event: ")) 
    s = float(input("How many hours of sleep did you get last night? ")) 
    c = float(input("How many shots of espresso or other stimulants have you consumed? ")) 
    pn = float(input("How many hours of preparation are need to excel? ")) 
    pa = float(input("How many hours did you ACTUALLY spend preparing? ")) 
    d = float(input("On a scale of 1 to 10, what is the difficulty of the subject matter? ")) 
    n = float(input("On a scale of 1 to 10, how nervous are you? ")) 
    print ("Your prepardness qoutient is: " + (pq)) 

main() 

Я знаю, что ошибка напечатана («Ваш prepardness qoutient: «+ (pq)). Я уверен, что мой код все исправлен, но я действительно не знаю, что я делаю, и в основном пытаюсь подражать примеру. В основном я хочу, чтобы иметь возможность вводить значения, и с этим значением, в конечном итоге с PQ. Любая помощь будет принята с благодарностью.

+0

Вам необходимо преобразовать 'pq' в строку перед ее печатью. Кроме того, вам необходимо передать ему соответствующие параметры. –

ответ

0

Ваш код не обновляется. Вы на самом деле очень близки. Вам нужно вызвать функцию pq. Чтобы вызвать функцию pq, вы должны передать переменные i, s, c, pn, pa, d и n. Вызов функции - это имя функции, за которой следует(). main и pq - оба примера функций в вашем примере кода.

Если вы хотите вызвать функцию pq из интерпретатора python. Удалите вызов функции main из файла python. Сохраните файл как pq.py. Перейдите к интерпретатору python. Затем введите следующее.

>>>import pq 
>>>pq.pq(6,8,2,5,3,5,7) 

Что происходит в этом примере?

При вводе import module_name Python ищет файл с именем module_name.py в текущей папке, в которой вы находитесь. Импорт загружает все переменные и функции, определенные вами в вашем модуле. Поэтому, если вы импортируете pq, тогда интерпретатор загружает функцию main и pq. Затем можно вызвать функцию рд, которая находится в модуле рд с помощью команды

>>>pq.pq(6,8,2,5,3,5,7) 

Если вы хотите, чтобы вызвать функцию с именем главной в модуле рд, вы должны ввести

>>>pq.main() 

Если вы не как печатание pq.pq(), то вместо линии

>>>import pq 

использовать линию

>>>from pq import pq 

Тогда вы можете напрямую вызвать функцию pq.

>>>pq(6,8,2,5,3,5,7) 
+0

О, ничего себе! Эти% - новые символы для меня. Я лучше исследую, что это такое и как они работают. Я очень благодарен за помощь. Определенно вытащил меня со скалы. –

+0

Оказывается, наш учитель не хочет, чтобы программа запрашивала какие-либо материалы, он просто хочет, чтобы программа выполнялась следующим образом: >>> pq (6,8,2,5,3,5,7) 0.8888888888888888 Как мне настроить настройку? –

Смежные вопросы