Hello, the essence of the question is – I do not understand why the result of multiplication is 0:

```
public void multiply ()
{
Double [] Numbers = New Double [9999999];
Double Res = 1.0;
for (int i = 0;; i ++)
{
Console.WriteLine ("Please Enter A Number:");
String A = Console.ReadLine ();
Double.tryParse (A, Out Numbers [i]);
res * = numbers [i];
if (a == "quit")
{
Console.WriteLine ($ "Result is {res}");
Break;
}
}
}
```

I made the same code to add, only in the RES variable I recorded 0.0, but it worked correctly.

Please explain what error is: D

## Answer 1, Authority 100%

Because if `a `

is not a number, then in `numbers [i] `

turns out to be zero.

```
if (double.tryparse (a, out numbers [i]))
res * = numbers [i];
```

## Answer 2, Authority 100%

Answer from @igor is unconditionally correct, I will only add that if you still remove all the damnings without changing the behavior of the method, the code will turn out:

```
public void multiply ()
{
Double Res = 1.0;
While (True)
{
Console.Write ("Please Enter A Number:");
String A = Console.ReadLine ();
If (Double.tryParse (A, Out Double Number))
{
Res * = Number;
}
ELSE if (a == "quit")
{
Console.WriteLine ($ "Result is {res}");
Break;
}
}
}
```

This code will consume about 9999999 times less memory.