变换-哎,我也就郁闷了,怎么简单的题自己竟然找不见错误。

问题描述

哎,我也就郁闷了,怎么简单的题自己竟然找不见错误。

问题描述:
对于每一个大于1的正整数,如果它是奇数,则将其乘3加1,如果它是偶数,则将除以2,如此循环,最终将得到1。输出数据包含从这个整数到1的按照叙拉古猜想变换的序列,每行一个数字。

 #include <stdio.h>

int main()
{
    int a;
    scanf("%d",&a);
    while(1)
    {
        if( a%2 == 0 )
        {
            a = a / 2;
            printf("%dn",a);
        }
        if( a%2 != 0 )
        {
            a = a * 3 + 1;
            printf("%dn",a);
        }
        if( a == 1 )    break;
    }
    return 0;
}

解决方案

 // ConsoleApplication1.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "math.h"

int _tmain(int argc, _TCHAR* argv[])
{
    int a;
    scanf_s("%d", &a);
    while (1)
    {
        if (a == 1)
            break;
        if (a % 2 == 0)
        {
            a = a / 2;
            printf("%dn", a);
            continue;
        }
        if (a % 2 != 0)
        {
            a = a * 3 + 1;
            printf("%dn", a);
            continue;
        }
    }
    return 0;
}

解决方案二:

a == 1这个要写在前面,否则当a = 2被除以2得到a =1的时候,它又被*3+1了。

解决方案三:

也可以把判断写在前面
while (a !=1)

时间: 2024-12-09 16:53:26

变换-哎,我也就郁闷了,怎么简单的题自己竟然找不见错误。的相关文章

java 打印问题 很郁闷 啊!

问题描述 publicvoidatuoPaint(Graphicsg,PageFormatpf){while(currtPoint<(pf.getImageableX()+pf.getImageableHeight()))//就是此循环{if(LoadData(pf))break;//for(PageElementsFatherps:getlPageElements()){//System.out.println(((DynamicText)ps).locationX+""+((

看度谷赛,文章第三天在谷歌有所上升了

谷歌 13号看到度谷赛活动,当天下午就在自己网站上弄了个页面,第二天早上看就给百度和GG都收录了,看来这两个搜索引擎的收录速度都是非常快的,在这两天排在第一位的都基本稳定在那里了,但这两天排在谷歌第一位的网站(度谷: See what people are saying right now on Technorati)好像打不开,不知道其他人可以打开不? 今天排在百度的第一位居然是站长网发的那篇活动文章了,如果到结束那天是他们第一的话那这个奖是给谁呢?哈哈,有意思了.昨天站长网解封了,值得庆贺一

FW MX 2004教程(9):图像变换

教程 图像变换技术在网页中经常被用到,即当鼠标移动到某图像或按钮上时,会触发另一个图形的显示.在Fireworks中,图像变换的制作原理就是使"帧"面板中某帧中的图形对象与来自任何帧的图象进行交换,从而达到在网页浏览时产生图形变换的效果. 1.简单的图像变换 在Fireworks中制作简单的图像变换,就是把"帧"面板中第1帧里的对象与第2帧中的图像进行交换. 我们先制作或引入一个按钮的一般状态图,选中图形后单击鼠标右键,从弹出菜单中选择"插入切片"

有关Flash AS3编程的一些总结

编程 最近用AS3写一些项目,在编程过程中,遇到不少问题,同时也有一些收获和心得.现在贴出来希望对大家在AS3编程有一些帮助.如果你发现有说得不对的地方,你可以指出来,大家一起来讨论. 1.AS3的强制类型转换 我之前一直以为是没有这个功能的,而最近在看一些文档,发现这个功能是有的.目前总结下来有两种写法: var loader:URLLoader = URLLoader(event.target);不知道这种写法是借鉴那种编程语言,反正我没有见过.补充这个语法说明:http://livedoc

ghost后硬盘不见了、无法启动且找不到硬盘的解决方法

今天帮朋友重装一台笔记本电脑(ASUS X401A)的操作系统,是把Win7重装回Winxp,本来吧,因为ghost的出现,感觉重装系统已经是小菜一碟了,打算在30分钟内结束战斗,所以就风风火火地开始了. 开始得非常顺利,进入ghost,然后选择xp sp3的.gho文件,然后是把原先的C盘写文件覆盖,接着是重启,一切貌似都在掌握中... 接着,杯具就出现了.复制完文件到C盘后重启时无法进入系统,原先描述得不清不楚的,大概的意思是有硬件发生了改动导致无法启动吧,然后我就郁闷了. 第一反应是以为之

ubuntu 12.04为何不能使用chkconfig管理服务

今天在虚拟机里做DRBD实验,使用chkconfig管理服务的时候,出现了问题. root@node2:/root# chkconfig --list | grep drbd drbd                      0:off  1:off  2:off  3:off  4:off  5:off  6:off root@node2:/root# chkconfig drbd on /sbin/insserv: No such file or directory 这是ubuntu 12

windows server 2003安装配置全体验

xp的IIS老是在运行一段时间后就莫名其妙的出现页面乱码,再加上对xp有点厌倦了,受不了server 2003的诱惑,于是我就去学院用服务器把windows server 2003 Enterprise Edition 下了下来.又用吴老师的移动硬盘拷回来用我的Benq Combo刻好. 一咬牙,重新启动,设置成光盘启动.D-->Enter-->L.... 一路下来,和win 2000,xp的安装过程差不多,就是在序列号这里出了点小问题,我在记序列号的时候不小心把8记成了B,连输入几次都不正确

对C语言中递归算法的深入解析

   C通过运行时堆栈支持递归函数的实现.递归函数就是直接或间接调用自身的函数.      许多教科书都把计算机阶乘和菲波那契数列用来说明递归,非常不幸我们可爱的著名的老潭老师的<C语言程序设计>一书中就是从阶乘的计算开始的函数递归.导 致读过这本经书的同学们,看到阶乘计算第一个想法就是递归.但是在阶乘的计算里,递归并没有提供任何优越之处.在菲波那契数列中,它的效率更是低的非常恐 怖.      这里有一个简单的程序,可用于说明递归.程序的目的是把一个整数从二进制形式转换为可打印的字符形式.例

IIS7中Ajax.AjaxMethod无效的原因及解决方法

使用Ajax.AjaxMethod方法在asp.net的服务器下一切正常,用iis的时候,js中总是cs类找不到,具体的解决方法如下,遇到类似情况的朋友可以参考下   最近做用Ajax.AjaxMethod方法的时候,在asp.net的服务器下一切正常,用iis的时候,js中总是cs类找不到,我就郁闷了,折腾了大半天,终于找到错误原因了. 因 为我发布网站用的是iis7,所以在web.config位置文件 中<system.webServer><handlers>></