Mnożąc dwa pozytywne Int32 zwraca błędną, negatywną odpowiedź?

Jestem naprawdę zakłopotany tym. Koduję w języku C # dla Windows Phone 7.5; Biorę tekst z pola tekstowego, parsując go do tablicy, a następnie konwertując każdy element tablicy na Int32 za pomocą Convert.ToInt32, a następnie uruchamiając uzyskane wartości Int32 za pomocą serii obliczeń matematycznych, mnożąc i dodając wartości Int32 do zakodowanych liczb (wszystko zależy od tego, co zostało wybrane w interfejsie użytkownika).

Wszystko jest dobrze, dopóki nie wykonam obliczeń i pomnoży je razem: otrzymuję liczbę ujemną z mnożenia dwóch liczb dodatnich! To jedyny raz, gdy wykonuję obliczenia z obydwoma liczbami pochodzącymi z metody wykorzystującej funkcję Convert.ToInt32. Kiedy są dodawane, odejmowane lub nawet dzielone, matematyka wychodzi poprawnie. Ale kiedy są mnożone, nie ma kości. Matematyka jest całkowicie błędna; Podwójnie sprawdziłem matematykę w LibreOffice Calc i nie pasuje. Podczas przechodzenia przez kod wszystko jest poprawne, dopóki liczby pochodzące z metody wykorzystującej funkcję Convert.ToInt32 nie zostaną pomnożone razem. Jakieś pomysły?

questionAnswers(3)

yourAnswerToTheQuestion