#44379: C++ 適合初學者的解法(沒那麼複雜)


1121228@stu.wghs.tp.edu.tw (你知道我是誰嗎!!??)

學校 : 臺北市私立薇閣高級中學
編號 : 266561
來源 : [60.248.154.139]
最後登入時間 :
2024-12-23 13:02:35
a132. 10931 - Parity -- UVa10931 | From: [218.172.22.193] | 發表日期 : 2024-12-01 11:33

#include <bits/stdc++.h>
using namespace std;

int main() {
    
    int l;
    while (cin >> l && l != 0) {
        bitset < 32 > a1(l);
        int a[32];
        for (int i = 0; i < 32; i++) {
            a[i] = a1[i];
        }
        cout << endl;
        int n = 0, m = 31;
        for (int i = 0; i < 32; i++) {
            if (a[i] == 1) {
                n++;
            }
        }
        cout << "The parity of ";
        while (m >= 0 && a[m] == 0) {
            m--;
        }
        for (int i = m; i >= 0; i--) {
            cout << a[i];
        }
        cout << " is " << n << " (mod 2)." << endl;
    }
    
    return 0;
}

 
#44380: Re: C++ 適合初學者的解法(沒那麼複雜)


1121228@stu.wghs.tp.edu.tw (你知道我是誰嗎!!??)

學校 : 臺北市私立薇閣高級中學
編號 : 266561
來源 : [60.248.154.139]
最後登入時間 :
2024-12-23 13:02:35
a132. 10931 - Parity -- UVa10931 | From: [218.172.22.193] | 發表日期 : 2024-12-01 11:45

#include
using namespace std;

int main() {
    
    int l;
    while (cin >> l && l != 0) {
        bitset < 32 > a1(l);
        int a[32];
        for (int i = 0; i < 32; i++) {
            a[i] = a1[i];
        }
        cout << endl;
        int n = 0, m = 31;
        for (int i = 0; i < 32; i++) {
            if (a[i] == 1) {
                n++;
            }
        }
        cout << "The parity of ";
        while (m >= 0 && a[m] == 0) {
            m--;
        }
        for (int i = m; i >= 0; i--) {
            cout << a[i];
        }
        cout << " is " << n << " (mod 2)." << endl;
    }
    
    return 0;
}

#include <bits/stdc++.h>
using namespace std;

int main() {
    
    int l;
    while (cin >> l && l != 0) {
        bitset < 32 > a1(l);    // 轉2進位
        int n = 0, m = 31;
        for (int i = 0; i < 32; i++) {
            if (a[i] == 1) {
                n++;
            }
        }
        cout << "The parity of ";
        while (m >= 0 && a[m] == 0) {
            m--;
        }
        for (int i = m; i >= 0; i--) {
            cout << a[i];
        }
        cout << " is " << n << " (mod 2)." << endl;
    }
    
    return 0;
}

這是修改過的,把不需要的程式刪掉了



 
ZeroJudge Forum