二進制轉換成十進制、及約瑟夫問題

1、int main()
 /*輸入的是2進制數*/
{
 
 char buf[32]; /*輸入的二進制 不超過32位*/
 gets(buf);
    int num =0;
 for (int i=0; i<strlen(buf) ; i++)
 {
  num +=(int)pow(2,strlen(buf)-i-1)*(buf[i]-48);
 }
 printf("二進制數%s的十進制形式是: %d\n",buf,num);
 
 return 0;
}

bin2shi.cpp

2、

#include<iostream>

using namespace std;

int f(int n, int m)
{
    int r = 0;
   
    for(int i = 2; i <= n; i++)
        r = (r + m) % i;
 
    return r + 1;//這是因爲日常生活中編號總是從1開始
}

int main()
{
    cout<<"最後剩下的編號是:"<<f(4, 3)<<endl;
   
    system("pause");
    return 0;
}

netsyf.cpp
發佈了39 篇原創文章 · 獲贊 9 · 訪問量 11萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章