C# – program 02 cz.2

W tej notatce planuję odkryć kolejną częśc mojego mini-programiku. W między czasie porobiłam sporo blędów więc będzie co opisywać. Teraz zajmę się metodami, które mają przeliczać stopnie na różne skale (może nie jest to po kolei, ale nazwijmy to modułowo).

Przeliczanie Celcjuszy na pozostałe skale

Metody przeliczania Celcjuszy

Przeliczanie Kelvinów na pozostałe skale

Przeliczanie Kelvinów na inne skale

Przeliczanie Farenheitów na pozostałe skale

Metody przeliczania Farenheitów na inne skale

Oczywiście jest tu błąd, który mi się pojawił kiedy metoda dokonała przeliczeń – i dotyczy to wszystkich. No ja na to nie wpadłam… Chodzi o dzielenie (zobacz różnice przy ostatniej metodzie – (5/9) i (5.0/9.0) gdzie już poprawiłam to co trzeba).

Różnica jest w tym, że w zapisie np. 1 / 2 wynikiem jest 0 ponieważ mamy int 1 / int 2 (liczbę calkowitą 1 przez liczbę całkowitą 2 co daje nam wynik przed przecinkiem).

W związku z tym wszystkie metody zmodyfikowałam w poniższy sposób:

Metoda zmiany z Celcjusza

Metoda zmiany z Kelvinów

Metoda zmiany z Farenheitów

Jak widać wszedzie gdzie występuje dzielenie dodałam .0 żeby było to mnożenie double. Nie musiałam stosować tego w mianowniku i liczniku ponieważ wystarczy przez taki double dzielić i wynik domyślnie przyjmuje zapis double. Można oczywiście też zrobić tak jak w żółtym prostokącie.

Więcej na temat arytmetyki wprowadza Cezary Walenciuk.

No to zobacz rezultat:

Rezultat metod

Z pomocą przychodzi Custom Numeric Format Strings.

W liniach wypisujących komunikat dopisuję:

Console.WriteLine(„Temperatura wynosi:” + String.Format(„{0:N2}”,inFarenh) + ” F”); 

Cały kod przedstawiam tutaj.

 

Pierwsza cześć programu znajduje się tu.

Ten wpis został opublikowany w kategorii programowanie i oznaczony tagami , . Dodaj zakładkę do bezpośredniego odnośnika.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *