标签:这一 lib 使用 oop 控制 图灵 stream 开始 int
1 #include "stdafx.h" 2 #include <iostream> 3 #include <stdio.h> 4 #include <stdlib.h> 5 #include <memory.h> 6 /* run this program using the console pauser or add your own getch, system("pause") or input loop */ 7 8 int main(int argc, char *argv[]) { 9 int i = 100, j = 1, k;//循环控制变量 10 int a[200+1];//限定是100个但我们这里使用200个变量来模似无限tape 11 int flag = 0;//进位状态与输入状态控制器 12 memset(a, 0, sizeof(a));//初始化数组 13 for (i = 100; i >= 1; i--) {//机器开始 14 scanf_s("%d", &a[i]);//扫描第一个方格里的数据 15 16 if (a[i] == 2) {//判断是否到行尾(这一块无关图灵机) 17 i++; 18 break; 19 } 20 else { a[i] = a[i] % 2; }//鉴于可能遇到非二进制数 21 22 } 23 for (j = i; j <= 100; j++) {//这里我们从右往左扫描 24 if (a[j] == 0 && !flag) {//看看是否是0 25 a[j] = 1;//0改1 26 flag = 1;//进位状态改输入态 27 break; 28 }else a[j] = 0;//1改0 29 } 30 if (!flag)a[101] = 1;//特殊情况:从头到尾没一0出现 往前补1实现进位 31 for (k=flag?100:101; k >= i; k--){ 32 printf("%d ",a[k]);//输出 33 } 34 return 0; 35 }
标签:这一 lib 使用 oop 控制 图灵 stream 开始 int
原文地址:http://www.cnblogs.com/yyfai/p/7641450.html