我正在努力学习F#所以我访问了Project Euler,目前正在研究问题3.
13195的主要因素是5,7,13和29.
600851475143的最大主要因素是什么?
有些事情需要考虑:
在以下代码中,我标记了此问题涉及的部分.
let isPrime(n:int64) =
let rec check(i:int64) =
i > n / 2L or (n % i <> 0L && check(i + 1L))
check(2L)
let greatestPrimeFactor(n:int64) =
let nextPrime(prime:int64):int64 =
seq { for i = prime + 1L to System.Int64.MaxValue do if isPrime(i) then yield i }
|> Seq.skipWhile(fun v -> n % v <> 0L)
|> Seq.hd
let rec findNextPrimeFactor(number:int64, prime:int64):int64 =
if number = 1L then prime …Run Code Online (Sandbox Code Playgroud) 我想用jQuery选择除myclass之外的所有h1标签.例如,我想选择<h1>,但我不想选择<h1 class ="myclass">
谢谢
因为,具有相同参数但返回值不同的两个方法将无法编译.在不失去清晰度的情况下定义此界面的最佳方法是什么?
public interface IDuplexChannel<T, U>
{
void Send(T value, int timeout = -1);
void Send(U value, int timeout = -1);
bool TrySend(T value, int timeout = -1);
bool TrySend(U value, int timeout = -1);
T Receive(int timeout = -1);
U Receive(int timeout = -1);
bool TryReceive(out T value, int timeout = -1);
bool TryReceive(out U value, int timeout = -1);
}
Run Code Online (Sandbox Code Playgroud)
我考虑使用params,但这会使它使用起来有点尴尬.
public interface IDuplexChannel<T, U>
{
void Send(T value, int timeout = -1);
void Send(U value, int timeout = …Run Code Online (Sandbox Code Playgroud) 项目有多个任务,具有多个任务
项目(1-n) - >任务(1-n) - >作业
"任务"表上的字段是"计划时数".
"分配"表上的字段为"分配小时".
如何在单个查询中获取所有项目的计划时间和分配时间?
它当然不会脱离.NET框架的标准实践.当我看到一个时,a + b我总是假设会创造一些新东西.
static void Main(string[] args)
{
var list = BuildList(ImmutableList<int>.Empty);
var sum = (list + 500).Sum();
Console.WriteLine(sum);
Console.ReadLine();
}
static ImmutableList<int> BuildList(ImmutableList<int> list)
{
if (list.Count < 1000)
{
return BuildList(list + list.Count);
}
return list;
}
Run Code Online (Sandbox Code Playgroud)
更新
请参阅Jon Skeet关于如何在不可变列表上命名方法的帖子.
令人惊讶的回应
我很惊讶地看到这么多答案都认为这是有道理的.原则上我也同意,但是对于我来说,阅读冗长的代码比阅读简洁,代码简洁的人更容易.从我的工作经验来看,他们似乎占多数.
我有:
Dim nVar1 As Long?
Dim nVar2 As Long?
Dim nVarSum As Long?
nVar1 = Nothing
nVar2 = 5
nVarSum = nVar1 + nVar2
Run Code Online (Sandbox Code Playgroud)
我希望结果以nVarSum为5结束,而不是Nothing.
我知道如果你添加一些未知值的东西,你最终会得到"somthing + unknown"或者x + 5总是等于"x + 5"而不是"5",因为你仍然带着那个未知的"x".
但是,在这种情况下,如何才能有效地将未知或Nothing视为零?
谢谢!
(基本上发生的是最终用户向我们发送数据文件,此代码解析该文件,然后将大约15个字段汇总在一起.如果用户将这些字段留空而不是为它们分配零,我需要对待它好像它对于这一个加法操作是零,但所有其余代码需要继续将其视为Nothing值,因为用户实际上没有提交零...他们提交空白或没有)
如何将"my_param"作为一个字符串,以便我可以将其用作我正在尝试创建的密钥?
var my_function = function(my_param) {
var my_hash = {
my_param: "foobar"
}
}
Run Code Online (Sandbox Code Playgroud) 我有一个相对容易的Ajax /动画,我正在添加到客户端站点以在项目之间进行选择以显示为图像.流程如下:
所有这些事情都需要同步发生,但我找不到合适的功能流程.将所有这些步骤附加到用户单击会在动画完成之前淡出pHome,并且在project1 div甚至可见之前触发'puff'效果.
事实上,我有所有这些步骤的功能,它看起来像一个真正的混乱.我要求的是构建这些函数的最佳实践方法,以便它们同步发生(可能除了2和3).就像一个援助,这是我的问题的伪代码:
$('#thumbnail').live('click', function(){
loadXML(thumbnail_id);
makeHMTL(data);
$('pHome').animate({blah}).fadeOut();
$('project1').fadeIn();
$('thumbnail_id').puff();
});
Run Code Online (Sandbox Code Playgroud)
我知道这显然是一种不好的方法 - 但我无法弄清楚如何嵌套/构造函数以使它们全部同步.而且我真的想要一个答案,让我有一些方法可以在将来构建我的功能以避免老鼠窝.教育我!:)
(A Or B) And Not (A And B)
Run Code Online (Sandbox Code Playgroud) 我很难将这个vb代码转换为C#
Dim billingElem As XmlElement = _
CType(xmldoc.SelectSingleNode("/order/billing"), XmlElement)
Run Code Online (Sandbox Code Playgroud)
转换为
XmlElement uinelement =
(XmlElement)xmldoc.GetElementsByTagName("/Users/user/uin");
Run Code Online (Sandbox Code Playgroud)
错误是无法将XMLNodeList实现转换为XmlElement.
谢谢Kanta
我正在寻找使用preg_replace或类似方法来改变的解决方案:
<li id="id1" class="authorlist" />
<li id="id2" class="authorlist" />
<li id="id3" class="authorlist" />
Run Code Online (Sandbox Code Playgroud)
至
<option id="id1" class="authorlist" />
<option id="id2" class="authorlist" />
<option id="id3" class="authorlist" />
Run Code Online (Sandbox Code Playgroud)
我想我的模式是正确的,但不知道如何更换零件......
这是(wordpress)php代码:
$string = wp_list_authors( $args ); //returns list as noted above
$pattern = '<li ([^>]*)';
$replacement = '?????';
echo preg_replace($pattern, $replacement, $string);
Run Code Online (Sandbox Code Playgroud)
建议好吗?
所以我有一个带有属性名称的类型类型.
我正在创建一个类型名称列表,如下所示.
let genres = new Genre()
[ genres.Name <- "Disco";
genres.Name <- "Jazz";
genres.Name <- "Rock"; ] |>ignore
Run Code Online (Sandbox Code Playgroud)
想知道是否有更多的创造这种创造的方式?
c# ×4
.net ×2
f# ×2
javascript ×2
jquery ×2
addition ×1
c#-4.0 ×1
coding-style ×1
css ×1
generics ×1
hash ×1
immutability ×1
nullable ×1
php ×1
preg-replace ×1
primes ×1
regex ×1
runtime ×1
sql ×1
sql-server ×1
t-sql ×1
vb.net ×1