基本程式題目

問題:求一數f是否為某數N的因數,也就是說,f是否能整除N。

做法:整除的判斷即檢查N被f除後,餘數是否為0。在C/C++中,求餘數的運算子為%。

程式範例解答

#include <iostream>
using namespace std;
void main(){
  float f, N;
  cout<<"請輸入N(被除數)與f(除數)"
  cin>>f >> n;
  if(N%f == 0){
    cout<< cout << f << "可整除" << N << endl;
  } 
  system("pause");
}

閏年的判斷(易)

問題:公元年哪時候二月會閏月?

做法:判斷y是否被400整除,可以被4整除不被100整除。

程式範例解答

#include <iostream>
using namespace std;
void main(){
  int year;
  cout<<"請輸入年份"
  cin>>year;
  if(year%=400==0)||(year%4==0&&year%100!=0){
    cout<< "西元" << year << "年是閏年" << endl;
  }
  else{
    cout<< "西元" << year << "年是閏年" << endl;
  } 
  system("pause");
}

因數的判斷(易)

質數的判斷(中)

問題:一數N若為質數,N的因數僅有1與本身數N,也就是說若2~(N-1)中有N之因數(可整除N),那麼N即不是質數。

做法: 1.使用一個布林變數isPrime,初值為true(此布林變數表示N是否為質數,程式一開始先認定N為質數)

(迴圈開始) 2.使用一迴圈敘述,使用迭代變數i,下限值為2,上限值為N-1,若i可整除N,設定isPrime為false,跳出迴圈 (迴圈結束)

3.判斷isPrime為true輸出N為"質數",否則,輸出輸出N為"不是質數"。

程式範例解答

#include <iostream>
using namespace std;
void main(){
  int N = 11;
  int i = 2;
  bool isPrime = true;
  while (i <= N-1 && isPrime){
    if (N % i == 0) {
    isPrime = false;
    break;
  }
  i++;
  }
  if (isPrime){
    cout << "是質數";
  } else {
    cout << "不是質數";
  }
  system("pause");
}

results matching ""

    No results matching ""