1 / 20

Podstawy programowania II

Zachodniopomorska Szkoła Biznesu. Podstawy programowania II. Wykład 1: Repetytorium podstaw języka C++. Typy danych liczbowych. Stałe - przykłady. 100 // int 3000000000U // unsigned int 1L // long 0x100 // int (hex), 256 50UL // unsigned long 1.23234 // double

inoke
Download Presentation

Podstawy programowania II

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Zachodniopomorska Szkoła Biznesu Podstawy programowania II Wykład 1: Repetytorium podstaw języka C++

  2. Typy danych liczbowych Podstawy programowania - Podstawy obliczeń w C++

  3. Stałe - przykłady • 100 // int • 3000000000U // unsigned int • 1L // long • 0x100 // int (hex), 256 • 50UL // unsigned long • 1.23234 // double • 26. // double, 26.0 • .5 // double, 0.5 • -1.434e25 // double, -1.434*10^25 • 1e6 // double, 1 mln • 5e-1 // double, 0.5 • 'A' // char (kod 65) • '\65' // char ('A') Podstawy programowania - Podstawy obliczeń w C++

  4. Operatory • Arytmetyczne: + - (jednoarg.), + - * / % • Logiczne: ! && || • Bitowe: ~ & | >> << • Relacji: == != < > <= >= • Działania z przypisaniem:-= *= /= %= &= |= ^= <<= >>= ++ -- (pre), ++ -- (post) • Konwersja: (typ) • sizeof • Warunkowy: ? : • , Podstawy programowania - Podstawy obliczeń w C++

  5. Zmienne • Deklaracja zmiennej: typ nazwa; int x; typ nazwa1, nazwa2 ... ; int x, y, z; • Inicjalizacja typ nazwa=wyrażenie; int x=5;int x, y=2, z=10, a; • Korzystanie ze zmiennej • Zapis danych: Nazwa zmiennej po lewej operatora = i pochodnych (np. +=) • Odczyt danych:Użycie nazwy zmiennej oznacza odczytanie zapisanej wartości Podstawy programowania - Podstawy obliczeń w C++

  6. Typ wyniku działań arytmetycznych short x=0; float f=1.5; short nic; nic + 2 // short + int = int (???) 10 + 2.5 // int + double = double (12.5) f + 10.0 // float + double = double (11.5) f + 1 // float + int = float (2.5) 2 * 1L // int + long = long (2) 10 && 0 // nonzero && zero = zero (int:0) 0 || -4 // zero || nonzero = nonzero (int:1) ! 0 // ! zero = nonzero (int:1) 10!=5 // prawda = int (1) 2>2 // fałsz = int (0) (int) f // odcięcie ułamka = int (1) Podstawy programowania - Podstawy obliczeń w C++

  7. Instrukcje (1) • Wyrażenie (obliczenia)x=a*b; a+=(x>3); i++; a+1; • Warunkowa (if) - dwie wersjeif (delta==0) x0=-b/(2*a);if (alfa) x=1/sin(alfa); else x=0; • Wielokrotny wybór (switch)switch (ile) { case 1: cout << "jeden"; break; case 2: cout << "dwa"; break; else: cout << "dużo!"; }; Podstawy programowania - Podstawy obliczeń w C++

  8. Instrukcje (2) • Pętle • while: while (x<0) x++; • do ... while: do cin >> kostka; while (x<1 || x>6); • for: for (i=0; i<10; i++) cout << i;for (;;) Podstawy programowania - Podstawy obliczeń w C++

  9. Instrukcje (3) • Skoki • break - wyskok z pętli lub switch • continue - przejście do następnej iteracji pętli • return - wyskok z funkcji • goto - skok do etykiety (nie zalecane) • Instrukcja pusta; • Instrukcja blokowa{ instrukcje;} Podstawy programowania - Podstawy obliczeń w C++

  10. Funkcje • Definicja funkcji typ nazwa(parametry) { deklaracje lokalne instrukcje } • Prototyp funkcji typ nazwa(parametry); • Zwracanie wartości przez funkcję return;return wyrażenie; • Wywołanie funkcji nazwa(wyrażenia odpowiadające parametrom); Podstawy programowania - Podstawy obliczeń w C++

  11. Przykłady funkcji float pi() {return 3.1415; } float Delta(float a, float b, float c) {return b*b-4*a*c; // użycie parametrów } void main() {float aa=1,bb=3,cc=-2, r=2; float P x; P=pi() * r*r;if (Delta(aa,bb,cc+1)==0) x=-b/(2*a); } Podstawy programowania - Podstawy obliczeń w C++

  12. Zmienne globalne i lokalne • Zmienne deklarowane poza funkcjami są globalne • Istnieją przez cały czas pracy programu • Dostępne są we wszystkich funkcjach programu • Inicjalizowane są zerami • Zmienne deklarowane wewnątrz funkcji są lokalne • Istnieją tylko podczas pracy danej funkcji • Są dostępne wyłącznie wewnątrz danej funkcji • Ich wartość początkowa jest przypadkowa • Zmienna lokalna może mieć tę samą nazwę co istniejąca zmienna globalna, ale wówczas przesłania ją • Parametry funkcji są zmiennymi lokalnymi tej funkcji • Można utworzyć zmienne wewnątrz każdego bloku { }.Ich czas życia i dostępność ogranicza się tylko do tego bloku. Podstawy programowania - Podstawy obliczeń w C++

  13. Funkcja main void main() { } int main() {return 0; } void main(int argc, char *argv[]) { for (int i=0; i<argc; i++) cout << argv[i] << endl; } Podstawy programowania - Podstawy obliczeń w C++

  14. Typy złożone - tablice • Tworzymy je gdy wartości tego samego typu i o podobnym charakterze. Indeksowanie zawsze zaczyna się od 0. • jednowymiarowa (wektor) deklaracja: typ nazwa[rozmiar]; int tab[5]; dostęp: nazwa[indeks] cout << tab[3]; • dwuwymiarowa (macierz) deklaracja: typ nazwa[wierszy][kolumn]; int tab[30][5]; dostęp: nazwa[wiersz][kolumna] cout << tab[1][3]; 5 5 30 ... Podstawy programowania - Podstawy obliczeń w C++

  15. Typy złożone - struktury (rekordy) • Tworzymy je gdy chcemy aby zbudować grupę danych o różnych typach opisującą jeden obiekt. Każda z danych składowych to pole, któremu nadaje się nazwę. • Deklaracja: struct NazwaStruktury{ typ pole1; typ pole2; ...} obiekt; NazwaStruktury rekord; • Dostęp do pól: cout << rekord.pole2; obiekt ... pole1: pole2: rekord ... pole1: pole2: Podstawy programowania - Podstawy obliczeń w C++

  16. Typy złożone - tablice rekordów • Typowa struktura tabeli, pozwalająca przechowywać informacje na temat wielu obiektów opisywanych tym samym zestawem parametrów • Deklaracja: struct NazwaStr{ typ pole1; typ pole2; ...} tabela[rozmiar]; // druga tablica:NazwaStr tab2[rozmiar2]; • Dostęp do pól: cout << tabela[2].pole1; tabela 0: 1: 2: ... pole1: pole2: ... pole1: pole2: ... pole1: pole2: ... Podstawy programowania - Podstawy obliczeń w C++

  17. Wskaźniki • Są zmiennymi pozwalającymi zapamiętać adres informacji określonego typu • Deklaracja: typ * nazwa; int *wsk; • Nadanie wartości: int a, tab[10], *wsk;wsk=&a;wsk=tab;wsk=tab+3; • Odczytanie wskazywanej wartości: cout << *wsk << wsk[0] << wsk[2]; • Nazwa tablicy jest wskaźnikiem na jej zerowy element Podstawy programowania - Podstawy obliczeń w C++

  18. Znaki i ciągi znaków (stringi) • Znak w C++ jest daną typu char i reprezentuje go jednobajtowy kod ASCII.Można dzięki temu traktować znak również jako liczbę całkowitą • Stałe znakowe pisze się w apostrofach (np. '\65', 'z') • Ciąg znaków reprezentowany przez wskaźnik do pierwszego znaku (czyli typ char *), przy czym zakłada się, że na końcu ciągu znajduje się znak '\0' (kod: 0) • Zmienna przeznaczona do przechowywania ciągu znaków musi mieć postać tablicy znaków: char nazwisko[20]; // max. 19 liter i '\0' • Nazwa tablicy (np. nazwisko) jest więc typu char * • Stałe tekstowe pisze się w cudzysłowiu (np. "C++"), stała taka jest interpretowana również jako typ char * Podstawy programowania - Podstawy obliczeń w C++

  19. Preprocesor i biblioteki • Najważniejsze dyrektywy:#include <iostream.h>#include "moje.h"#define PI 3.1415#define MAIN#define BLAD { cout << "Błąd!\n"; return; } • Pozostałe dyrektywy:#undef#if #ifdef #ifndef#else #elif #endif#line #error#pragma Podstawy programowania - Podstawy obliczeń w C++

  20. Komentarze • Stanowią informację dla osoby przeglądającej kod (także dla jego twórcy), kompilator je ignoruje • Są bardzo pożądanym składnikiem dobrze napisanego kodu źródłowego • Jako komentarz rozumiane są • Wszystkie znaki od znaków // do końca linii • Wszystkie znaki pomiędzy znakami /* i */Pozwala to stworzyć komentarz zarówno na kilka linii, jak i w środku jednej linii. • Bardzo często wykorzystuje się je do "odwracalnego" usuwania fragmentów kodu, co pozwala na ich szybkie odtworzenie. Podstawy programowania - Podstawy obliczeń w C++

More Related