黑马程序员技术交流社区
标题:
求平方根
[打印本页]
作者:
万大述
时间:
2013-6-25 18:05
标题:
求平方根
想求一个数的平方根返回并判断其是否为整数返回的方法,于是写了如下代码,熟料程序出错,说我使用了未赋值的变量j,代码如下,求指导。
static void Main(string[] args)
{
int test = 17;
double result=0;
string chineseOutput="";//该变量用来将结果转换为汉字在屏幕输出。
if(SquareJudge(test,out result))//调用方法并用返回值作为条件判断。
{
chineseOutput="是一个整数"; //结果转成汉字。
}
else
{
chineseOutput="不是一个整数";
}
Console.WriteLine(test+"的平方根:"+result+chineseOutput); /*从输出可看出result中的值已改变*/
Console.ReadKey();
}
// <summary>
/// 求一个数的平方根返回并判断其是否为整数返回。
/// </summary>
/// <param name="i">传入一个数</param>
/// <param name="j">传出传入数的平方根</param>
/// <returns>判断平方根是否为整数</returns>
static bool SquareJudge(int i,out double j)
{
int temp=0;
if(j>=0)
{
j = Math.Sqrt(i);//Math.Sqrt方法调用。
}
temp = (int)j;
if (j>temp)
{
return false;
}
else
{
return true;
}
}
作者:
黄文超
时间:
2013-6-25 18:22
在函数中给j一个初始值就可以了
j = 0;
int temp = 0;
复制代码
作者:
surce2012
时间:
2013-6-25 19:06
本帖最后由 surce2012 于 2013-6-25 19:09 编辑
问题多多!
1 命名方式大小写
2 参数传递
3 一个功能只能有一个返回值,不能同时返回boolean和double类型
4 单词拼写错误
5 API你也没仔细看 Console类中根本没有哪些方法你怎么找来的
......
总之很多问题 不要心急 慢慢学
不过英语不错!
我改了一点你看看
class Sqrt
{
public static void main(String[] args)
{
int test = 16;
String chineseOutput;//该变量用来将结果转换为汉字在屏幕输出。
double sqr = sqrt(test);
if(squareJudge(sqr))//调用方法并用返回值作为条件判断。
chineseOutput="是一个整数"; //结果转成汉字。
else
chineseOutput="不是一个整数";
System.out.println(test+"的平方根:"+sqr+chineseOutput); /*从输出可看出result中的值已改变*/
}
// <summary>
/// 求一个数的平方根返回并判断其是否为整数返回。
/// </summary>
/// <param name="i">传入一个数</param>
/// <param name="j">传出传入数的平方根</param>
/// <returns>判断平方根是否为整数</returns>
static double sqrt(int x)
{
return Math.sqrt(x);
}
static boolean squareJudge(double sqr)
{
int x = (int)sqr;
if (x==sqr)
{
return true;
}
else
{
return false;
}
}
}
复制代码
作者:
万大述
时间:
2013-6-26 09:50
{:soso_e113:} 谢谢
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2