必威体育Betway必威体育官网
当前位置:首页 > IT技术

Python实现求二阶行列式

时间:2019-11-07 06:13:30来源:IT技术作者:seo实验室小编阅读:56次「手机版」
 

二阶行列式

目录

题目描述

输入/输出描述

解决思路

代码

代码走读

传送门

测试用例

1. 输入的数据都是整型

2. 输入的数据存在非法字符


题目描述

输入二阶行列式的4个值,并计算该二阶行列式的值

输入/输出描述

输入二阶行列式的四个值,如下所示:

Please input a1 value: 5

Please input a2 value: 9

Please input b1 value: 3

Please input b2 value: 4

输出二阶行列式,并打印它的值。如下所示:

second order determinant: 

|    5    3    |

|    9    4    |

Value is : -7

解决思路

依次输入二阶行列式的四个值,并根据二阶行列式的运算规则求值。最后打印输出结果。

代码

import traceback


array = [[None] * 2 for row in range(2)]

try:
    array[0][0] = int(input("Please input a1 value: "))
    array[1][0] = int(input("Please input a2 value: "))
    array[0][1] = int(input("Please input b1 value: "))
    array[1][1] = int(input("Please input b2 value: "))

    value = array[0][0] * array[1][1] - array[1][0] * array[0][1]
    print("second order determinant: ")
    print("|\t%s\t%s\t|" % (array[0][0], array[0][1]))
    print("|\t%s\t%s\t|" % (array[1][0], array[1][1]))
    print("Value is : %s" % value)
except ValueERROR as e:
    print("Invalid number input.")
    print(str(e))
    print("errmsg: \n%s" % traceback.format_exc())
except Exception as e:
    print(str(e))
    print("errmsg: \n%s" % traceback.format_exc())

代码走读

import traceback

# 声明一个二维列表来表示一个空置的二阶行列式
array = [[None] * 2 for row in range(2)]

try:
    # 输入二阶行列式的四个值
    array[0][0] = int(input("Please input a1 value: "))
    array[1][0] = int(input("Please input a2 value: "))
    array[0][1] = int(input("Please input b1 value: "))
    array[1][1] = int(input("Please input b2 value: "))

    # 根据二阶行列式的求值规则计算结果
    value = array[0][0] * array[1][1] - array[1][0] * array[0][1]

    # 打印结果
    print("second order determinant: ")
    print("|\t%s\t%s\t|" % (array[0][0], array[0][1]))
    print("|\t%s\t%s\t|" % (array[1][0], array[1][1]))
    print("Value is : %s" % value)

# 如果输入的二阶行列式值不是可转换为整型的数据,抛出的异常会在这里捕获。打印错误提示和堆栈信息。
except ValueError as e:
    print("Invalid number input.")
    print(str(e))
    print("errmsg: \n%s" % traceback.format_exc())
# 捕获其他位置可能抛出的异常,并打印错误信息和堆栈
except Exception as e:
    print(str(e))
    print("errmsg: \n%s" % traceback.format_exc())

传送门

1. range()函数

https://blog.csdn.net/TCatTime/article/details/82941022

2. input()函数

https://blog.csdn.net/TCatTime/article/details/82556033

3. int()函数

https://blog.csdn.net/TCatTime/article/details/82826824

4. print()函数

https://blog.csdn.net/TCatTime/article/details/83450692

5. str()函数

https://blog.csdn.net/TCatTime/article/details/82963437

测试用例

1. 输入的数据都是整型

Please input a1 value: 12
Please input a2 value: 34
Please input b1 value: 1
Please input b2 value: 78
second order determinant: 
|	12	1	|
|	34	78	|
Value is : 902

2. 输入的数据存在非法字符

当输入的数据不是整型,例如字符串。

Please input a1 value: 3
Please input a2 value: 34
Please input b1 value: 12
Please input b2 value: f2
Invalid number input.
invalid literal for int() with base 10: 'f2'
errmsg: 
Traceback (most recent call last):
  File "/Users/Desktop/Python APPs/untitled_test/test3.py", line 10, in <module>
    array[1][1] = int(input("Please input b2 value: "))
ValueError: invalid literal for int() with base 10: 'f2'

程序会报错提示并打印堆栈信息。

文章最后发布于: 2019-05-17 21:20:04

相关阅读

使用socks5实现简易代理服务器

写一个简易的socks5代理服务器,负责转发网络数据包,要能够使用它来上网。 SOCKS5 是一个代理协议,它在使用TCP/IP协议通讯的前端机器

丽江:黄金周酒店预订火爆 提前9天一房难求

有钱有闲的小城青年正在改变旅宿市场的消费格局。10月11日,千屿酒店发布《2019小城青年开房图鉴》,对千屿旗下覆盖120余座城市的超2

CountDownLatch的实现

这是一个非常有意思的类,看下面的代码:CountDownLatch countDownLatch = new CountDownLatch(1); new Thread(new Runnable() {

Python product函数介绍

Python product函数介绍 ​ product(A,B)函数,返回A和B中的元素组成的笛卡尔积的元组,具体见如下代码:import itertools for item

数据结构与算法——图解平衡二叉树及代码实现

平衡二叉树介绍 平衡二叉树,是一种二叉排序树,其中每一个节点的左子树和右子树的高度差最多等于1。由3位科学家共同发明,用他们首字

分享到:

栏目导航

推荐阅读

热门阅读