Python 练习实例20 Python 100例
题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
程序代码:
sum=100
k=200.0
for i in range(1,10):
k=k/2
sum=sum+k
print sum
print k/4.0
Python 练习实例21 Python 100例
题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
程序分析:采取逆向思维的方法,从后往前推断。
程序代码:
k=1
for i in range(1,10):
k=(k+1)*2
print k
Python 练习实例22 Python 100例
题目:两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。
程序代码:
for i in range(ord('x'),ord('z') + 1):
for j in range(ord('x'),ord('z') + 1):
if i != j:
for k in range(ord('x'),ord('z') + 1):
if (i != k) and (j != k):
if (i != ord('x')) and (k != ord('x')) and (k != ord('z')):
print 'a -- %s\t,b -- %s\t,c -- %s\t' % (chr(i),chr(j),chr(k))
题目100 (南阳oj)
1的个数
时间限制:3000 ms | 内存限制:65535 KB
难度:1
描述
小南刚学了二进制,他想知道一个数的二进制表示中有多少个1,你能帮他写一个程序来完成这个任务吗?
输入
第一行输入一个整数N,表示测试数据的组数(1
每组测试数据只有一行,是一个整数M(0=
输出
每组测试输出占一行,输出M的二进制表示中1的个数
样例输入
3
4
6
7
样例输出
1
2
3
程序代码:
#include <stdio.h>
int main()
{
int a,k,sum;
scanf("%d",&k);
while(k--)
{
sum=0;
scanf("%d",&a);
if (a==0)
{
printf("%d\n",sum);
}
else
{
while (a/2!=0)
{
if (a%2==1)
{
sum=sum+1;
}
a=a/2;
}
printf("%d\n",sum+1);
}
}
}
网友评论