数据结构算法之数学问题和狼追兔问题,java还没学完这里就用c++实现,不难请看代码。
//该程序简单实现4个数能组成多少个不同的三位数(不能重复),并且输出这些数。
#include "stdafx.h"
#include<iostream>
using namespace std;
int main()
{
int bw,sw,gw;
int count=0;
for(bw=1;bw<=4;bw++)
{
for(sw=1;sw<=4;sw++)
{
if(sw!=bw)//若十位不等于百位则可以继续放个位,否则+1继续判断(这里的if循环不需要else,因为不满足就递进+1,不需要执行其他语句,而且这里不满足情况不是break跳出循环而是递+1判断下一个数)
{
for(gw=1;gw<=4;gw++)
{
if((gw!=sw)&&(gw!=bw))//若个位不等于百位和十位时候,才可以放进去,否则继续+1判断
{
cout<<bw<<" "<<sw<<" "<<gw<<""<<endl;
count++;
}
}
}
}
}
cout<<"总共有"<<count<<"种"<<endl;
system("pause");
return 0;
}