Treść książki
Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
Stałeizmienne
19
2.3Stałeizmienne
Obliczeniazlistingu2.1wykonywaliśmynaliterałachnumerycznych.Wprogramie
pojawiająsiękonkretnewartości,aletrudnozorientowaćsię,czymsąposzczególne
liczby.Skądmamywiedzieć,czymjest0.3783?Takieliterałynumeryczneniejasnego
pochodzeniaprogramiścinazywajączasamiliczbamimagicznymi.Wpoprawianiu
czytelnościkodupomagająstałeizmienne,którezastępujątakieliczbyopisowymi
nazwami.
GdyjużzrozumiemykorzyścipłynącezżycianaMarsie,naszymnastępnym
pytaniembędziezapewne:ileczasusiętamleci?Najlepiejbyłobypodróżować
zprędkościąświatła.Światłoporuszasięwpróżnizestałąprędkością,coułatwi
namobliczenia.NatomiastodległośćmiędzyZiemiąaMarsemistotniesięzmienia,
wzależnościodtego,wktórymmiejscuswoichorbitokołosłonecznychznajdująsię
tedwieplanety.
Poniższylistingwprowadzadwanowesłowakluczowe:constivar,któresłużądo
deklarowaniaodpowiednio:stałychizmiennych.
Listing2.3Podróżowaniezprędkościąświatła–lightspeed.go
//IleczasusięlecinaMarsa?
packagemain
import"fmt"
funcmain()
{
constlightSpeed=299792
//km/s
var
distance
=
56000000
//km
fmt.Println(distance/lightSpeed,
"sekund")
Wyświetli:186sekund
distance=401000000
fmt.Println(distance/lightSpeed,
"sekund")
Wyświetli:1337sekund
}
Wpiszlisting2.3wGoPlaygroundikliknijna„Run”.Achtaprędkośćświatła!
Gdybynaszesamochodyjąrozwijały,dziecinigdyniepytałyby:„Dalekojeszcze?”.
Pierwszeobliczeniezakłada,żeMarsiZiemiasądosiebiemaksymalniezbliżone.
Wdeklaracjizmiennej
distance
przypisujemyjejwartość56000000km.Później
zmiennejdistanceprzypiszemywartość401000000km,którabędzieodpowiadać
położeniuplanetpoprzeciwnychstronachSłońca.Tęodległośćpoliczymytylko
poto,żebyzrobićwrażenienapodróżniku,boprzecieżlotnaskrótyprzezSłońce
możeniebyćzbytprzyjemny.