# Iteration# Conditional Statements# Basic Output

a147 - Print it all

🔗 前往 ZeroJudge 原題

題目描述

題目要求輸出所有小於給定整數 n 且不被 7 整除的正整數,以空格分隔。輸入 0 時結束程式。

解題思路

此題為簡單的迭代與條件判斷問題。程式讀取一個整數 n 作為上限,然後使用一個迴圈從 1 迭代到 n-1。在迴圈內部,使用條件判斷式檢查當前數字是否能被 7 整除。如果不能被 7 整除,則將該數字輸出,並加上一個空格。當輸入為 0 時,程式結束。

複雜度分析

  • 時間複雜度: O(n)
  • 空間複雜度: O(1)

程式碼

#include <iostream>

using namespace std;

int main(){
	
	long long int a;
	
	while(cin >> a ){
		if(a>0){
			for(int i=1;i<a;i++){
				if(i%7!=0){
					cout << i << " ";
				}
			}
			cout << endl;
		}
	}
}

Discussion