summaryrefslogtreecommitdiff
path: root/comp/work/8/parity.c
diff options
context:
space:
mode:
Diffstat (limited to 'comp/work/8/parity.c')
-rwxr-xr-xcomp/work/8/parity.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/comp/work/8/parity.c b/comp/work/8/parity.c
new file mode 100755
index 0000000..a87d07a
--- /dev/null
+++ b/comp/work/8/parity.c
@@ -0,0 +1,34 @@
+#include<stdio.h>
+#include<string.h>
+#include<stdlib.h>
+
+int main(){
+ char num[8];
+ int parity;
+ scanf("%s", num);
+ char number[8];
+ for (int i = 0; i < 8; i++){
+ if (i == 7){
+ if (num[i] == '1'){
+ parity = 1;
+ }else{
+ parity = 0;
+ }
+ }else{
+ if (num[i] == '1'){
+ number[i] = 1;
+ }else{
+ number[i] = 0;
+ }
+ }
+ }
+ int number_of_ones = 0;
+ for (int i = 0; i < 8; i++){
+ if (number[i] == 1){
+ number_of_ones++;
+ }
+ }
+ if (number_of_ones % 2 == parity){
+ printf("bad\n");
+ }
+}