MATERIAŁY DO ZAJĘĆ II

Podobne dokumenty
Operatory cd. Relacyjne: ==!= < > <= >= bool b; int i =10, j =20; dzielenie całkowitych wynik jest całkowity! Łączenie tekstu: + string s = "Ala ma ";

Programowanie C# mgr in. Dariusz Ku. p. 119A

Microsoft IT Academy kurs programowania

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 7 WSTĘP DO INFORMATYKI

Języki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście.

Podstawy programowania. 1. Operacje arytmetyczne Operacja arytmetyczna jest opisywana za pomocą znaku operacji i jednego lub dwóch wyrażeń.

Programowanie Komputerów

Podstawy programowania skrót z wykładów:

Java Podstawy. Michał Bereta

Programowanie obiektowe

Podstawy programowania w języku C

Programowanie I C / C++ laboratorium 03 arytmetyka, operatory

Odczyt danych z klawiatury Operatory w Javie

operator zmiany znaku operatory mnożenia, dzielenia, dzielenia modulo operatory dodawania, odejmowania

Zmienne, stałe i operatory

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

Laboratorium 03: Podstawowe konstrukcje w języku Java [2h]

Podstawy programowania w języku C i C++

Podstawy i języki programowania

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Programowanie C++ Wykład 2 - podstawy języka C++ dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki

Język ludzki kod maszynowy

C++ wprowadzanie zmiennych

ZMIENNE. Podstawy PHP

Operatory. Operatory bitowe i uzupełnienie informacji o pozostałych operatorach. Programowanie Proceduralne 1

Typy złożone. Struktury, pola bitowe i unie. Programowanie Proceduralne 1

ROZDZIAŁ 2. Operatory

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość

2 Przygotował: mgr inż. Maciej Lasota

Wykład 2. Różnice pomiędzy językiem C++ a C#

Operacje wykonywane są na operandach (argumentach operatorów). Przy operacji dodawania: argumentami operatora dodawania + są dwa operandy 2 i 5.

Podstawy Programowania Podstawowa składnia języka C++

Temat 1: Podstawowe pojęcia: program, kompilacja, kod

Podstawowe części projektu w Javie

Programowanie Komputerów

Podstawy programowania. Wykład Co jeszcze... Przypomnienia, uzupełnienia. Krzysztof Banaś Podstawy programowania 1

Algorytmika i Programowanie VBA 1 - podstawy

Wstęp do programowania. Różne różności

Języki programowania C i C++ Wykład: Typy zmiennych c.d. Operatory Funkcje. dr Artur Bartoszewski - Języki C i C++, sem.

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Tablice (jedno i wielowymiarowe), łańcuchy znaków

( wykł. dr Marek Piasecki )

Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Podstawy VBA cz. 2. Programowanie komputerowe

Materiały pomocnicze do wykładu 3 - Elementy języka Java

Zadanie 04 Ktory z ponizszych typow danych w jezyku ANSI C jest typem zmiennoprzecinkowym pojedynczej precyzji?

Oczywiście plik musi mieć rozszerzenie *.php

Typ użyty w deklaracji zmiennej decyduje o rodzaju informacji, a nazwa zmiennej symbolicznie opisuje wartość.

Programowanie RAD Delphi

/* dołączenie pliku nagłówkowego zawierającego deklaracje symboli dla wykorzystywanego mikrokontrolera */ #include <aduc834.h>

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 2. Karol Tarnowski A-1 p.

Różności w C++ Marek Pudełko

Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy. Wykład 2. Karol Tarnowski A-1 p.

Wykład 2 Składnia języka C# (cz. 1)

Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane

Programowanie w C++ Wykład 5. Katarzyna Grzelak. 16 kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 27

Wskaźniki i dynamiczna alokacja pamięci. Spotkanie 4. Wskaźniki. Dynamiczna alokacja pamięci. Przykłady

Zofia Kruczkiewicz, Programowanie obiektowe - java, wykład 2 1

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta Strona 1 z 26. Powrót. Full Screen. Zamknij.

1 Podstawy c++ w pigułce.

Wprowadzenie. Organizacja pracy i środowisko programistyczne. Mirosław Ochodek

Powtórka algorytmów. Wprowadzenie do języka Java.

Platformy Programistyczne Podstawy języka Java

Pascal typy danych. Typy pascalowe. Zmienna i typ. Podział typów danych:

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 4. Karol Tarnowski A-1 p.

Programowanie w środowiskach graficznych. Wykład 3 Język C#

Podstawy programowania. Podstawy C#

Swift (pol. jerzyk) nowy język programowania zaprezentowany latem 2014 r. (prace od 2010 r.)

Wskaźniki. Informatyka

Lab 9 Podstawy Programowania

Słowa kluczowe i nazwy

Podstawy i języki programowania

Podstawy Programowania C++

Programowanie strukturalne i obiektowe

Programowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni. Wykład 6. Karol Tarnowski A-1 p.

Języki i metodyka programowania. Wprowadzenie do języka C

Algorytmy i struktury danych. wykład 1

Wstęp do programowania

C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów

Programowanie obiektowe Wykład 3. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/21

Języki i metodyka programowania. Język C# pętle, sterowanie, wyjątki

IMIĘ i NAZWISKO: Pytania i (przykładowe) Odpowiedzi

Materiały pomocnicze do wykładu 3 - Elementy języka Java

Powtórka algorytmów. Wprowadzenie do języka Java.

Programowanie strukturalne. dr inż. Tadeusz Jeleniewski

Obszar statyczny dane dostępne w dowolnym momencie podczas pracy programu (wprowadzone słowem kluczowym static),

Swift (pol. jerzyk) nowy język programowania zaprezentowany latem 2014 r. (prace od 2010 r.)

KOTLIN. Język programowania dla Androida

typ zakres sposob zapamietania shortint integer bajty (z bitem znaku) longint byte word

1 P roste e t ypy p d a d n a ych c - c ąg ą g d a d l a szy 2 T y T py p z ł z o ł żo ż ne e d a d n a ych c : T BLICE

Wstęp do programowania obiektowego. WYKŁAD 3 Dziedziczenie Pola i funkcje statyczne Funkcje zaprzyjaźnione, this

LibreOffice Calc VBA

JAVA. Platforma JSE: Środowiska programistyczne dla języka Java. Wstęp do programowania w języku obiektowym. Opracował: Andrzej Nowak

Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java

Pracownia specjalistyczna. Materiały przygotowali: mgr inż. Wojciech Frohmberg, mgr inż. Michał Kierzynka

Dodatkowo klasa powinna mieć destruktor zwalniający pamięć.

Transkrypt:

MATERIAŁY DO ZAJĘĆ II Zmienne w C# Spis treści I. Definicja zmiennej II. Hierarchia typów (CTS) III. Typy wbudowane IV. Deklaracja zmiennych V. Literały VI. Pobieranie i wypisywanie wartości zmiennych VII. Typ wartości VIII. Typ wyliczeniowy IX. Typ referencyjny X. Konwersja typów Definicja zmiennej 1. Hierarchia typów 2. Typy wbudowane 3. Deklaracja zmiennych 4. Literały 5. Pobieranie i wypisywanie wartości zmiennych 6. Typ wartości 7. Typ referencyjny 8. Konwersja typów XI. XII. Właściwości operatorów 1

Hierarchia typów (CTS) Typy wbudowane Specyfikacja która określa w jaki sposób środowisko uruchomieniowe (CLR) definiuje i używa typy oraz jak nimi zarządza. byte od 0 do 255 1 bajt sbyte od -128 do 127 1 bajt short od -32768 do 32767 2 bajty ushort od 0 do 65535 2 bajty int od -2147483648 do 2147483647 4 bajty uint od 0 do 4294967295 4 bajty long od -9223372036854775808 do 9223372036854775807 8 bajtów ulong od 0 do 18446744073709551615 8 bajów bool true lub false 1 bajt float liczby rzeczywiste (pojedyncza precyzja) 4 bajty double liczby rzeczywiste (podwójna precyzja) 8 bajtów decimal 28 cyfr znaczących 12 bajtów object typ bazowy dla wszystkich innych typów char 0 and 65535 (Unicody) 2 bajty string kolekcja/łańcuch znaków Deklaracja zmiennych typ nazwa[=wyrażenie] [,nazwa_n[=wyrażenie_n] ]; int a; int a = 10, b = 20, c; Nawa identyfikator zmiennej: Może zawierać litery, cyfry i znak podkreślenia nie może rozpoczynać się od cyfry musi być unikalna w danym bloku kodu nie może być słowem kluczowym 2

