Python 练习实例37 Python 100例
题目:对10个数进行排序。
程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换,下次类推,即用第二个元素与后8个进行比较,并进行交换。
程序代码:
L=[1,2,3,7,6,5,34,7,8,9]
for i in range(0,10):
for j in range(i,10):
if(L[i]>L[j]):
k=L[i]
L[i]=L[j]
L[j]=k
print L[i]
Python 练习实例38 Python 100例
题目:求一个3*3矩阵主对角线元素之和。
程序分析:利用双重for循环控制输入二维数组,再将a[i][i]累加后输出。
方法一(固定数字):
L=[[1,2,3],[4,5,6],[7,8,9]]
n=len(L[0])
sum=0
for i in range(0,n):
sum=sum+L[i][i]
print sum
方法二(输入数字):
L=[]
sum = 0.0
for i in range(0,3):
L.append([])
for j in range(0,3):
L[i].append(float(raw_input("input num:\n")))
for i in range(0,3):
sum=sum+L[i][i]
print sum
题目97 兄弟郊游问题 (南阳oj)
时间限制:3000 ms | 内存限制:65535 KB
难度:2
描述
兄弟俩骑车郊游,弟弟先出发,每分钟X米,M分钟后,哥哥带一条狗出发。以每分钟Y米的速度去追弟弟,而狗则以每分钟Z米的速度向弟弟跑去,追上弟弟后又立即返回,直到哥哥追上弟弟时,狗跑了多少米?
输入
第一行输入一个整数N,表示测试数据的组数(N<100)
每组测试数据占一行,是四个正整数,分别为M,X,Y,Z(数据保证X<Y<Z)
输出
输出狗跑的路径,结果保留小数点后两位。
样例输入
1
5 10 15 20
样例输出
200.00
程序代码:
#include <stdio.h>
int main()
{
int a,m,x,y,z;
double n;
scanf("%d",&a);
while(a--)
{
scanf("%d%d%d%d",&m,&x,&y,&z);
n=((m*x)*1.0/(y-x))*z;
printf("%.2lf\n",n);
}
return 0;
}