我正在按照这个伪代码将十进制递归转换为二进制。
findBinary(decimal)
if (decimal == 0)
binary = 0
else
binary = decimal % 2 + 10 * (findBinary(decimal / 2)
Run Code Online (Sandbox Code Playgroud)
这是我尝试过的:
(defn binary [n]
(loop [res 0]
(if (= n 0)
res
(recur (res (* (+ (mod n 2) 10) (binary (quot n 2)))) )
)
)
)
Run Code Online (Sandbox Code Playgroud)
但我收到此错误:
ClassCastException java.lang.Long cannot be cast to clojure.lang.IFn user/binary (form-init9002795692676588773.clj:6)
Run Code Online (Sandbox Code Playgroud)
任何想法如何修复代码以完成任务?
所以我试图解决这个问题,这是我想出的代码:
首先我有一个包函数,接收一个列表并将相同的元素分组到一个向量中。
(defn pack [lst]
(def a [])
(def vect [])
(cond
(empty? lst)
lst
:else
(loop [i 0]
(def r (get lst i))
(def t (get lst (+ i 1)))
(if (= r t)
(def vect (conj vect r))
)
(if (not= r t)
(and (def vect (conj vect r)) (and (def a (conj a vect)) (def vect [])))
)
(if (= i (- (count lst) 1))
a
(recur (inc i))
)
))
)
Run Code Online (Sandbox Code Playgroud)
例如,如果我有这个向量:
(def tes '[a a …
Run Code Online (Sandbox Code Playgroud) 我有这个函数可以将字典制作成json对象并将它们写入json文件:
def somethin(a1,a2,a3):
someDict = {"a": a1,
"b": a2,
"c": a3
}
json_obj = json.dumps(someDict)
file = open('somefile.json', 'a',encoding="utf-8")
file.write(json_obj)
Run Code Online (Sandbox Code Playgroud)
文件中的第一个写入元素不会出现任何问题,但是在将第二个 json 对象添加到文件中后,我得到: SyntaxError: JSON.parse: 在我制作的 json 文件的JSON 数据之后出现意外的非空白字符:
{
"a": 1,
"b":2,
"c": 3
}
{
"a1": 1,
"b1":2,
"c1": 3
}
Run Code Online (Sandbox Code Playgroud)
如何修改 json 输出文件的代码使其正确?
我试图通过按下flutter应用程序上的按钮从我的机器中托管的闪存服务器获取一个字符串,因此每次按下按钮时文本都会更改为烧瓶字符串。烧瓶服务器:
颤动应用程序:
当我按下按钮时,我希望得到新的字符串,但得到问题标题的错误,我知道这是一个“类型”错误,但不确定我在哪里给出“字符串”值,那么如何修复我的代码呢?任何帮助表示赞赏!
完整错误(如果有帮助):https ://textuploader.com/tdhk0
这是我的颤振代码(request.dart 和 main.dar):
//request dart-------------------------
import 'package:http/http.dart';
Future getData(url) async {
Response response = await get(url);
return response.body;
}
//main.dart-------------------------------
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:passg/request.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('Change Text Dynamically on Button Click')
),
body: Center(
child: UpdateText()
)
)
);
}
}
class UpdateText extends StatefulWidget {
UpdateTextState createState() => UpdateTextState();
}
class …
Run Code Online (Sandbox Code Playgroud)