Operatory.

Slides:



Advertisements
Podobne prezentacje
Opracowała: Iwona Bieniek
Advertisements

Tablice 1. Deklaracja tablicy
I część 1.
27/09/ Języki programowania 1 Piotr Górczyński Operatory.
Język C/C++ Funkcje.
Mgr inż.Marcin Borkowski Podstawy Java Część II
Zmienne i Typy.
Prowadzący: mgr inż. Elżbieta Majka
Wzory skróconego mnożenia.
Języki programowania C++
Opisy funkcji Adres strony WWW : html /html_node/libc_528.html.
Czy procesor musi się grzać? Np. dodawanie 2 liczb 1-bitowych. Możliwych stanów początkowych: cztery Możliwych stanów końcowych: dwa to można opisać jako.
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.
Język C – Część II Copyright, 2004 © Jerzy R. Nawrocki Wprowadzenie do informatyki.
Podstawy informatyki Wirtotechnologia – Funkcje Grupa: 1A
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
Wykład 1: Wskaźniki Podstawy programowania Programowanie w C
Podstawy programowania
#include #include main () { cout
Równania i Nierówności czyli:
Polsko – Japońska Wyższa Szkoła Technik Komputerowych
nowe operatory & . (kropka) * operator rzutowy -> , (przecinek)
PLAN EWAKUACJI II piętro lewe skrzydło
Język PHP Wprowadzenie.
„Są plusy dodatnie i plusy ujemne.”
Podstawy informatyki (4)
Podstawy programowania w języku C i C++
Programowanie obiektowe III rok EiT
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.
Podstawy programowania w języku C i C++
Informatyka I Wykład 10 WSKAŹNIKI I ADRESY Jerzy F. Kotowski.
Wyrażenia algebraiczne
Wyrażenia algebraiczne
Wyrażenia w Turbo Pascalu.
Podstawy programowania
I. Informacje podstawowe
Przekazywanie argumentów
dla klas gimnazjalnych
Algorytmy rekurencyjne - przykład
STEROWANIE Ale nie tylko
Instrukcja warunkowa i wyboru
Elżbieta Fiedziukiewicz
Dawid Kubaczka kl. 5 „c” Ułamki zwykłe uczący: Ewa Szering.
Figury w układzie współrzędnych.
Java 3 MPDI Programowanie obiektowe W5. Java - obiektowy język programowania stworzony przez firmę Sun Microsystems. Java jest językiem tworzenia programów.
Podstawowe pojęcia rachunku zdań
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.
Liczby Naturalne.
Podstawy programowania
Programowanie strukturalne i obiektowe C++
MS-Excel – formuły i funkcje
Programowanie strukturalne i obiektowe C++ Przeładowanie operatorów 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
Funkcje - rekurencja Zajęcia 8. Funkcje - definicja Ogólna postać funkcji w C++: typZwracany nazwaFunkcji(listaParametrówWejściowychFunkcji) { ciało funkcji.
Wstęp do programowania Wykład 2 Dane, instrukcje, program.
1 Opisy funkcji Adres strony WWW : html (należy odszukać hyperlink Function Index) (
 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ą
Rozwiązywanie równań pierwszego stopnia z jedną niewiadomą.
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:

Operatory

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.0 1 / 4  0 19 % 6  1 0 % 5  0 18 % 6  0

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.

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 )

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

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.

Przykład: i = 10 j = 10 i = 11 j = 11 j = 12 i = 12 #include <iostream.h> #include <conio.h> void main() { int i=10, j=10; clrscr(); cout << "i = " << i << endl << "j = " << j << endl; i++; ++j; cout << "i = " << i++ << endl << "j = " << ++j << endl; }

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;

Wyrażenie warunkowe: ( warunek ) ? wartość1 : wartość2 Przykład: ( i > 5) ? 15 : 20 c = ( x > y ) ? 17 : 56;

Operator sizeof: Operator rzutowania: sizeof (nazwa_typu) sizeof (nazwa_obiektu) Operator rzutowania: (nazwa_typu) obiekt lub nazwa_typu (obiekt) int a = 85; char b; b = (char) a; // b = ‘U’

Przecinek to też operator X = 1, 2, 3, 4; // x == 1 Uwaga na konstrukcję Tab[i , j] !!! To nie jest to samo co Tab[ i ] [ j ] Kiedy to się może przydac? Tam gdzie możemy umieścić tylko jedną instrukcję for(i=1, j=10; i<=j; i++, j+=2) cout << ”i=” << i << ”j=” << j << endl;

Funkcje Funk_1 Funk_2 Funk_4 Funk_3 Program main ( ) { instrukcja_1; } Program return Funk_4 ( ) Funk_1 Funk_2 Funk_4

Zaczynamy Ku-ku! Ku-ku! Na koniec m = 77 #include <iostream.h> #include <conio.h> int kukulka (int ile); //******************************************************************* main () { int m = 30; clrscr (); cout << "Zaczynamy" << endl; m = kukulka (2); cout << "\nNa koniec m = " << m; return 0; } //******************************************************************* int kukulka (int ile) int i; for (i = 0; i < ile; i++) cout << "Ku-ku! "; return 77; Zaczynamy Ku-ku! Ku-ku! Na koniec m = 77

Przykład: Zdefiniuj funkcję: i użyj do obliczeń wyrażeń:

#include <iostream.h> #include <conio.h> #include <math.h> float F(float x, float y); //-------------------------------------- void main() { float a, b, c, p, q, r; clrscr(); 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.width(10); cout.precision(2); cout << "\np = " << p << "\nq = " << q; cout << "\nr = " << r; } float F(float x, float y) return pow(x*x + y*y, 1./3);

Uwagi: 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.

Przesyłanie argumentów do funkcji: przez wartość przez referencję

a = 10 b = 20 Przed zamianą: x = 10 y = 20 Po zamianie: x = 20 y = 10 Teraz: #include <iostream.h> #include <conio.h> void Zamiana(int, int); //-------------------------------- int main() { int a, b; clrscr(); cout << "a = "; cin >> a; cout << "b = "; cin >> b; Zamiana (a, b); cout << "\nTeraz:\n"; cout << "a = " << a << endl; cout << "b = " << b << endl; cout << endl; return 0; }

Przed zamianą: x = 10 y = 20 Po zamianie: x = 20 y = 10 //-- przesyłanie argumentów przez wartość!!! void Zamiana(int x, int y) { int z; cout << "\nPrzed zamianą:\n"; cout << "x = " << x << endl; cout << "y = " << y << endl; z = x; x = y; y = z; cout << "\nPo zamianie:\n"; }

#include <iostream.h> #include <conio.h> void Zamiana(int &, int &); //-------------------------------- void main() { int a, b; clrscr(); cout << "a = "; cin >> a; cout << "b = "; cin >> b; Zamiana (a, b); cout << "\nTeraz:\n"; cout << "a = " << a << endl; cout << "b = " << b << endl; cout << endl; } a = 10 b = 20 Przed zamianą: x = 10 y = 20 Po zamianie: x = 20 y = 10 Teraz: a = 20 b = 10

// przesyłanie argumentów przez referencję void Zamiana(int &x, int &y) { int z; cout << "\nPrzed zamianĄ:\n"; cout << "x = " << x << endl; cout << "y = " << y << endl; z = x; x = y; y = z; cout << "\nPo zamianie:\n"; } Przed zamianą: x = 10 y = 20 Po zamianie: x = 20 y = 10

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.

Funkcje biblioteczne

Funkcje obsługi ekranu i klawiatury: Nazwa funkcji Składnia Biblioteka Znaczenie clreol void clreol (void); conio.h kasowanie linii, w której znajduje się kursor poczynając od pozycji kursora do końca clrscr void clrscr (void); conio.h kasowanie ekranu delline void delline (void); conio.h usunięcie linii, w której znajduje kursor gotoxy void gotoxy (int x, int y); conio.h pozycjonowanie kursora highvideo void highvideo (void); conio.h zwiększenie jaskrawości koloru znaku cdn.

insline void insline (void); conio.h wstawienie nowego wiersza w miejscu aktualnego położenia kursora lowvideo void lowvideo (void); conio.h zmniejszenie jaskrawości koloru znaku normvideo void normvideo (void); conio.h ustalenie koloru tła i znaku, jakie obowiązywały na początku programu (białe znaki na czarnym tle) textattr void textattr (int atr); conio.h ustawienie atrybutów znaku textbackground void textbackground (int kolor); conio.h ustawienie koloru tła cdn.

textcolor void textcolor (int kolor); conio.h ustawienie koloru znaku wherex int wherex (void) conio.h określenie aktualnej współrzędnej X kursora wherey int wherey (void) conio.h określenie aktualnej współrzędnej Y kursora window void window (int xlg, int ylg, int xpd, int ypd ); conio.h zdefiniowanie okna tekstowego

Funkcje matematyczne: abs int abs (int x); stdlib.h wartość bezwzględna argumentu całkowitego acos double acos (double x); math.h arccos x asin double asin (double x); math.h arcsin x atan double atan (double x); math.h arctg x atof double atof (const char *s); math.h konwersja łańcucha znaków na liczbę zmiennopozycyjną cdn.

atoi int atoi (const char *s); math.h konwersja łańcucha znaków na liczbę całkowitą cos double cos (double x); math.h cos x cosh double cosh (double x); math.h cosh x div div_t div (int licz, int mian); stdlib.h dzielenie dwóch liczb całkowitych; jako wynik otrzymuje się iloraz oraz resztę z dzielenia exp double exp (double x); math.h funkcja wykładnicza ex cdn.

cdn. log double log (double x); math.h logarytm naturalny log10 double log10 (double x) math.h logarytm dziesiętny pow double pow (double x, double y); math.h xy pow10 double pow (int p); math.h 10p random int random (int N); stdlib.h generowanie liczb losowych z zakresu od 0 do N-1 randomize void randomize (void) stdlib.h time.h inicjalizacja generatora liczb losowych cdn.

sin double sin (double x) math.h sin x sinh double sinh (double x); math.h sinh x sqrt double sqrt (double x); math.h pierwiastek kwadratowy z x tan double tan (double x) math.h tg x tanh double tanh (double x); math.h tgh x