Polsko – Japońska Wyższa Szkoła Technik Komputerowych

Slides:



Advertisements
Podobne prezentacje
I część 1.
Advertisements

27/09/ Języki programowania 1 Piotr Górczyński Operatory.
Klasa listy jednokierunkowej Przekazywanie parametrów do funkcji
Operatory.
Reprezentacja danych w komputerze
Filip Andrzejewski Remigiusz Chiluta
Języki programowania C++
Opisy funkcji Adres strony WWW : html /html_node/libc_528.html.
Sprawdzian Zadanie 1: Napisz program obliczający pole i obwód prostokąta. Wymiary pobierz z klawiatury od użytkownika. Zadanie 2: Napisz program sprawdzający,
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 4: Wyrażenia i operatory. Podstawowe instrukcje języka.
Wskaźniki. Definiowanie wskaźników Wskaźnik może wskazywać na obiekt dowolnego typu. int * w; char * Wsk_Znak; float * Wskaz_Real; Przykłady: Wskaźnik.
Sprawy organizacyjne 1. Zasady zaliczenia przedmiotu
PODSTAWY JĘZYKA PHP 1. czym jest 2. składnia 3. wersje 4. bazy danych
Podstawy programowania
#include #include main () { cout
Równania i Nierówności czyli:
Programowanie obiektowe W2
Polsko – Japońska Wyższa Szkoła Technik Komputerowych
Matematyka.
„Są plusy dodatnie i plusy ujemne.”
O relacjach i algorytmach
Podstawy informatyki (4)
Podstawy programowania w języku C i C++
Podstawy informatyki 2013/2014
Informatyka I Wykład 5 OPERATORY Priorytety i kolejność obliczeń
Wskaźnik może wskazywać na obiekt dowolnego typu. int * w; char * Wsk_Znak; float * Wskaz_Float; Przykład: Wskaźnik przechowuje adres obiektu wskazanego.
Wyrażenia algebraiczne
Wyrażenia algebraiczne
Podstawy programowania
I. Informacje podstawowe
Zadanie Dev C++.
Przekazywanie argumentów
Pętla do ... While C++ Źródło:
Programowanie strukturalne i obiektowe
STEROWANIE Ale nie tylko
Programowanie strukturalne i obiektowe
Instrukcja for. Instrukcja warunkowa mgr inż. Agata Pacek.
Instrukcja warunkowa i wyboru
Składnia pętli do … while do instrukcja while (wyrażenie); gdzie: instrukcja – instrukcja pojedyncza lub blok instrukcji wyrażenie – wyrażenie przyjmujące.
  ELEMENTY JĘZYKA JAVA komentarze w Javie, słowa kluczowe i operatory, proste typy danych, tablice, podstawowy zestaw instrukcji.
