小编LC1*_*382的帖子

使用二进制搜索在C中查找数字的平方根

试图使用二进制搜索计算出数字的平方根,但是我的实现不起作用,我不知道为什么 - 任何帮助表示赞赏,谢谢

继承我的代码.'end'是我希望平方根的数字的值

 while(start <= end) {
   float mid = ((start + end) / 2);
   printf("\nhalving mid");

   if(mid * mid == end){
      sqrt = mid;
      printf("\nsqrt = %d", sqrt);
   }
   if(mid * mid < end){
     start = mid + 1;
     sqrt = mid; 
     printf("\nsqrt: %d", sqrt);
   }
   else{
     start = mid - 1;
   }
 }
Run Code Online (Sandbox Code Playgroud)

c algorithm math

3
推荐指数
1
解决办法
6306
查看次数

如何在java中读取json文件?

我正在尝试从文件中读取这个json数据

[{"name":"Luke","score":50},{"name":"Ryan","score":70}]
Run Code Online (Sandbox Code Playgroud)

码:

JsonParser parser = new JsonParser();

try{

Object obj = parser.parse(new FileReader("C:/Users/user/Documents/HighscoresJSON.json"));
JSONObject jsonObject = (JSONObject) obj;

String usersName = (String) jsonObject.get("name");
System.out.println("Name of user: " + usersName);

int usersScore = (int) jsonObject.get("score");
System.out.println("Score: " + usersScore);
Run Code Online (Sandbox Code Playgroud)

这给了我错误:

com.google.gson.JsonArray cannot be cast to org.json.JSONObject

java json

0
推荐指数
1
解决办法
9164
查看次数

C++ for循环语法

我是C的新手,并不理解这种类型的for循环语法.

for(int i(9), j(0); i > j; i--, j++)
cout << i;
Run Code Online (Sandbox Code Playgroud)

这给出了98765的结果,但为什么呢?

我习惯了这样的循环:

for(int i = 9, int j = 0; i>j; i--, j++){
 System.out.println(i);
}
Run Code Online (Sandbox Code Playgroud)

我看到我被初始化为9,j被初始化为0,但它是如何得到一个那么大的数字?

c++ for-loop

-4
推荐指数
1
解决办法
381
查看次数

标签 统计

algorithm ×1

c ×1

c++ ×1

for-loop ×1

java ×1

json ×1

math ×1