Tôi đang cố gắng giải quyết một câu hỏi trong Project Euler, tạo chuỗi mã hóa cho đến 4 triệu và thêm số chẵn trong chuỗi, đây rõ ràng là nhiệm vụ rất dễ và tôi trả lời nó trong 2 phút,Tạo chuỗi Fibonacci sử dụng toán tử lambda
int result=2;
int first=1;
int second=2;
int i=2;
while (i < 4000000)
{
i = first + second;
if (i % 2 == 0)
{
result += i;
}
first = second;
second = i;
}
Console.WriteLine(result);
nhưng tôi muốn làm điều đó bằng cách sử dụng biểu thức lambda
Nỗ lực của tôi sẽ như
DelType del = (oldVal, newVal) =>((oldVal==0?1:newVal + newVal==1?2:oldVal+newVal) % 2 == 0) ? oldVal + newVal : 0;
int a=del(0, 1);
Vui lòng đề nghị làm thế nào để có được điều này thực hiện
Tôi khuyên bạn nên thử làm điều đó trong câu lệnh LINQ. Đó là một chút dễ đọc hơn và sau đó bạn có thể dễ dàng chuyển đổi nó thành cú pháp lambda. –