python矩阵的右下半部分【简单易懂,代码可以直接运行】
输入一个二维数组 M[12][12],根据输入的要求,求出二维数组的右下半部分元素的平均值或元素的和。 右下半部分是指次对角线下方的部分,如下图所示,黄色部分为对角线,绿色部分为右下半部分:
输入格式 第一行输入一个大写字母,若为 S,则表示需要求出右下半部分的元素的和,若为 M,则表示需要求出右下半部分的元素的平均值。 接下来 12 行,每行包含 12 个用空格隔开的浮点数,表示这个二维数组,其中第 i+1 行的第 j+1 个数表示数组元素 M[i][j]。 输出格式 输出一个数,表示所求的平均数或和的值,保留一位小数。 数据范围 −100.0≤M[i][j]≤100.0 这道题用到了数组,核心还是找到i与j的关系,进而找到for循环的关键条件 代码如下:
s = []C = input()sum = 0count = 0for i in range(0,12):s1 = list(map(float,input().split(' ')))s.append(s1)for i in range(0,12):for j in range(11 - i + 1,12):sum += s[i][j]count += 1if C == "S":print("%.1f"%sum)elif C == "M":print("%.1f"%(sum/count))