Hirdetés

Új hozzászólás Aktív témák

  • Dinter

    addikt

    Fibonacci-sorozatos program, mivel nagy számok, ezért stringként összeadva (direkt ezzel a módszerrel).

    Ez miért dob ArgumentOutOfRange kivételt a .Substringnél? Az aug mit rövidít?

    static void Main(string[] args)
    {
    var carry = false;
    var result = String.Empty;
    List<string> numbers=new List<string>();
    numbers.Add("1");
    numbers.Add("1");
    int count = 1;

    while(numbers[count].Length<2000){
    string num1 = numbers[count - 1];
    string num2 = numbers[count];
    for (int i = numbers[count-1].Length - 1; i >= 0; i--)
    {
    var augend = Convert.ToInt32(num1.Substring(i, 1));
    var addend = Convert.ToInt32(num2.Substring(i, 1));
    var sum = augend + addend;
    sum += (carry ? 1 : 0);
    carry = false;
    if (sum > 9)
    {
    carry = true;
    sum -= 10;
    }

    result = sum.ToString();
    }

    if (carry)
    {
    result = "1" + result;
    }

    numbers.Add(result);
    count++;
    }

Új hozzászólás Aktív témák