Programowanie Komputerów

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

MATERIAŁY DO ZAJĘĆ II

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

Microsoft IT Academy kurs programowania

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

Język C zajęcia nr 11. Funkcje

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

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

Programowanie Komputerów

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

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

C#. Leksykon kieszonkowy

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

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

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

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

Platformy Programistyczne Podstawy języka Java

Zmienne, stałe i operatory

Czym jest stos i sterta?

Podstawy języka C++ Maciej Trzebiński. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. Praktyki studenckie na LHC IVedycja,2016r.

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44

Język programowania zbiór reguł określających, które ciągi symboli tworzą program komputerowy oraz jakie obliczenia opisuje ten program.

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

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

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

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

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

Podstawy programowania w języku C i C++

Język ludzki kod maszynowy

Struktury, unie, formatowanie, wskaźniki

2 Przygotował: mgr inż. Maciej Lasota

Operatory w C++ Operatory arytmetyczne. Operatory relacyjne (porównania) Operatory logiczne. + dodawanie - odejmowanie * mnożenie / dzielenie % modulo

Wprowadzenie do języka Java

Przeciążanie operatorów

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

Wstęp do programowania

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

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

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

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

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

C++ wprowadzanie zmiennych

Wykład I. Programowanie II - semestr II Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

Programowanie w Internecie. Java

Podstawy i języki programowania

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

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

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

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

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

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.

Podstawy Programowania

PARADYGMATY PROGRAMOWANIA Wykład 3

Java Podstawy. Michał Bereta

Dostęp do funkcji niskopoziomowych w.net Compact Framework

Podstawowe części projektu w Javie

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

IX. Wskaźniki.(3 godz.)

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

ROZDZIAŁ 2. Operatory

Podstawy języka C++ Maciej Trzebiński. Praktyki studenckie na LHC IFJ PAN. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. M. Trzebiński C++ 1/16

Obiekt klasy jest definiowany poprzez jej składniki. Składnikami są różne zmienne oraz funkcje. Składniki opisują rzeczywisty stan obiektu.

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

Podstawy programowania. Wykład: 12. Struktury, unie, pola bitowe. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Programowanie aplikacji okienkowych Windows

Wstęp do wskaźników w języku ANSI C

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

Programowanie obiektowe

Wstęp do programowania obiektowego. Przekazywanie parametrów do funkcji w C++ Metody i funkcje operatorowe Strumienie: standardowe, plikowe, napisowe

Szablony. Szablony funkcji

1 Podstawy c++ w pigułce.

Podstawy programowania. Wykład 6 Złożone typy danych: struktury, unie. Krzysztof Banaś Podstawy programowania 1

Obliczenia, zmienne. Proste działania, zmienne, rodzaje zmiennych, proste operacje i działania na zmiennych.

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

PARADYGMATY PROGRAMOWANIA Wykład 4

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 5

Konwersje napis <-> liczba Struktury, unie Scanf / printf Wskaźniki

1 Podstawy c++ w pigułce.

Wyrażenia arytmetyczne

Programowanie komputerowe. Zajęcia 4

Wstęp do informatyki- wykład 4 Deklaracja zmiennych Typy

Odczyt danych z klawiatury Operatory w Javie

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

Lab 9 Podstawy Programowania

Programowanie obiektowe

Podstawy informatyki. Elektrotechnika I rok. Język C++ Operacje na danych - wskaźniki Instrukcja do ćwiczenia

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

Typy danych, zmienne i tablice. Tomasz Borzyszkowski

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

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

Algorytmy i struktury danych. wykład 1

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

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

Języki i metodyka programowania. Wskaźniki i tablice.

Zajęcia nr 2 Programowanie strukturalne. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Wskaźniki. Przemysław Gawroński D-10, p marca Wykład 2. (Wykład 2) Wskaźniki 8 marca / 17

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

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

Transkrypt:

Programowanie Komputerów Łukasz Kuszner pokój 209, WETI http://www.kaims.pl/ kuszner/ kuszner@eti.pg.gda.pl Wykład 30 godzin, Laboratoria 30 godzin 2012/ Strona 1 z 17

1. Typy i zmienne Jak wiemy, komputer operuje na danych binarnych. Można myśleć, że dane w pamięci komputera to ciągi liczb złożone z 0 i 1. Sposób interpretacji przechowywanych danych zależy od ich typu. Wspomniano już o typie całkowitoliczbowym int. Typ char odnosi się do danych znakowych. Do przechowywania danych służą zmienne. Każda zmienna reprezentuje pewien obszar pamięci W Języku C# kompilator gwarantuje, że wartość przechowywana w danej zmiennej jest zgodna z danym typem (ang. C# is a type-safe language). Strona 2 z 17

Interpretacja i rozmiar Kolejną różnicą między typami danych jest ich rozmiar. Typ char ma dwa bajty, czyli 16 bitów, a typ int ma 4 bajty (32 bity) to gwarantuje standard, Strona 3 z 17

