小编dot*_*00b的帖子

为什么返回空而不是列表本身?

第4章,HtDP.

注意:我也在其他问题中看到了这一点.

是出于清晰的原因还是算法的原因,我不知道,基本情况返回空而不是列表本身是空的.

例:

; List-of-numbers -> List-of-numbers
; compute the weekly wages for all given weekly hours
(define (wage* alon)
  (cond
    [(empty? alon) empty] ;<---- see here
    [else (cons (wage (first alon)) (wage* (rest alon)))]))

; Number -> Number
; compute the wage for h hours of work
(define (wage h)
  (* 12 h))
Run Code Online (Sandbox Code Playgroud)

我认为这是正确的.

; List-of-numbers -> List-of-numbers
; compute the weekly wages for all given weekly hours
(define (wage* alon)
  (cond
    [(empty? alon) alon] ;<---- see here …
Run Code Online (Sandbox Code Playgroud)

scheme racket

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

在Scala中舍入double或float的最佳方法是什么?

  // Purpose: Determine attendance based on ticket-price
  // Example: attendance(4.90) == 135
  def attendance: Double => Int = {
    (ticket_price: Double) => {
        120 + math.ceil(150 * (5.00 - ticket_price)).toInt
    }
  }                                               //> attendance: => Double => Int
  attendance(4.90)                                //> res0: Int = 135
  assert(attendance(4.90) == 135)
Run Code Online (Sandbox Code Playgroud)

基本上断言正在爆炸,出席人数正在返回134而不是135.所以我把math.ceil扔到它并且它起作用了.但我只是想知道这是否是最佳/适当/惯用的方式.

对于那些想知道这些代码来自何处的人:出勤代码

scala rounding-error

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

通过sql参数传递IS NOT NULL

我在sql server 2008中有一个查询.我想要从下拉列表中传递一个值或者IS NOT NULL(所以它显示所有的值).处理这个问题的最佳方法是什么?我知道你不能将字符串"IS NOT NULL"传递给参数.我有点卡在这个上面.

ASP.NET 3.5和SQL Server 2008.

sql asp.net

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

如何摆脱"文件附近的语法无效.期待'.',ID或QUOTED_ID"?

我正在尝试在第三方数据库中更改模式.它太老了.除了两条线外,一切都已移动.

ALTER SCHEMA dbo TRANSFER db_owner.File

ALTER SCHEMA dbo TRANSFER db_owner.User
Run Code Online (Sandbox Code Playgroud)

现在我看到File和User是SQL关键字.这就是我收到错误的原因.有没有办法告诉SQL忽略它们作为关键字?它可以运行吗?

t-sql schema sql-server-2008

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

为什么OR语句给出了我不想要的记录?

这个查询:

select dept, job
from organizations
where (dept = 'Marketing' and job <> 'Sam Wise')
or    (dept = 'Marketing' and job <> 'The Precious')
Run Code Online (Sandbox Code Playgroud)

保留给予记录的工作显示'The Precious'的时候不应该.但是如果我以这种方式编写查询:

select dept, job
from organizations
where (dept = 'Marketing' and job <> 'Sam Wise')
and   (dept = 'Marketing' and job <> 'The Precious')
Run Code Online (Sandbox Code Playgroud)

然后我得到了正确的记录.没有'Sam Wise'或'The Precious'的工作.所以我想知道我对T-SQL中的AND和OR的理解是否混淆或者我的sql服务器是不是很糟糕.

简而言之,为什么第一个查询不会删除所有将"Sam Wise"或"The Precious"作为作业的记录,但第二个查询是?

sql t-sql sql-server sql-server-2005

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

在VS 2010工具箱中是不是应该有MVC 3控件?

我已经安装了ASP.NET MVC3和Tools Update,但是在工具箱中没有看到任何MVC3控件.

如果他们应该在那里,我该如何添加它们?

如果没有,为什么不呢?

asp.net-mvc visual-studio-2010 asp.net-mvc-3

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

为什么此表达式给我一个函数体错误?

(define (subtract-1 n)
  (string-append "Number is: " (number->string n))
  (cond
    [(= n 0) "All done!"]
    [else (subtract-1(- n 1))]))
Run Code Online (Sandbox Code Playgroud)

我不断收到错误消息:define:对于函数体,只期望一个表达式,但是发现了1个多余的部分。我不明白为什么要得到这个。

对自己的提示:使用DrRacket时,将语言设置为BSL可能会使Racket命令在编译时出错。

scheme racket racket-student-languages

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

我的导航标签应该在我的部分标签中吗?

我是这个“语义标记”的新手。但我不知道这是否正确。简而言之,在这种情况下,我不知道何时使用 section 与 nav 标签。它应该是一个或另一个,根本没有,还是完全按照我的意思?我说的是 id = sidebar 的部分。

<body>
    <div class="page">
        <header>
            <table id="formHeader" style="width:100%;text-align:center;">
                <tr>
                    <td></td>
                </tr>
            </table>
            <nav>
                <ul id="menu">
                    <li>@Html.ActionLink("Home", "Index", "Home")</li>
                    <li>@Html.ActionLink("About", "About", "Home")</li>
                </ul>
            </nav>
        </header>
        <section id="sidebar">
            @*<nav>*@
                Go To...
                <ul>
                    <li>First Move to Moon</li>
                    <li>First Move to Moon</li>                    
                </ul>
            @*</nav>*@   
        </section>
        <section id="main">        
            @RenderBody()                              
        </section>
        <footer>
        </footer>
    </div>
</body>
Run Code Online (Sandbox Code Playgroud)

html nav

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

如何在Racket中改进这种辅助功能?

我正在使用BSL语言在HtDP,第4章中工作.

我正在处理的问题是:

练习136:如果你运行main,按空格键(开枪),等待很长时间,镜头从画布上消失.但是,当您关闭世界画布时,结果是一个仍包含此隐形镜头的世界.

设计一个替代的tock函数,它不仅可以每个时钟刻度移动一个像素,还可以消除那些坐标位于画布上方的像素.提示:您可能希望考虑为递归cond子句设计辅助函数.

我想出的解决方案如下(在剧透中).但是,我觉得我在做一些多余的事情.基本上我的辅助功能的应用不太正确.

(define (main w0)
  (big-bang w0
            (on-tick ticking)
            (on-key fire-key)
            (to-draw to-render)))

(define HEIGHT 100)
(define WIDTH 80)
(define TURRET-X-POS (/ WIDTH 2))
(define BKGRND (empty-scene WIDTH HEIGHT))
(define SHOT-IMG (triangle 4 "solid" "red"))

(define (to-render w0)
  (cond
    [(empty? w0) BKGRND]
    [else (place-image SHOT-IMG TURRET-X-POS (first w0) (to-render (rest w0)))]))

(define (fire-key w0 ke)
  (cond
    [(key=? ke " ") (cons HEIGHT w0)]
    [else w0]))

(define (ticking w0)
  (cond
   [(empty? w0) empty]
   [(empty? (only-inbound-shots w0)) empty]
   [else …
Run Code Online (Sandbox Code Playgroud)

scheme racket

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