Wczytywanie danych z klawiatury, komentarze, zmienne. Drugi program Wczytywanie danych z klawiatury, komentarze, zmienne.
Drugi program zawiera kilka nowych elementów Komentarz wieloliniowy zaczyna się znakami /* /*------------------------------------------------------------- Program na przeliczanie wysokości podanej W stopach na wysokość w metrach Ćwiczymy tu operacje wczytywania z klawiatury i wypisywania na ekranie -------------------------------------------------------------*/ #include <iostream.h> main() { int stopy; // to do przechowywania // liczby stóp float metry; //do wypisania wyniku float przelicznik = 0.3; //przelicznik: // stopy na metry cout << ”Podaj wysokość w stopach : ”; cin >> stopy; //przyjęcie danej // z klawiatury metry = stopy * przelicznik; //właściwe przeliczenie cout << ”\n”; //to samo co: cout << endl; // ----wypisanie wyników cout << stopy << “ stóp – to jest : “ << metry << ” metrów \n”; } Komentarz wieloliniowy kończy się znakami */ Zaczynają się znakami // i kończą wraz z końcem linijki /* na zielono zaznaczono komentarze Ten typ komentarza nazywany jest wieloliniowym i może zajmować kilka linii*/ //istnieje też drugi rodzaj komentarzy - jednoliniowe
Do czego służą komentarze? Komentarze są ignorowane przez kompilator. – oznacza to, że komputer nie czyta komentarzy Komentarze przydatne dla programisty - można za ich pomocą opisać kod programu. Komentarze ułatwiają późniejsze czytanie programu – zawsze komentuj kod programu. Zagnieżdżanie komentarzy Komentarze wieloliniowe nie mogą być zagnieżdżone. W wieloliniowym komentarzu nie może znajdować się inny komentarz wieloliniwy. Oznacza to, że niedozwolony jest zapis: /* początek komentarza druga linia /* komentarz zagnieżdżony koniec komentarza zagnieżdżonego*/ciąg dalszy pierwszego komentarza koniec pierwszego komentarza*/ /* początek komentarza druga linia /* komentarz zagnieżdżony koniec komentarza zagnieżdżonego*/ciąg dalszy pierwszego komentarza koniec pierwszego komentarza*/ kompilator będzie myślał że komentarz kończy się w momencie pierwszego wystąpienia znaków */, resztę potraktuje jako błąd!
Zmienne Do przechowywania danych służą zmienne. Zmienna to obszar pamięci do przechowywania danych. Definicje dwóch pierwszych pojawiają się w postaci linijek: int stopy; float metry; definicje trzeciej zmiennej wraz z nadaniem jej wartości początkowej widać w linijce: float przelicznik = 0.3; Słowa int i float przed nazwami zmiennych określają ich typ, rodzaj i przedział przechowywanych danych. int – oznacza, że w zmiennej przechowywane będą liczby całkowite float - oznacza, że w zmiennej przechowywane będą liczby rzeczywiste Dla ułatwienia w całym programie oznaczono zmienne kolorem niebieskim. Każda zmienna posiada swoją nazwę, jednak nie wszystkie napisy w języku C++ mogą być nazwami
Nazwy w języku C++ Nazwą w języku C++ może być dowolnie długi ciąg liter łacińskich i cyfr, zaczynający się od litery lub znaku podkreślenia ‘_’. Nazwa nie może zaczynać się od cyfry. Wewnątrz napisów nie mogą występować białe znaki (spacja, tabulacja), ani polskie znaki diaktryczne (ąćęśł...). Małe i wielkie litery są rozróżniane, oznacza to że napisy: zmienna, Zmienna i ZMIENNA, to trzy różne od siebie nazwy w języku C++. Nazwa nie może być identyczna z żadnym ze słów kluczowych w języku C++. Słowa kluczowe to słowa zastrzeżone do specjalnych celów, oto one:
asm do inline short typeid auto double int signed typename bool dynamic_cast long sizeof union break else mutable static unsigned case enum namespace static_cast using catch explicit new struct virtual char extern operator switch void class false private template volatile const float protected this wchar_t const_cast for public throw while continue friend register true default goto reinterpret_cast try delete if return typedef
Które z poniższych napisów nie są nazwami w języku C++ ? Ćwiczenie Które z poniższych napisów nie są nazwami w języku C++ ? Nazwa kolor_czarny 2Nazwa kolor_żółty _57 int_1 auto „Zmienna dwuwyrazowa” Const zmienna_dwuwyrazowa Ala ma kota Zmienna_dwuwyrazowa Ala_ma_kota $waluta zmienna.kolejna godzina_12 zmienna05
Deklaracje i definicje Definicja zmiennej to rezerwacja miejsca w pamięci oraz wprowadzenie jej nazwy i określenie typu. Dopuszcza się rozszerzenie definicji o nadanie zmiennej wartości początkowej, czyli jej zainicjalizowanie. Nie można definiować w programie tej samej zmiennej więcej niż jeden raz. int stopy; float metry; Dopuszcza się rozszerzenie definicji o nadanie zmiennej wartości początkowej, czyli jej zainicjalizowanie. float przelicznik = 0.3; Deklaracja zmiennej służy do oznajmienia, że zmienna taka istnieje i została zdefiniowana w innym miejscu programu. Każda definicja jest więc deklaracją, ale nie na odwrót. W języku C++ każda nazwa musi zostać zadeklarowana zanim zostanie użyta.
Wczytywanie danych z klawiatury Instrukcja cin >> stopy; jest operacją związaną z klawiaturą (ze standardowym urządzeniem wejściowym cin. Instrukcja ta pozwala na wczytywanie z klawiatury. W naszym przypadku wczytujemy z klawiatury liczbę, której wartość zostaje zapisana w zmiennej stopy. lub za pomocą elementu algorytmu: Wprowadź stopy
Prześledźmy działanie programu: Wykonanie programu Wykonanie programu spowoduje wyprowadzenie na ekranie: Podaj wysokość w stopach : 3500 3500 stóp – to jest: 1050 metrów Po wypisaniu na ekranie napisu: Podaj wysokość w stopach :, program oczekuje na wprowadzenie liczby (3500) Wprowadzona przez nas liczba stóp jest przeliczana na metry a następnie wynik w metrach jest wypisywany na ekranie (1050) Prześledźmy działanie programu:
Program Działanie programu metry = 3500 * 0.3; #include <iostream.h> main() { int stopy; float metry; float przelicznik = 0.3; cout << ”Podaj wysokość w stopach : ”; Podaj wysokość w stopach : 3500 cin >> stopy; 3500 stóp – to jest: 1050 metrów metry = stopy * przelicznik; cout << ”\n”; metry = 3500 * 0.3; cout << stopy << “ stóp – to jest : “ << metry << ” metrów \n”; }
endl \n W komentarzu cout << ”\n”; //to samo co: cout << endl; zawarto dodatkową informację. Wynika z niej że zamiast pisać znacznik przejścia do nowej linii ”\n”, równie dobrze można użyć konstrukcji endl (end line). Napisy te są równoważne!
Zadania Zadanie 1 Zamień w programie cout << ”\n”; na cout << endl; Uruchom program i sprawdź jego działanie Zadanie 2 Napisz program wczytujący temperaturę w stopniach celcjusza i przeliczający ją na stopnie w skali kelwina. (kelwin = celcjusz + 278) Pomoc: 1) Zdefiniuj dwie zmienne typu float: kelwin i celcjusz 2) Wczytaj zmienną celcjusz z klawiatury za pomocą instrukcji: cin >> celcjusz; 3) oblicz według podanego wzoru temperaturę w skali kelwina 4) Wypisz na ekranie wyliczona temperaturę Zadanie 3 Skomentuj program przeliczający temperaturę w skali celcjusza na temperaturę w skali w skali kelwina. Zadanie 4 Skomentuj programy z poprzedniej lekcji.