zoukankan      html  css  js  c++  java
  • POJ C程序设计进阶 编程题#2:角谷猜想

    编程题#2:角谷猜想

    来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩。)

    注意: 总时间限制: 1000ms 内存限制: 65536kB

    描述

    所谓角谷猜想,是指对于任意一个正整数,如果是奇数,则乘3加1,如果是偶数,则除以2,得到的结果再按照上述规则重复处理,最终总能够得到1。如,假定初始整数为5,计算过程分别为16、8、4、2、1。

    程序要求输入一个整数,将经过处理得到1的过程输出来。

    输入

    一个正整数

    输出

    从输入整数到1的步骤,每一步为一行,每一部中描述计算过程,假定输入为7,则输出为:

    7*3+1=22

    22/2=11

    11*3+1=34

    34/2=17

    17*3+1=52

    52/2=26

    26/2=13

    13*3+1=40

    40/2=20

    20/2=10

    10/2=5

    5*3+1=16

    16/2=8

    8/2=4

    4/2=2

    2/2=1

    最后一行输出"End",如果输入为1,直接输出"End" 

    样例输入

    5

    样例输出

    5*3+1=16

    16/2=8

    8/2=4

    4/2=2

    2/2=1

    End


     1 #include<iostream>
     2 #include<stdio.h>
     3 using namespace std;
     4 
     5 void fun(int a);
     6 int main()
     7 {
     8     int a;
     9     cin >> a;
    10     fun(a);
    11     return 0;
    12 }
    13 
    14 void fun(int a)
    15 {
    16     if (a == 1) {
    17         cout << "End";
    18     }
    19     else if (a % 2 == 1) {
    20         int result = a * 3 + 1;
    21         printf("%d*3+1=%d
    ", a, result);
    22         fun(result);
    23     }
    24     else {
    25         int result = a / 2;
    26         printf("%d/2=%d
    ", a, result);
    27         fun(result);
    28     } 
    29 }
  • 相关阅读:
    文件操作
    POJO对象建立规则
    第三章 Java 的基本程序设计结构
    第一章 Java程序设计概述
    Dao层设计
    业务功能迭代开发过程
    mysql 修改语法格式
    自定义 Java 异常 (Exception)
    接口开发注意事项-个人总结
    intelliJ IDEA springMVC 搭建配置
  • 原文地址:https://www.cnblogs.com/dagon/p/4710479.html
Copyright © 2011-2022 走看看