[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[数值计算] 【已解决】批处理如何判断一个数是否属于某一等比数列中的一个

如题,如何判断一个数是否属于某一等比数列中的一项?
要求只考虑公比q大于1,且公比、首项都为整数的情况。

设首项a1、公比q都已知

比如数列:已知首项a1=2,公比q=3,求12是否属于该数列

请高手给出代码,谢谢!

有些思路可以参考:
先用该数除以首项,若除不尽,则不属于数列
若能除尽,用除得的结果与公比q比较,若相等,则属于;若小于,则不属于;若大于,则用它再除以公比,用所得结果再与公比比较,如此循环。

[ 本帖最后由 wangshuping42 于 2009-5-16 18:11 编辑 ]
1

评分人数

    • Batcher: 感谢主动给标题标注[已解决]字样PB + 2

原帖由 Batcher 于 2009-5-12 19:54 发表
你的思路挺好的啊,为何不自己先尝试一下呢?
遇到具体问题再问,这样才有助于提高批处理水平,何必要别人给出现成的代码呢?



思路是简单,写起来很麻烦,因为DOS貌似不支持浮点运算,总是取整数。比如,判断5是否属于首项为1,公比为2的数列中的一项。5除以2,取整得2,等于公比,判断属于该数列,但事实却不属于!!
我真正接触批处理还没一个星期,写了好久都没搞定,实在烦了、晕了,只好求助于各位高手了。

TOP

原帖由 inittab 于 2009-5-13 10:50 发表
根据等比数列的公式:an=a1*q^(n-1)得出代码:试试是否符合楼主的要求,不考虑公比q为负的情况@echo off&setlocal enabledelayedexpansion
:begin
set "a1="&set /p a1=请输入首数a1:&if "!a1!"=="" goto :eof
set ...


代码有误啊,试试首项为1,公比为2,检验8。

TOP

返回列表