1. 程式人生 > 其它 >c++四種cast

c++四種cast

  1. 題目:
    上小學的時候,小明經常自己發明新演算法。一次,老師出的題目是:1/4​乘以8/5
    小明居然把分子拼接在一起,分母拼接在一起,答案是: 18/45

    老師剛想批評他,轉念一想,這個答案湊巧也對啊,真是見鬼!
    對於分子、分母都是 1 ~ 9 中的一位數的情況,還有哪些算式可以這樣計算呢?
    請寫出所有不同算式的個數(包括題中舉例的)。
    顯然,交換分子分母后,例如:4/1乘以 5/8 是滿足要求的,這算做不同的算式。
    但對於分子分母相同的情況,2/2乘以 3/3這樣的型別太多了,不在計數之列!

  2. 程式碼實現:

點選檢視程式碼
#include <iostream>
using namespace std;
int main() 
{
	int a,b,c,d;
	int ans=0;
	for(a=1;a<=9;a++){                  //a/b*c/d
		for(b=1;b<=9;b++){
			for(c=1;c<=9;c++){
				for(d=1;d<=9;d++){
					if(a!=b&&c!=d){               //防止出現分子分母相同的情況
						if(a*c*(b*10+d)==b*d*(a*10+c)){    //十字相乘法
							ans++;
						}
					}
				}
			}
                }
	}
	cout<<ans;
  // 請在此輸入您的程式碼
  return 0;
}