小编jbc*_*oko的帖子

在一个更接近零的有限大小的数组中选择float的有效方法是什么?

对于每个函数,我得到一个有限大小的浮点数,我需要选择它.

所以,如果我有类似的东西

1)

 {-0.02, 0.5, 0.98, -0.15, etc... }
Run Code Online (Sandbox Code Playgroud)

我会从这个列表中选择"-0.02".

2)

 {-0.78, 0.003, 0.1, -1.8, etc... }
Run Code Online (Sandbox Code Playgroud)

现在,我会从这个列表中选择"0.003".

这只是一个例子.在我的真实程序中,我有5-6个小数点浮点数.

c++ math floating-point

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

java if语句没有打破"for循环"

我是java的新手,但我想我在这几周里做得很好.但现在我陷入了这个循环.

这是我班上的一个方法.为了帮助我调试,我在此方法中添加了"myString"字符串和"语法"列表,以演示正在发生的事情并保持简单,至少目前如此.

public void getIndex(){
    String myString = "2 2 + 3 5";
    String[] syntax = myString.split(" ");

    for (int index = 0; index < syntax.length; index++){
        System.out.println("current index is: " + index);
        System.out.println("It has: " + syntax[index]);
        // these print statements are made to help me debug
        if (syntax[index] == "+"){
            indexNeeded = index;
            break;
        }
    }
    System.out.println("Index Needed: " + indexNeeded);   
Run Code Online (Sandbox Code Playgroud)

正如您在循环中看到的那样,我希望在列表元素"语法"为"+"时打破"for循环".(我在这里显示"+"但它可以是实际程序中的任何内容.)

这是输出,运行此方法时:

current index is: 0
It has: 2
current index is: 1
It has: 2
current …
Run Code Online (Sandbox Code Playgroud)

java indexing for-loop if-statement break

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

获取字符串中使用的字母列表的好方法或有效方法是什么

简单地说,如何从Common Lisp中的字符串中获取列表中不重复的字母?

例如:

"common"
-> ("c" "o" "m" "n") or in characters, (#\c #\o #\m #\n)
I'd care less about the order and type, if it is in string or character.

"overflow" -> (o v e r f l w)
"tomtomtom" -> (t o m)
   etc...
Run Code Online (Sandbox Code Playgroud)

我在想的是收集原始字符串的第一个字母,然后使用该函数;

(remove letter string)
Run Code Online (Sandbox Code Playgroud)

收集现在的第一个字母,删除字母串并将其附加到之前收集的字母.这听起来像递归,但如果递归调用会松开以前收集的*letter*s列表,对吗?我也怀疑是否有任何内置功能.

此外,我不想使用set或其中任何一个,因为我想在功能样式中完全执行此操作.

谢谢你的时间.

string common-lisp

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

Common Lisp 中非常奇怪的错误

这实在是让我很头疼

我在文件中编写了以下简单函数。

 (defun find-num (string)
   (if (> (length string) 1)
       (parse-integer (remove (coerce (get-first-letter string)
                                      'character)
                              string))
     ;else
     1))
Run Code Online (Sandbox Code Playgroud)

它的作用是在删除第一个字母后解析字符串“a23”中的数字。我假设只有第一个字符是字母,其余的都是“数字”。

我加载文件,当我尝试运行该函数时,它给我错误,说: 正确的列表不能以“a3”结尾......什么???

但是,当我直接在命令行中复制并粘贴相同的代码时,该函数将按预期工作。

这是什么 ?常见的 Lisp 错误?还是有什么我没有看到的?

 ;; Loading file C:\Users ... (hidden)
 ;; Loaded file C:\Users ... (hidden)
 T
 [2]> (find-num "a3")

 *** - ENDP: A proper list must not end with "a3"
 The following restarts are available:
 ABORT          :R1      Abort main loop
 Break 1 [3]> :a

 [4]> (defun find-num (string)
   (if (> (length string) 1)
  (coerce …
Run Code Online (Sandbox Code Playgroud)

command-line function common-lisp

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