輸出僅第一位和末位為已設定位的數字
此任務是列印給定的 n 個數字,其有兩處已設定位,多於 2 或少於 2 的都不行。
計算機語言中已設定的位值為 1,未設定的位值為 0
Input: value of num=5 Output: 1 3 5 As 1 is equivalent to 1 in binary 3 is equivalent to 11 in binary 5 is equivalent to 101 in binary
演算法
START Step 1 -> declare variable as unsigned int num=5 and int i=1 Step 2 -> print i Step 3 -> Loop For i=3 and i<=num and ++i IF (!(i-1 & i-2)) Print i End End STOP
示例
#include <stdio.h>
int main(int argc, char const *argv[]) {
unsigned int num = 5;
int i = 1;
printf("%d ", i); //printing first number 1
for (i = 3; i <= num; ++i) {
if(!(i-1 & i-2)) //performing and operation on i-1 and i-2
printf("%d ", i);
}
return 0;
}輸出
如果我們執行以上程式,它將生成以下輸出
1 3 5
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP