小编ovs*_*ovs的帖子

Python:使用递归查找10的倍数的最低固定月付款

我每次提交时都会在edX.org上的Python课程中得到11或12个正确,但是在讨论中没有得到任何人的帮助,因为没有人可以在那里发布任何代码(没有真正有用)并且没有似乎是任何可用的支持人员从课程中说话,我会付钱,所以我在这里发帖.我正要付钱给某人来指导我,但现在没有人可以使用,而且我有一些压力要在12月之前为我的工作完成这门课程.

这是作业:

现在编写一个程序,计算所需的最低固定月付款,以便在12个月内偿还信用卡余额.按固定的每月付款,我们指的是每个月不变的单个数字,而是每月支付的固定金额.

在这个问题上,我们不会处理最低月付款率.

以下变量包含如下所述的值:

余额 - 信用卡上的未结余额

annualInterestRate - 年度利率小数

该计划应打印出一行:每月最低付款,以偿还1年内的所有债务,例如:

最低付款:180
假设利息按月末的余额(在该月的付款之后)按月复利.每月付款必须是10美元的倍数,并且所有月份都相同.请注意,使用此付款方案可能会使余额变为负数,这是可以的.所需数学的摘要如下:

每月利率=(年利率)/ 12.0
每月未付余额=(以前的余额) - (每月最低固定付款额)每月
更新余额=(每月未付余额)+(每月利率x每月未付余额)

这是我的代码:

#! /usr/bin/python3.6

from math import ceil

def roundup(x):
    return int(ceil(x / 10.0) * 10)

def getFixedPayment(balance,annualInterestRate,counter=12):

    totalLoan = balance + (balance*annualInterestRate)
    monthlyPayment = roundup(totalLoan/12.0)
    newBalance = totalLoan - monthlyPayment
    if counter < 12:
        newPayment = newBalance / counter + 1
    else:
        newPayment = newBalance / counter

    if counter == 1:
        return roundup(newPayment/12)
    else:
        return getFixedPayment(balance,annualInterestRate,counter-1)


#balance = 3329
#annualInterestRate …
Run Code Online (Sandbox Code Playgroud)

python recursion

5
推荐指数
1
解决办法
477
查看次数

创建一个数组,其中每个元素存储其索引

我想创建一个2d numpy数组,其中每个元素都是其索引的元组.

示例(4x5):

array([[[0, 0],
        [0, 1],
        [0, 2],
        [0, 3],
        [0, 4]],

       [[1, 0],
        [1, 1],
        [1, 2],
        [1, 3],
        [1, 4]],

       [[2, 0],
        [2, 1],
        [2, 2],
        [2, 3],
        [2, 4]],

       [[3, 0],
        [3, 1],
        [3, 2],
        [3, 3],
        [3, 4]]])
Run Code Online (Sandbox Code Playgroud)

我将list使用以下列表理解创建一个python :

[[(y,x) for x in range(width)] for y in range(height)]
Run Code Online (Sandbox Code Playgroud)

有没有更快的方法来实现相同的,也许有numpy方法?

python numpy multidimensional-array

4
推荐指数
3
解决办法
206
查看次数

标签 统计

python ×2

multidimensional-array ×1

numpy ×1

recursion ×1