Literały Stałe logiczne true; false; Stałe całkowite dziesiętne: 0; -45; 564; szesnastkowe: 0xBF; -0x2A; sufiksy: u, l, ul Stałe rzeczywiste 1.2; 1.4e4;.56; 6f; -1.6e-10; sufiksy: f, d, m Stałe znakowe: 'a'; 'A'; '0'; '\''; '\\'; Stałe napisowe: "Napis"; "\"Napis w cudzysłowiu\""; @"C:\Windows"; Stałe nazwane - const const double PI = 3.141592; Pobieranie i wypisywanie wartości zmiennych Pobieranie int a; string s = Console.ReadLine(); a = Convert.ToInt32(s); lub krócej a = Convert.ToInt32(Console.ReadLine()); Wypisywanie Console.WriteLine(s); Formatowanie String::Format("Tekst {0,10:C} tekst",x); Console::WriteLine("Tekst {0,10:C} tekst",x); Ogólna postać: {index[,n][:symbol]} Typ wartości Typy wbudowane (int, double, char...) Typy wyliczeniowy (enum nazwa {warosci, }) Struktury Zmienne lokalne przechowywane na stosie Przed użyciem zmienna musi być zainicjalizowana (nie mogą być null) Operacja na jednej zmiennej nie wpływa na drugą, każda zmienna posiada własną kopię danych Dostęp do zmiennej lokalnej oraz jej czas życia jest od miejsca zadeklarowania do końca bloku w którym została zadeklarowana Typ wyliczeniowy Definicja typu wyliczeniowego enum DniRobocze { Poniedzialek, Wtorek, Sroda, Czwartek, Piatek } Użycie typu wyliczeniowego DniRobocze dnienpracy = DniRobocze.Poniedziałek; Wypisanie wartości typu wyliczeniowego Console.WriteLine("Pierwszy dzień pracy w tygodniu to: {0}", dzienpracy); 3

Typ referencyjny Typy wbudowane: string, object Tablice, Klasy, Interfejsy Zmienna zawiera referencję do obiektu, a nie zawiera danych Dane (obszar pamięci) do których odwołuje się zmienna nazywamy obiektem Obiekty przechowywane są na zarządzanej stercie Zmienne mogą nie odwoływać się do obiektu, mogą posiadać wartość null Operacja na jednej zmiennej może zmieć dane innej zmiennej, zmienne odwołują się do tych samych obiektów Obiekty tworzymy słowem new Czas życia obiektu jest zarządzany przez proces automatycznego odzyskiwania pamięci (garbage collection) string s1 = "Ala ma kota"; string s2 = s1; s1 i s2 znajdują się na stosie, a obiekt zawierający napis "Ala ma kota" jest umieszczony na zarządzanej stercie Konwersja typów Konwersje niejawne (implicit) short a = 10; int b = a; Konwersje jawne (explicit) long a = 9; int b = (int)a; Opakowanie (boxing) utworzenie na zarządzanej stercie kopi zmiennej typu wartości i zwrócenie do tej kopi uchwytu (referencji) int i = 5; object o = i; //opakowanie... int a = (int)o; //rozpakowanie Arytmetyczne : + - * / % Łączenie stringów: + Relacyjne: ==!= < > <= >= Przesunięcia: << >> Logiczne i bitowe: & ^ ~! && true false Inkrementacji i dekrementacji: ++ -- Przypisania: = += -= *= /= %= &= = ^= <<= >>= Plus (minus) jednoargumentowy: + - Dostęp do składowej:. Wyrażenie warunkowe:?: Tworzenie obiektu: new Rzutowania: () Kontrola przepełnienia: checked unchecked Indeksowania: [] Informacje o typie: as is sizeof typeof Operacje na wskaźnikach (adresach): * -> [] & 4

Właściwości operatorów Priorytet operatorów Liczba argumentów Priorytet - kolejność działań Łączność Typ argumentów Kategoria podstawowe jednoargumentowe multiplikatywne * / % addytywne + - przesunięcia << >> relacji równości ==!= koniunkcji (AND) różnicy symetrycznej (XOR) alternatywy (OR) koniunkcji (AND - logiczne) alternatywy (OR -logiczne) Warunkowy?: Przypisania (x) x.y f(x) a[x] x++ x-- new typeof sizeof checked unchecked + -! ~ ++x --x (T)x < > <= >= is as & ^ && = *= /= %= += - = << >>= &= ^= = 5