• HDU 1283 最简单的计算机


    最简单的计算机

    Problem Description

    一个名叫是PigHeadThree的研究组织设计了一台实验用的计算机,命名为PpMm。PpMm只能执行简单的六种命令A,B,C,D,E,F;只有二个内存M1,M2;三个寄存器R1,R2,R3。六种命令的含义如下:
    命令A:将内存M1的数据装到寄存器R1中;
    命令B:将内存M2的数据装到寄存器R2中;
    命令C:将寄存器R3的数据装到内存M1中;
    命令D:将寄存器R3的数据装到内存M2中;
    命令E:将寄存器R1中的数据和寄存器R2中的数据相加,结果放到寄存器R3中;
    命令F:将寄存器R1中的数据和寄存器R2中的数据相减,结果放到寄存器R3中。
    你的任务是:设计一个程序模拟PpMm的运行。

    Input

    有若干组,每组有2行,第一行是2个整数,分别表示M1和M2中的初始内容;第二行是一串长度不超过200的由大写字母A到F组成的命令串,命令串的含义如上所述。

    Output

    对应每一组的输入,输出只有一行,二个整数,分别表示M1,M2的内容;其中M1和M2之间用逗号隔开。

    其他说明:R1,R2,R3的初始值为0,所有中间结果都在-2^31和2^31之间。

    Sample Input

    100 288
    ABECED
    876356 321456
    ABECAEDBECAF

    Sample Output

    388,388
    2717080,1519268

    解题报告

    没什么需要讲解的,模拟的方法

    #include<stdio.h>
    int main()
    {
        long r1,r2,r3,m1,m2;
        int i,n;
        char str[200];
        while(scanf("%ld%ld",&m1,&m2)!=EOF){
            scanf("%s",&str);
            i=0;
            r1=r2=r3=0;
            while(str[i]!=''){
                switch (str[i])
                {
                    case 'A':
                    r1=m1;
                    break;
                    case 'B':
                    r2=m2;
                    break;
                    case 'C':
                    m1=r3;
                    break;
                    case 'D':
                    m2=r3;
                    break;
                    case 'E':
                    r3=r1+r2;
                    break;
                    case 'F':
                    r3=r1-r2;
                    break;
                    default: break;
                }
                //printf("m1=%d m2=%d r1=%d r2=%d r3=%d
    ",m1,m2,r1,r2,r3);
                i++;
            }
            printf("%d,%d
    ",m1,m2);
        }
        return 0;
    }
    
  • 相关阅读:
    JavaScript
    Eclipse修改类的注释模板
    无法解析指定的连接标识符的解决办法
    MySQL
    IDEA修改SQL语句的关键字大写
    iframe中操作后通过后台返回脚本,让父窗口刷新
    IDEA启动Tomcat控制台打印乱码
    Eclipse如何打开文件的磁盘位置
    深度学习目标检测算法综述(论文和代码)
    关于并发,异步,非阻塞(python)疑惑的一些资料解答
  • 原文地址:https://www.cnblogs.com/cunchen/p/9464217.html
Copyright © 2020-2023  润新知