Podstawy programowania
Programowanie strukturalne i obiektowe C++
Programowanie strukturalne i obiektowe C++
Programowanie strukturalne i obiektowe C++
Bramki logiczne i układy kombinatoryczne
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski 1 informatyka +
Programowanie strukturalne i obiektowe C++
MS-Excel – formuły i funkcje
Programowanie strukturalne i obiektowe C++ Przeładowanie operatorów Robert Nowak.
K URS JĘZYKA C++ – WYKŁAD 1 ( ) Łagodne wprowadzenie do języka C++
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Programowanie strukturalne i obiektowe C++ Powtórzenie wiadomości z C++ Robert Nowak.
1 struktura #include struct complex {double real; double img; } alfa; struct complex beta={2.0,2.0}, delta; struct complex multi (struct complex x, struct.
Zasady arytmetyki dwójkowej
Wstęp do programowania wykład 3 Typy wyliczeniowe, tablice.
Wstęp do programowania Wykład 2 Dane, instrukcje, program.
1 Opisy funkcji Adres strony WWW : html (należy odszukać hyperlink Function Index) (
Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania Prezentacja przygotowana w oparciu o materiały Danuty Szeligi i Pawła Jerzego Matuszyka Podstawy.
Programowanie I Rekurencja.
STOS. STL (ang. Standard Template Library) jest to biblioteka zawierająca algorytmy, pojemniki, iteratory oraz inne konstrukcje w formie szablonów, gotowe.
Pakiety numeryczne Operatory, instrukcje sterujące, operacje bitowe Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania.
C++ mgr inż. Tomasz Turba Politechnika Opolska 2016.
 Formuła to wyrażenie algebraiczne (wzór) określające jakie operacje ma wykonać program na danych. Może ona zawierać liczby, łańcuchy znaków, funkcje,
C++ mgr inż. Tomasz Turba Politechnika Opolska 2016.
Sposoby zapisu algorytmu
Pojęcia podstawowe Algebra Boole’a … Tadeusz Łuba ZCB 1.
Rozwiązywanie nierówności I-go stopnia z jedną niewiadomą
Wstęp do Informatyki - Wykład 6
Opisy funkcji Adres strony WWW :
Język C++ Operatory Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania Prezentacja przygotowana w oparciu o materiały Danuty Szeligi i Pawła.
Zapis prezentacji:

Polsko – Japońska Wyższa Szkoła Technik Komputerowych Operatory

Operatory arytmetyczne Polsko – Japońska Wyższa Szkoła Technik Komputerowych Operatory arytmetyczne Operator Działanie Przykład + dodawanie a = b + c; - odejmowanie a = b - c; * mnożenie a = b * c; / dzielenie a = b / c; % reszta z dzielenia (modulo) a = b % c; Przykłady: 25 / 7  3 25 / 7.  3.571428 35. / 5  7 1 / 4  0 19 % 6  1 0 % 5  0 18 % 6  0 dr inż. Olga Choreń

Operatory relacji Operator Działanie Przykład < mniejszy a < b Polsko – Japońska Wyższa Szkoła Technik Komputerowych Operatory relacji Operator Działanie Przykład < mniejszy a < b <= mniejszy lub równy a <= b > większy a > b >= większy lub równy a >= b == równy a = = b != nie równy a != b wszystkie operatory relacji są dwuargumentowe; jeśli relacja jest prawdziwa, to jej wartością jest 1; w przeciwnym przypadku wartością relacji jest 0. dr inż. Olga Choreń

Operatory logiczne Operator Działanie Przykład ! negacja ! a Polsko – Japońska Wyższa Szkoła Technik Komputerowych Operatory logiczne Operator Działanie Przykład ! negacja ! a && koniunkcja (iloczyn logiczny) a && b || alternatywa (suma logiczna) a || b wyrażenia połączone operatorami && i || zawsze są wartościowane od strony lewej do prawej; kompilator oblicza wartość wyrażenia dotąd, dopóki na pewno nie wie jaki będzie wynik. ( a == 0 ) && ( m == 5 ) && ( x > 23 ) dr inż. Olga Choreń

Operatory bitowe Operator Działanie Przykład Polsko – Japońska Wyższa Szkoła Technik Komputerowych Operatory bitowe Operator Działanie Przykład & bitowa koniunkcja a = b & c; | bitowa alternatywa a = b | c; ^ bitowa różnica symetryczna a = b ^ c; << przesunięcie w lewo a = b << c; >> przesunięcie w prawo a = b >> c; ~ bitowa negacja a = ~b dr inż. Olga Choreń

Inkrementacja i dekrementacja Polsko – Japońska Wyższa Szkoła Technik Komputerowych Inkrementacja i dekrementacja inkrementacja - dodanie 1; dekrementacje - odjęcie 1; Przykład: i = i + 1; // i ++ j = j - 1; // j - - operatory inkrementacji i dekrementacji mogą występować w dwóch odmianach: przedrostkowej i przyrostkowej; i++ ; i-- ; ++i ; --i ; operator przedrostkowy jest obliczany przed przypisaniem; operator przyrostkowy jest obliczany po przypisaniu. dr inż. Olga Choreń

i = 10 j = 10 i = 11 j = 11 j = 12 i = 12 Przykład: Polsko – Japońska Wyższa Szkoła Technik Komputerowych Przykład: #include " stdafx " #include <iostream> #include <conio.h> using namespace std; int main() { int i=10, j=10; cout << "i = " << i << endl << "j = " << j << endl; i++; ++j; cout << "i = " << i++ << endl << "j = " << ++j << endl; return 0; } i = 10 j = 10 i = 11 j = 11 j = 12 i = 12 dr inż. Olga Choreń

Pozostałe operatory przypisania Polsko – Japońska Wyższa Szkoła Technik Komputerowych Pozostałe operatory przypisania Operator Zapis skrócony Zapis rozwinięty += a += b; a = a + b; - = a - = b; a = a - b; *= a *= b; a = a * b; /= a /= b; a = a / b; %= a %= b; a = a % b; <<= a <<= b; a = a << b; >>= a >>= b; a = a >> b; &= a &= b; a = a & b; |= a |= b; a = a | b; ^= a ^= b; a = a ^ b; dr inż. Olga Choreń

( warunek ) ? wartość_1 : wartość_2 Polsko – Japońska Wyższa Szkoła Technik Komputerowych Wyrażenie warunkowe ( warunek ) ? wartość_1 : wartość_2 Przykład: ( i > 5) ? 15 : 20 c = ( x > y ) ? 17 : 56; dr inż. Olga Choreń

Operator sizeof Operator rzutowania sizeof (nazwa_typu) Polsko – Japońska Wyższa Szkoła Technik Komputerowych Operator sizeof sizeof (nazwa_typu) sizeof (nazwa_obiektu) Operator rzutowania (nazwa_typu) obiekt lub nazwa_typu (obiekt) Przykład: int a = 85; char b; b = (char) a; // b = ‘U’ dr inż. Olga Choreń

Priorytety i łączność operatorów Polsko – Japońska Wyższa Szkoła Technik Komputerowych Priorytety i łączność operatorów Operator Priorytet Łączność Działanie :: 17 L zasięg globalny P zasięg klasy .-> 16 dostęp do składowej klasy [ ] indeksowanie ( ) wywołanie funkcji sizeof ( ) rozmiar typu/obiektu ++ 15 inkrementacja - - dekrementacja ~ negacja bitowa ! negacja logiczna - + minus/plus jednoargumentowy & adres argumentu/referencja * dostęp pośredni new alokacja pamięci dr inż. Olga Choreń

Priorytety i łączność operatorów Polsko – Japońska Wyższa Szkoła Technik Komputerowych Priorytety i łączność operatorów Operator Priorytet Łączność Działanie delete 15 P zwalnianie pamięci delete[ ] usuwanie tablicy dynamicznej ( ) konwersja typu (rzutowanie) .* 14 L dostęp do składowej ->* * / % 13 mnożenie, dzielenie, modulo - + 12 odejmowanie, dodawanie << >> 11 przesuwanie w lewo/ w prawo < <= 10 mniejsze/ nie większe > >= większe/nie mniejsze == != 9 równe/nie równe & 8 koniunkcja bitowa ^ 7 bitowa różnica symetryczna | 6 alternatywa bitowa dr inż. Olga Choreń

Priorytety i łączność operatorów Polsko – Japońska Wyższa Szkoła Technik Komputerowych Priorytety i łączność operatorów Operator Priorytet Łączność Działanie && 5 L koniunkcja logiczna || 4 alternatywa logiczna ? : 3 wyrażenie warunkowe = 2 P przypisanie *= mnożenie i przypisanie /= dzielenie i przypisanie %= modulo i przypisanie += dodanie i przypisanie -= odjęcie i przypisanie <<= przesunięcie w lewo i przypisanie >>= przesunięcie w prawo i przypisanie &= koniunkcja bitowa i przypisanie ^= różnica symetryczna i przypisanie |= alternatywa bitowa i przypisanie , 1 ustalenie kolejności dr inż. Olga Choreń

Priorytety i łączność operatorów Polsko – Japońska Wyższa Szkoła Technik Komputerowych Priorytety i łączność operatorów Priorytet oznacza kolejność przykładania operatorów do ich argumentów. Jeżeli wyrażenie zawiera różne operatory, to wartościowanie wyrażenia przebiega w kolejności, którą określa priorytet operatorów. Można wymusić inną kolejność wartościowania, zamykając wyrażenie lub część wyrażenia w nawiasach okrągłych. Operatory języka C++ są prawo- lub lewostronnie łączne. Oznacza to, że jeżeli w wyrażeniu są dwa operatory o jednakowym priorytecie, to najpierw jest wykonywany operator prawy (lewy). dr inż. Olga Choreń

32-bitowe typy danych: Typ Rozmiar (bit) Zakres unsigned char 8 Polsko – Japońska Wyższa Szkoła Technik Komputerowych 32-bitowe typy danych: Typ Rozmiar (bit) Zakres unsigned char 8 0...255 char -128...127 enum 32 0...4294967295 unsigned int 0... 4294967295 short int 16 -32768...32767 int -2147483648... 2147483647 unsigned long long float 3.410-38... 3.41038 double 64 1.710-308... 1.710308 long double 80 3.410-4932... 1.1104932 dr inż. Olga Choreń

Funkcje Program Funk_1 int main ( ) { instrukcja_1; Funk_1( ); Polsko – Japońska Wyższa Szkoła Technik Komputerowych Funkcje Funk_3 int main ( ) { instrukcja_1; Funk_1( ); instrukcja_2; Funk_2( ); instrukcja_3; Funk_3 ( ); instrukcja_4; return 0; } Program return Funk_4 ( ) Funk_1 Funk_2 Funk_4 dr inż. Olga Choreń

Przykład: Zdefiniuj funkcję: Polsko – Japońska Wyższa Szkoła Technik Komputerowych Przykład: Zdefiniuj funkcję: i użyj do obliczeń wyrażeń następujących wyrażeń: dr inż. Olga Choreń

#include <stdafx.h> #include <iostream> Polsko – Japońska Wyższa Szkoła Technik Komputerowych #include <stdafx.h> #include <iostream> #include <conio.h> #include <math.h> using namespace std; float F(float x, float y); //-------------------------------------- int main() { float a, b, c, p, q, r; cout << "a = "; cin >> a; cout << "b = "; cin >> b; cout << "c = "; cin >> c; p = F(a, b); q = (a + b)*c + 0.34*F(a+p, a-p); r = log(1 + F(1, p)) + a*b*c; cout << "\np = " << p << "\nq = " << q; cout << "\nr = " << r; return 0; } float F(float x, float y) return pow(x*x + y*y, 1./3); dr inż. Olga Choreń

Uwagi: Każda funkcja ma swoją nazwę, która ją identyfikuje. Polsko – Japońska Wyższa Szkoła Technik Komputerowych Uwagi: Każda funkcja ma swoją nazwę, która ją identyfikuje. Przed odwołaniem się do nazwy wymagana jest jej deklaracja. Deklaracja, ale niekoniecznie definicja. Sama funkcja może być zdefiniowana później; Wywołanie funkcji, to napisanie jej nazwy wraz z listą argumentów przesyłanych do funkcji, ujętych w nawiasy okrągłe. dr inż. Olga Choreń

Przesyłanie argumentów do funkcji: Polsko – Japońska Wyższa Szkoła Technik Komputerowych Przesyłanie argumentów do funkcji: przez wartość przez adres dr inż. Olga Choreń

Przesyłanie argumentów przez wartość Polsko – Japońska Wyższa Szkoła Technik Komputerowych Przesyłanie argumentów przez wartość Domyślnie argumenty są przekazywane przez wartość. Oznacza to, że wywoływana funkcja zamiast oryginałów otrzymuje wartości argumentów w zmiennych lokalnych (tymczasowych). Wskutek tego wywołana funkcja nie może bezpośrednio zmienić wartości zmiennej będącej parametrem aktualnym. Może jedynie zmienić swoją prywatną kopię parametru aktualnego. dr inż. Olga Choreń

Przesyłanie argumentów przez adres Polsko – Japońska Wyższa Szkoła Technik Komputerowych Przesyłanie argumentów przez adres Jeżeli konieczna jest zmiana wartości zmiennej w funkcji wywołującej, wtedy funkcja wywołująca musi przekazać adres tej zmiennej. Przekazanie adresu możliwe jest albo przez wskaźnik, albo przez referencję. Referencja jest specjalnym, niejawnym wskaźnikiem, który działa jak alternatywna nazwa zmiennej (synonim zmiennej). dr inż. Olga Choreń

Polsko – Japońska Wyższa Szkoła Technik Komputerowych Uwagi: Obiekt zdefiniowany na zewnątrz wszystkich funkcji ma zasięg globalny. Zmienne globalne zakładane są w normalnym obszarze pamięci, który przed uruchomieniem programu jest zerowany. Zmienne lokalne są zmiennymi automatycznymi. W momencie, gdy kończymy blok, w którym zmienne lokalne zostały powołane do życia, automatycznie przestają istnieć. Obiekty automatyczne komputer przechowuje na stosie. Należy pamiętać, że zmienne automatyczne nie są zerowane w chwili definicji. Jeśli nie zainicjowaliśmy ich jakąś wartością, to przechowują one wartości przypadkowe. dr inż. Olga Choreń