Typy całkowite Alias C# Typ.NET bity zakres sbyte System.SByte 8 128 do 127 byte System.Byte 8 0 do 255 short System.Int16 16 32768 do 32767 ushort System.UInt16 16 0 do 65535 char System.Char 16 znak unicode, 0 do 65535 int System.Int32 32 2 31 do 2 31 1 uint System.UInt32 32 0 do 2 32 1 long System.Int64 64 2 63 do 2 63 1 ulong System.UInt64 64 0 do 2 64 1 Strona 4 z 17

Typy zmiennoprzecinkowe Alias C# Typ.NET bity float System.Single 32 double System.Double 64 decimal System.Decimal 128 Strona 5 z 17

Inne typy predefiniowane Alias C# Typ.NET bity bool System.Boolean 32 object System.Object 32/64 string System.String 16 * długość Strona 6 z 17

2. W języku C# rozróżniamy kilka kategorii zmiennych: statyczne, wystąpienia (ang. instance variables), elementy tablic, parametry przekazywane przez wartość, parametry przekazywane przez referencje, parametery wyjściowe, zmienne lokalne. Powyższe rozróżnienie jest ważne ze względu na wartości początkowe zmiennych. Niektóre rodzaje zmiennych mają przypisane wartości domyślne - a innym trzeba zawsze te wartości nadać. Strona 7 z 17

Przykład 1. using System ; public class Test public static void Main ( ) int a ; // zmienna lokalna to taka, która // została zdefiniowana wewnątrz metody Console. WriteLine ( a ) ; // zmienne lokalne nie mają przypisanej // wartości domyślnej Kompilator odpowie: prog.cs(9,23): error CS0165: Use of unassigned local variable a Compilation failed: 1 error(s), 0 warnings Strona 8 z 17

Przykład 2. Definicja zmiennej lokalnej i przypisanie jej wartości początkowej: using System ; public class Test public static void Main ( ) int a = 3 ; Console. WriteLine ( a ) ; // teraz wszystko j e s t w porządku Strona 9 z 17

Przykład 3. Definicja zmiennej statycznej nie wymaga podania wartości początkowej: using System ; public class Test static int a ; public static void Main ( ) Console. WriteLine ( a ) ; Teraz również program zadziała, zostanie wypisana wartość : 0 Strona 10 z 17

3. (ang. assignment) Operator = nazywamy operatorem podstawienia. Operator ten jest dwuargumentowy. Po jego prawej stronie musi się znaleźć wyrażenie, którego wartość jest typu zgodnego z lewym argumentem. Z kolei lewy argument musi być tak zwaną l-wartością, czyli czymś pod co można podstawić wartość. Strona 11 z 17

4. Dotychczas poznaliśmy jeden operator =. Jest to dwuargumentowy operator przypisania. Wyrażenie a=b oznacza, że lewemu operandowi a przypisuje się wartość b. Inne operatory to np.: + dodawanie, - odejmowanie, * mnożenie, > porównanie: lewy większy od prawego, < porównanie: lewy mniejszy od prawego, == porównanie: lewy równy prawemu. Strona 12 z 17

5. Łączność może być lewostronna lub prawostronna. Przykład 4. Podstawienie jest prawostronnie łączne: using System ; public class Test public static void Main ( ) int a ; int b ; a = b = 3 ; Console. WriteLine ( a ) ; Console. WriteLine (b ) ; Zostanie wypisane: 3 3 Typy i zmienne Strona 13 z 17

Przykład 5. Dodawanie jest lewostronnie łączne: using System ; public class Test public static void Main ( ) int a = 3 ; int b = 2 ; string s = Hej ; Console. WriteLine ( s + a + b ) ; Console. WriteLine ( s + ( a + b ) ) ; Zostanie wypisane: Hej 23 Hej 5 Strona 14 z 17

6. Operator + ma różne działanie w zależności od tego, czu użyjemy go do operandów typu liczbowego, czy typu string i raz wykonuje zwykłe dodawanie, a raz sklejanie napisów. W sytuacji, gdy jeden operand jest typu liczbowego, a drugi jest typu string, wtedy następuje niejawna konwersja (ang. implicit conversion) liczby na napis. Konwersję można też wymusić, wtedy mamy do czynienia z konwersją jawną (ang. explicit conversion). Przykład 6. using System ; public class Test public static void Main ( ) int a = 3 ; int b = 2 ; Console. WriteLine ( a/b ) ; // 1 Console. WriteLine ( ( double) a/b ) ; // 1.5 Typy i zmienne Strona 15 z 17

7. Każda instrukcja musi być zakończona średnikiem, np: int x = 0 ; Console. WriteLine ( x ) ; Nawiasy klamrowe służą do grupowania instrukcji w instrukcję złożoną, czyli blok, np.: int x = 0 ; Console. WriteLine ( x ) ; Strona 16 z 17

Strona 17 z 17