wykład I uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Wstęp do języka C wykład I dr Jarosław Mederski Spis Ogólne informacje

Wielkość: px
Rozpocząć pokaz od strony:

Download "wykład I uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Wstęp do języka C wykład I dr Jarosław Mederski Spis Ogólne informacje"

Transkrypt

1 Programowanie uzupełnienie notatek: dr Jerzy Białkowski

2

3 Charakter wykładu ˆ zakłada znajomość idei programowania strukturalnego (np. w Pascalu) oraz podstaw używania środowiska UNIX (wykonywanie poleceń) poznanych na Wstępie do Informatyki; ˆ adresowany do matematyków, a nie informatyków; ˆ jego celem jest zapoznanie z językami C i C++ w stopniu wystarczającym do pisania programów (na wasny użytek) oraz nauczania ich podstaw (np. w szkole), a nie nauka profesjonalnego programowania w tych językach (zwłaszcza w zespole); ˆ wprowadza programowania obiektowego przy założeniu, że dla znacznej części słuchaczy język C++ będzie jedynym poznanym na studiach obiektowym językiem programowania (brak Javy, C#, D).

4 Zaliczenie wykładu ˆ na zal, a nie na ocenę; ˆ na podstawie obecności na wykładzie (podpisy na listach) oraz zaliczenia ćwiczeń (wpis w USOS-ie); ˆ wymaga zapisania się na przedmiot pod systemem USOS; ˆ uprawniony student ma prawo, a nawet obowiązek upomnieć się o brakujący wpis w USOS-ie (zwłaszcza w przypadku późniejszego zaliczenia laboratorium). Terminy

5 podstawowa ˆ B. Kernighan, D. Ritchie, Język ANSI C, WNT, Warszawa ˆ E. Scheinerman, C++ for Mathematicians: An Introduction for Students and Professionals, Chapman & Hall/CRC ˆ J. Grębosz, Symfonia C++ standard : programowanie w języku C++ orientowane obiektowo, Tom 1 i 2, Kraków ˆ uzupełniająca ˆ B. Stroustrup, Język C++, WNT, Warszawa ˆ B. Eckel Thinking in C++. Edycja polska, Tom 1 i 2, Helion.

6 - Programowanie ˆ proste (typy całkowite i rzeczywiste, deklarowanie zmiennych).. Instrukcje. ˆ Funkcje (składnia definicji i deklaracji, wywołanie funkcji, rekurencja). Wskaźniki i tablice, napisy. ˆ Struktury. Wybrane funkcje biblioteki standardowej ˆ Język C, a C++. Pojęcie klasy, konstruktory i destruktory. ˆ Argumenty domyślne funkcji, przeciążone identyfikatory funkcji, referencje. ˆ Przeciążanie operatorów, funkcje zaprzyjaźnione. ˆ Dynamiczne tworzenie obiektów. ˆ Podstawowe o szablonach. Operacje we-wy, informacja o STL. ˆ Przykładowe problemy matematyczne i rozwiązania w.

7 Edytory i kompilatory Windows ˆ Notatnik[/ConTEXT/Notepad++] + MinGW(z MSYS) ˆ Code::Blocks ˆ Microsoft Visual Studio 2010 Express/Prof./Prem./Ultimate ˆ Dev-C++ ˆ NetBeans ˆ Eclipse CDT ˆ inne (cygwin, Borland, Watcom,...) Linux ˆ vi[m], gedit, kate, [x]emacs + gcc/g++ ˆ Code::Blocks ˆ KDevelop ˆ NetBeans ˆ Eclipse CDT

8 Code::Blocks

9 Visual Studio 2010 Ultimate

10 Dev-C++

11 Historia Język C został zaprojektowany przez Dennisa Ritchie w 1972 roku. W 1972 roku system operacyjny UNIX został napisany w tym języku. W roku 1989 Amerykański Narodowy Instytut Standaryzacji (American National Standards Institute) przyjął standard zwany odtąd ANSI C.

12 Historia Język C został zaprojektowany przez Dennisa Ritchie w 1972 roku. W 1972 roku system operacyjny UNIX został napisany w tym języku. W roku 1989 Amerykański Narodowy Instytut Standaryzacji (American National Standards Institute) przyjął standard zwany odtąd ANSI C. Język C jest imperatywnym, strukturalnym językiem programowania: sekwencja instrukcji zmieniających stan, tworzenie w postaci jednolitych bloków bez korzystania z instrukcji skoku oraz numerowania linii, dzielenie kodu na procedury.

13 Języki C i C++ na tle innych języków wg. Tiobe,

14 1 #include <s t d i o. h> 2 /* Program o b l i c z a NWD dwoch l i c z b */ 3 /* e u k l i d e s. c */ 4 5 int main ( ) 6 { 7 int a, b, d ; 8 9 printf ( "Podaj liczby a i b : " ) ; 10 scanf ( "%d %d", &a, &b ) ; 11 printf ( "NWD(%d,%d) = ", a, b ) ; d = a % b ; 14 while ( d!= 0) { 15 a = b ; 16 b = d ; 17 d = a % b ; 18 } printf ( "%d\n", b ) ; 21 return 0 ; 22 }

15 ˆ algorytm (przepis na ciasto) ˆ programowanie w C (lub C++), w wyniku otrzymujemy kod źródłowy, np. euklides.c ˆ kompilacja, np. gcc euklides.c ˆ program w asemblerze ˆ kod maszynowy, np. a.out ˆ ładowanie i wykonanie

16 Programowanie Fazy kompilacji (do pliku wykonywalnego) plik.c (plik źródłowy w języku C) preprocesowanie plik.i (plik źródłowy bez dyrektyw preprocesora) komplilacja właściwa plik.s (plik.asm) (kod assemblerowy) składanie (asemblacja) plik.o (plik.obj) (plik obiektowy) łączenie (linkowanie) a.out (a.exe, plik.exe) (plik wykonywalny)

17 dyrektywy preprocesora int main() { deklaracje instrukcje } Preprocesor przetwarza tekst wejściowy w sposób określony za pomocą poleceń preprocesora przez programistę na tekst wyjściowy. Przetworzony tekst poddawany jest analizie składniowej i kompilacji. W wyniku otrzymujemy tekst wyjściowy podlegający następnie kompilacji.

18 Dyrektywy preprocesora ˆ #include - dyrektywa włącza tekst innego pliku źródłowego, ˆ #define - definiuje stałą i makroinstrukcję (pseudofunkcje) ˆ #undef - usuwa definicję stałej lub makra ˆ #ifdef,...

19 Dyrektywy preprocesora ˆ #include - dyrektywa włącza tekst innego pliku źródłowego, ˆ #define - definiuje stałą i makroinstrukcję (pseudofunkcje) ˆ #undef - usuwa definicję stałej lub makra ˆ #ifdef,..., #ifndef, #if, #elif, #else, #endif Uwaga: dyrektywy przetwarzane są w sposób sekwencyjny, a nie rekurencyjny

20 1 #include<s t d i o. h> 2 #define p i int main ( ) 5 { 6 printf ( " Liczba pi wynosi ~ %f", pi ) ; 7 return 0 ; 8 } Przykład

21 1 #include<s t d i o. h> 2 #define p i int main ( ) 5 { 6 printf ( " Liczba pi wynosi ~ %f", pi ) ; 7 return 0 ; 8 } Przykład 1 #include<s t d i o. h> 2 #define p i int main ( ) 5 { 6 int i=10; 7 printf ( "%f + %i wynosi %f \n", pi, i, pi+i ) ; 8 return 0 ; 9 }

22 całkowite ˆ char ˆ short int ˆ int ˆ long int proste

23 proste całkowite ˆ char ˆ short int ˆ int ˆ long int ˆ long long int (nie jest w standardzie ANSI)

24 proste całkowite ˆ char ˆ short int ˆ int ˆ long int ˆ long long int (nie jest w standardzie ANSI) rzeczywiste ˆ float ˆ double

25 proste całkowite ˆ char ˆ short int ˆ int ˆ long int ˆ long long int (nie jest w standardzie ANSI) rzeczywiste ˆ float ˆ double ˆ long double (nie jest w standardzie ANSI)

26 proste całkowite ˆ char ˆ short int ˆ int ˆ long int ˆ long long int (nie jest w standardzie ANSI) rzeczywiste ˆ float ˆ double ˆ long double (nie jest w standardzie ANSI) signed, unsigned, <limits.h>, <float.h>

27 całkowite ˆ char ˆ short int ˆ int ˆ long int proste ˆ long long int (nie jest w standardzie ANSI) rzeczywiste ˆ float ˆ double ˆ long double (nie jest w standardzie ANSI) signed, unsigned, <limits.h>, <float.h> Brak typu logicznego. Zamiast tego mamy: 0 - fałsz, liczba niezerowa - prawda.

28 Typ znakowy char - typ znakowy, który pomieści jeden znak dostępny na danej maszynie, a w szczególności duże i małe litery angielskiego alfabetu oraz cyfry.

29 Typ znakowy char - typ znakowy, który pomieści jeden znak dostępny na danej maszynie, a w szczególności duże i małe litery angielskiego alfabetu oraz cyfry. 1 #include<s t d i o. h> 2 /* p r z y k l a d u z y c i a char */ 3 int main ( ) 4 { 5 char znak='a' ; 6 printf ( "A = %c\n", znak ) ; 7 8 /* k o n w e r s j a char > i n t */ 9 printf ( "A = %i\n", znak ) ; 10 printf ( "a = %i\n", 'a' ) ; 11 /* k o n w e r s j a l o n g u n s i g n e d i n t > i n t */ 12 printf ( "A + 4 = %c\n", znak+4) ; 13 printf ( "Rozmiar %d\n", ( int ) sizeof ( znak ) ) ; 14 return 0 ; 15 }

30 Identyfikatory Identyfikator jest ciągiem liter małych i dużych, znaku oraz cyfr. Identyfikator musi zaczynać się od litery. W języku C rozróżnia się wielkość liter.

31 1 #include<s t d i o. h> 2 #include <math. h> /* uzywamy f u n k c j i pow ( l i c z b a, w y k l a d n i k ) */ 3 #define p i int main ( ) 6 { 7 float promien_r, pole=0; /* d e k l a r a c j a zmiennych */ 8 9 printf ( "%f\n", promien_r ) ; 10 printf ( "%f\n", pole ) ; scanf ( "%f",&promien_r ) ; 13 pole = pi * pow ( promien_r, 2 ) ; 14 printf ( " Pole wynosi %f\n", pole ) ; 15 return 0 ; 16 }

32 Słowa kluczowe auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while

33 Priorytet wybranych operatorów 15 ( ) [ ] >. l 14! ++ + & (typ) sizeof p 13 / % (dwuargumetowe operatory) l 12 + l 11 << >> l 10 < <= > >= l 9 ==! = l 8 & l 7 ˆ l 6 l 5 && l 4 l 3? : p 2 = += = = /= %= &= ˆ= = <<= >>= p 1, l l - łączność lewostronna, p - łączność prawostronna

34 Przykład 1 #include<s t d i o. h> 2 3 int main ( ) 4 { 5 int m=9, n=4, d ; 6 7 m++; 8 printf ( "m=%d\n", m ) ; /* m=10 */ 9 10 d = m / n ; 11 printf ( "d=%d\n", d ) ; /* 10/4=2 */ d = m / n ; 14 printf ( "d=%d\n", d ) ; /*? */ 15 printf ( "%d\n", d++) ; /*? */ 16 printf ( "%d\n",++d ) ; /*? */ 17 return 0 ; 18 }

35 Operator warunkowy wynik = warunek? wartość1 : wartość2; 1 #include<s t d i o. h> 2 3 int main ( ) 4 { 5 int m, n, max ; 6 7 printf ( "Podaj m " ) ; 8 scanf ( "%d", &m ) ; 9 10 printf ( "Podaj n " ) ; 11 scanf ( "%d", &n ) ; max = m < n? n : m ; 14 /* max = ( (m < n )? n : m ) ; */ 15 printf ( "%d\n", max ) ; 16 return 0 ; 17 }

36 Operator warunkowy 1 #include<s t d i o. h> 2 #define max( x, y ) ( x > y? x : y ) 3 4 int main ( ) 5 { 6 int m, n, max ; 7 8 printf ( "Podaj m " ) ; 9 scanf ( "%d", &m ) ; printf ( "Podaj n " ) ; 12 scanf ( "%d", &n ) ; max = max ( m, n ) ; 15 printf ( "%d\n", max ) ; return 0 ; 18 }

37 Instrukcje i bloki ˆ ; - kończy instrukcję (a nie rozdziela instr. jak w Pascalu) ˆ { } - instrukcja grupująca (blok) ˆ if, if else, switch - instrukcje wyboru ˆ while, do while, for - instrukcje iteracyjne (pętle) ˆ goto, continue, break, return - instrukcje skoku

38 Warunek if if (wyrażenie1) instrukcja else if (wyrażenie2) instrukcja else instrukcja...

39 1 #include <s t d i o. h> 2 3 int main ( ) 4 { 5 int a, b, max ; 6 7 scanf ( "%d %d", &a, &b ) ; 8 9 if ( ( a%2)==0 ) { 10 printf ( "a jest liczba parzysta\n" ) ; 11 } if ( a>b ) { 14 max = a ; 15 } else { 16 max = b ; 17 } printf ( " max wynosi %d\n", max ) ; return 0 ; 22 }

40 Warunek if, else if 1 #include <s t d i o. h> 2 3 int main ( ) 4 { 5 int a ; 6 7 scanf ( "%d", &a ) ; 8 9 if ( ( a%3)==0 ) 10 printf ( " liczba jest podzielna przez 3\ n" ) ; 11 else if ( ( a%3)==1 ) 12 printf ( " liczba daje reszte 1 z dzielenia przez 3\n" ) ; 13 else if ( ( a%3)==2 ) 14 printf ( " liczba daje reszte 2 z dzielenia przez 3\n" ) ; return 0 ; 17 }

41 Instrukcja switch switch (wyrażenie) case wyrażenie-stałe: instrukcje case wyrażenie-stałe: instrukcje... default: instrukcje break powoduje natychmiastowy wyskok z instrukcji switch

42 1 #include <s t d i o. h> 2 3 int main ( ) 4 { 5 int a ; 6 7 scanf ( "%d", &a ) ; 8 9 switch ( a%3) { 10 case 0 : 11 printf ( " liczba jest podzielna przez 3\ n" ) ; 12 break ; 13 case 1 : 14 printf ( " liczba daje reszte 1 z dzielenia przez 3\n" ) ; 15 break ; 16 default : 17 printf ( " liczba daje reszte 2 z dzielenia przez 3\n" ) ; 18 } 19 return 0 ; 20 }

43 while while (wyrażenie) instrukcja Najpierw oblicza wyrażenie. Jeśli jego wartość jest różna od zera (tzn. jest prawdziwe), to wykonuje się instrukcję.

44 1 #include <s t d i o. h> 2 3 int main ( ) 4 { 5 int a, i =2, jest_pierwsza =1; 6 scanf ( "%d", &a ) ; 7 8 while ( i < a ) { 9 if ( ( a%i ) == 0 ) { 10 jest_pierwsza =0; 11 } 12 i++; 13 } if ( jest_pierwsza ) 16 printf ( "%d jest liczba pierwsza\n", a ) ; 17 else 18 printf ( "%d jest liczba zlozona\n", a ) ; 19 return 0 ; 20 }

45 do while do instrukcja while (wyrażenie); Najpierw wykonuje instrukcję a potem oblicza wyrażenie. Jeśli jego wartość jest różna od zera (tzn. jest prawdziwe), to ponownie wykonuje się instrukcję. Instrukcja wykona się co najmniej raz.

46 1 #include <s t d i o. h> 2 3 int main ( ) 4 { 5 int a, i=2, jest_pierwsza =1; 6 scanf ( "%d", &a ) ; 7 8 do { 9 if ( ( a%i ) == 0 ) { 10 jest_pierwsza =0; 11 } 12 i++; 13 } while ( i < a ) ; if ( jest_pierwsza ) /* czy na pewno? */ 17 printf ( "%d jest liczba pierwsza\n", a ) ; 18 else 19 printf ( "%d jest liczba zlozona\n", a ) ; 20 return 0 ; 21 }

47 for for (wyr1; wyr2; wyr3) instrukcja Poza pewnymi wyjątkami, na ogół jest ona równoważna następującej pętli wyr1; while (wyr2) { instrukcja; wyr3; }

48 1 #include <s t d i o. h> 2 3 int main ( ) 4 { 5 int a, i, jest_pierwsza =1; 6 scanf ( "%d", &a ) ; 7 8 for ( i=2; i<a ; i++) { 9 if ( ( a%i ) == 0 ) { 10 jest_pierwsza =0; 11 } 12 } if ( jest_pierwsza ) 15 printf ( "%d jest liczba pierwsza\n", a ) ; 16 else 17 printf ( "%d jest liczba zlozona\n", a ) ; return 0 ; 20 }

49 1 #include <s t d i o. h> 2 3 int main ( ) 4 { 5 int i, suma =0; 6 7 for ( i =100; i>=1; i ) { 8 suma += i* i ; 9 /* suma = suma + i * i */ 10 } 11 printf ( " Suma kwadratow liczb naturalnych" ) ; 12 printf ( " od 1 do 100 wynosi %d\n", suma ) ; 13 return 0 ; 14 }

50 1 #include <s t d i o. h> 2 3 int main ( ) 4 { 5 6 for ( ; ; ) { 7 printf ( "Ala ma kota. " ) ; 8 } 9 10 return 0 ; 11 }

51 goto Instrukcja goto nie może przekazywać sterowania do etykiety poza daną funkcją. Nie jest zalecane stosowanie goto.

52 1 #include <s t d i o. h> 2 3 int main ( ) 4 { 5 int a, i ; 6 scanf ( "%d", &a ) ; 7 8 for ( i=2; i<a ; i++) { 9 if ( ( a%i ) == 0 ) { 10 goto zloz ; 11 } 12 } 13 goto pierw ; zloz : 16 printf ( "%d jest liczba zlozona\n", a ) ; 17 return 0 ; /* z a k o n c z e n i e d z i a l a n i a */ 18 pierw : 19 printf ( "%d jest liczba pierwsza\n", a ) ; 20 return 0 ; 21 }

53 break Instrukcja break opuszcza najbardziej zagnieżdżoną instrukcję do, while, for, switch.

54 1 #include <s t d i o. h> 2 3 int main ( ) 4 { 5 int a, i =2, jest_pierwsza =1; 6 scanf ( "%d", &a ) ; 7 8 while ( i < a ) { 9 if ( ( a%i ) == 0 ) { 10 jest_pierwsza =0; 11 break ; 12 } 13 i++; 14 } if ( jest_pierwsza ) 17 printf ( "%d jest liczba pierwsza\n", a ) ; 18 else 19 printf ( "%d jest liczba zlozona\n", a ) ; 20 printf ( "Licznik %d\n", i ) ; 21 return 0 ; 22 }

55 continue Instrukcja continue przerywa wykonywanie instrukcji wewnętrznej w najbardziej zagnieżdżonej pętli do, while, for. Powoduje przejście do następnego kroku pętli. Nie dotyczy instrukcji switch.

56 1 #include <s t d i o. h> 2 3 int main ( ) 4 { 5 int i ; 6 7 for ( i=0; i<=20; i++ ) { 8 if ( ( ( i%2) == 0) ( ( i%3) == 0) ) { 9 continue ; 10 } 11 printf ( "%d\n", i ) ; 12 } return 0 ; 15 }

57 return return kończy działanie funkcji i zwraca wartość; 1 #include <s t d i o. h> 2 3 int main ( ) 4 printf ( "Ala ma\n" ) ; 5 return 1 ; 6 printf ( "kota\n" ) ; 7 return 0 ; 8 }

58 1 #include <s t d i o. h> 2 /* Program o b l i c z a NWD dwoch l i c z b */ 3 /* e u k l i d e s. c */ 4 5 int main ( ) 6 { 7 int a, b, d ; 8 9 printf ( "Podaj liczby a i b : " ) ; 10 scanf ( "%d %d", &a, &b ) ; 11 printf ( "NWD(%d,%d) = ", a, b ) ; d = a % b ; 14 while ( d!= 0) { 15 a = b ; 16 b = d ; 17 d = a % b ; 18 } printf ( "%d\n", b ) ; 21 return 0 ; 22 }

59 Problemy Zadanie Wczytać liczbę naturalną n i wyznaczyć wszystkie liczby pierwsze mniejsze od n.

60 Problemy Zadanie Wczytać liczbę naturalną n i wyznaczyć wszystkie liczby pierwsze mniejsze od n. Zadanie Wczytać liczbę naturalną n i wyznaczyć wszystkie liczby doskonałe mniejsze od n.

61 Problemy Zadanie Wczytać liczbę naturalną n i wyznaczyć wszystkie liczby pierwsze mniejsze od n. Zadanie Wczytać liczbę naturalną n i wyznaczyć wszystkie liczby doskonałe mniejsze od n. Zadanie Dla danych liczb naturalnych m i n, napisać program, który znajduje największy wspólny dzielnik d oraz najmniejszą wspólną wielokrotność w liczb m i n. Znajdź liczby całkowite a i b takie, że d = a m + b n.

62 Dziękuję za uwagę.

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

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02 METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się

Bardziej szczegółowo

Wykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe

Wykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe Wykład 15 Wprowadzenie do języka na bazie a Literatura Podobieństwa i różnice Literatura B.W.Kernighan, D.M.Ritchie Język ANSI Kompilatory Elementarne różnice Turbo Delphi FP Kylix GNU (gcc) GNU ++ (g++)

Bardziej szczegółowo

Język ludzki kod maszynowy

Język ludzki kod maszynowy Język ludzki kod maszynowy poziom wysoki Język ludzki (mowa) Język programowania wysokiego poziomu Jeśli liczba punktów jest większa niż 50, test zostaje zaliczony; w przeciwnym razie testu nie zalicza

Bardziej szczegółowo

PROGRAMOWANIE w C prolog

PROGRAMOWANIE w C prolog PROGRAMOWANIE w C prolog dr inż. Jarosław Stańczyk Uniwersytet Przyrodniczy we Wrocławiu Wydział Biologii i Hodowli Zwierząt Katedra Genetyki 1 / jaroslaw.stanczyk@up.wroc.pl programowanie w c 17.10.2014

Bardziej szczegółowo

Język C - podstawowe informacje

Język C - podstawowe informacje Język C - podstawowe informacje Michał Rad AGH Laboratorium Maszyn Elektrycznych 2014-12-05 Outline Program w języku C Funkcje Składnia Instrukcje sterujace Na koniec... Po kolei napisać program (zwykły

Bardziej szczegółowo

Programowanie I C / C++ laboratorium 01 Organizacja zajęć

Programowanie I C / C++ laboratorium 01 Organizacja zajęć Programowanie I C / C++ laboratorium 01 Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2013-02-12 Program zajęć Zasady zaliczenia Program operacje wejścia i wyjścia instrukcje

Bardziej szczegółowo

Programowanie strukturalne i obiektowe

Programowanie strukturalne i obiektowe Programowanie strukturalne i obiektowe Język C część I Opracował: Grzegorz Flesik Literatura: A. Majczak, Programowanie strukturalne i obiektowe, Helion, Gliwice 2010 P. Domka, M. Łokińska, Programowanie

Bardziej szczegółowo

Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik

Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik Wykład VII Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Kompilacja Kompilator C program do tłumaczenia kodu źródłowego na język maszynowy. Preprocesor

Bardziej szczegółowo

Wykład 1

Wykład 1 Wstęp do programowania 1 Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 1 Wprowadzenie Cel wykładów z programowania proceduralnego Wykład jest poświęcony językowi C i jego

Bardziej szczegółowo

Grzegorz Cygan. Wstęp do programowania mikrosterowników w języku C

Grzegorz Cygan. Wstęp do programowania mikrosterowników w języku C Grzegorz Cygan Wstęp do programowania mikrosterowników w języku C Mikrosterownik Inne nazwy: Microcontroler (z języka angielskiego) Ta nazwa jest powszechnie używana w Polsce. Mikrokomputer jednoukładowy

Bardziej szczegółowo

1. Brian W. Kernighan, Dennis M. Ritchie, Język ANSI C, WNT, Warszawa 1998.

1. Brian W. Kernighan, Dennis M. Ritchie, Język ANSI C, WNT, Warszawa 1998. Literatura Język C 1. Brian W. Kernighan, Dennis M. Ritchie, Język ANSI C, WNT, Warszawa 1998. 2. Andrzej Zalewski, Programowanie w językach C i C++ z wykorzystaniem pakietu Borland C++, Nakom, Poznań

Bardziej szczegółowo

Języki i metody programowania. Omówienie języków C, C++ i Java

Języki i metody programowania. Omówienie języków C, C++ i Java Języki i metody programowania Omówienie języków C, C++ i Java Język C Język programowania ogólnego przeznaczenia Historia: M. Richards - BCPL - lata 60-te ubiegłego stulecia K. Thompson - B dla UNIX (DEC

Bardziej szczegółowo

wykład III uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - zarządzanie pamięcią, struktury,

wykład III uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - zarządzanie pamięcią, struktury, , Programowanie, uzupełnienie notatek: dr Jerzy Białkowski , 1 2 3 4 , Wczytywanie liczb , Wczytywanie liczb 1 #include 2 #include < s t d l i b. h> 3 4 int main ( ) { 5 int rozmiar, numer

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

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

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta 16.09.2006. Strona 1 z 26. Powrót. Full Screen. Zamknij. Programowanie Sobera Jolanta 16.09.2006 Strona 1 z 26 1 Wprowadzenie do programowania 4 2 Pierwsza aplikacja 5 3 Typy danych 6 4 Operatory 9 Strona 2 z 26 5 Instrukcje sterujące 12 6 Podprogramy 15 7 Tablice

Bardziej szczegółowo

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

Podstawy programowania skrót z wykładów: Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace

Bardziej szczegółowo

Programowanie strukturalne język C - wprowadzenie

Programowanie strukturalne język C - wprowadzenie Programowanie strukturalne język C - wprowadzenie Dr inż. Sławomir Samolej D102 C, tel: 865 1766, email: ssamolej@prz-rzeszow.pl WWW: ssamolej.prz-rzeszow.pl Cechy programowania strukturalnego Możliwość

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

wykład II uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - funkcje, tablice i wskaźniki wykład II dr Jarosław Mederski Spis

wykład II uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - funkcje, tablice i wskaźniki wykład II dr Jarosław Mederski Spis i cz. 2 Programowanie uzupełnienie notatek: dr Jerzy Białkowski 1 i cz. 2 2 i cz. 2 3 Funkcje i cz. 2 typ nazwa ( lista-parametrów ) { deklaracje instrukcje } i cz. 2 typ nazwa ( lista-parametrów ) { deklaracje

Bardziej szczegółowo

Informatyka 1. Plan dzisiejszych zajęć. zajęcia nr 1. Elektrotechnika, semestr II rok akademicki 2008/2009

Informatyka 1. Plan dzisiejszych zajęć. zajęcia nr 1. Elektrotechnika, semestr II rok akademicki 2008/2009 Informatyka 1 zajęcia nr 1 Elektrotechnika, semestr II rok akademicki 2008/2009 mgr inż.. Paweł Myszkowski Plan dzisiejszych zajęć 1. Organizacja laboratorium przedmiotu 2. Algorytmy i sposoby ich opisu

Bardziej szczegółowo

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

Temat 1: Podstawowe pojęcia: program, kompilacja, kod Temat 1: Podstawowe pojęcia: program, kompilacja, kod wynikowy. Przykłady najprostszych programów. Definiowanie zmiennych. Typy proste. Operatory: arytmetyczne, przypisania, inkrementacji, dekrementacji,

Bardziej szczegółowo

Wykład I. Programowanie. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik

Wykład I. Programowanie. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik Wykład I I Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Zaliczenie przedmiotu Na laboratorium można zdobyć 100 punktów. Do zaliczenia niezbędne jest

Bardziej szczegółowo

Katedra Elektrotechniki Teoretycznej i Informatyki. wykład 12 - sem.iii. M. Czyżak

Katedra Elektrotechniki Teoretycznej i Informatyki. wykład 12 - sem.iii. M. Czyżak Katedra Elektrotechniki Teoretycznej i Informatyki wykład 12 - sem.iii M. Czyżak Język C - preprocesor Preprocesor C i C++ (cpp) jest programem, który przetwarza tekst programu przed przekazaniem go kompilatorowi.

Bardziej szczegółowo

Podstawy programowania C. dr. Krystyna Łapin http://www.mif.vu.lt/~moroz/c/

Podstawy programowania C. dr. Krystyna Łapin http://www.mif.vu.lt/~moroz/c/ Podstawy programowania C dr. Krystyna Łapin http://www.mif.vu.lt/~moroz/c/ Tematy Struktura programu w C Typy danych Operacje Instrukcja grupująca Instrukcja przypisania Instrukcja warunkowa Struktura

Bardziej szczegółowo

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

Podstawy Programowania Podstawowa składnia języka C++ Podstawy Programowania Podstawowa składnia języka C++ Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 3 października 2013 r. Szablon programu w C++ Najprostszy program w C++ ma postać: #include #include

Bardziej szczegółowo

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje.

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje. Podstawowe elementy proceduralne w C++ Program i wyjście Zmienne i arytmetyka Wskaźniki i tablice Testy i pętle Funkcje Pierwszy program // Niezbędne zaklęcia przygotowawcze ;-) #include using

Bardziej szczegółowo

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

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 2. Poprawna definicja wskażnika b to: a) float *a, **b = &a; b) float

Bardziej szczegółowo

Microsoft IT Academy kurs programowania

Microsoft IT Academy kurs programowania Microsoft IT Academy kurs programowania Podstawy języka C# Maciej Hawryluk Język C# Język zarządzany (managed language) Kompilacja do języka pośredniego (Intermediate Language) Kompilacja do kodu maszynowego

Bardziej szczegółowo

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

Języki i metodyka programowania. Wprowadzenie do języka C Literatura: Brian W. Kernighan, Dennis M. Ritchie Język Ansi C, Wydawnictwa Naukowo - Techniczne, 2007 http://cm.bell-labs.com/cm/cs/cbook/index.html Scott E. Gimpel, Clovis L. Tondo Język Ansi C. Ćwiczenia

Bardziej szczegółowo

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

Wykład I. Programowanie II - semestr II Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej Wykład I - semestr II Kierunek Informatyka Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2015 c Copyright 2015 Janusz Słupik Zaliczenie przedmiotu Do zaliczenia przedmiotu niezbędne jest

Bardziej szczegółowo

Wstęp do Programowania, laboratorium 02

Wstęp do Programowania, laboratorium 02 Wstęp do Programowania, laboratorium 02 Zadanie 1. Napisać program pobierający dwie liczby całkowite i wypisujący na ekran największą z nich. Zadanie 2. Napisać program pobierający trzy liczby całkowite

Bardziej szczegółowo

Podstawy Programowania C++

Podstawy Programowania C++ Wykład 3 - podstawowe konstrukcje Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu, instrukcja przypisania, podstawowe typy danych, zapis i odczyt danych, wyrażenia:

Bardziej szczegółowo

Język C zajęcia nr 5

Język C zajęcia nr 5 Język C zajęcia nr 5 Instrukcja wyboru switch switch ( wyr ) inst Głównym przeznaczeniem instrukcji switch jest rozgałęzianie wykonania programu na wiele różnych ścieżek w zależności od wartości pewnego

Bardziej szczegółowo

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

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy Wykład 3, część 3 1 Język JAVA podstawy Plan wykładu: 1. Konstrukcja kodu programów w Javie 2. Identyfikatory, zmienne 3. Typy danych 4. Operatory, instrukcje sterujące instrukcja warunkowe,

Bardziej szczegółowo

KURS C/C++ WYKŁAD 1. Pierwszy program

KURS C/C++ WYKŁAD 1. Pierwszy program KURS C/C++ WYKŁAD 1 Pierwszy program Tworzenie programu odbywa sie w dwóch etapach: 1. opracowanie kodu źródłowego 2. generowanie kodu wynikowego Pierwszy etap polega na zapisaniu algorytmu za pomocą instrukcji

Bardziej szczegółowo

Funkcja (podprogram) void

Funkcja (podprogram) void Funkcje Co to jest funkcja? Budowa funkcji Deklaracja, definicja i wywołanie funkcji Przykłady funkcji definiowanych przez programistę Przekazywanie argumentów do funkcji Tablica jako argument funkcji

Bardziej szczegółowo

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

Programowanie I C / C++ laboratorium 03 arytmetyka, operatory Programowanie I C / C++ laboratorium 03 arytmetyka, operatory Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2013-02-19 Typ znakowy Typ znakowy Typ wyliczeniowy # include

Bardziej szczegółowo

Podstawy programowania - 1

Podstawy programowania - 1 Podstawy programowania - 1 doc. dr inż. Tadeusz Jeleniewski Wykład: sobota B, godz. 10.30 12.55 sala 12 Laboratorium: sobota B, godz. 13.00 15.25 sala 2 sobota B, godz. 15.30-17.55 sala 2 e-mail: tadeusz.jeleniewski@pwr.wroc.pl

Bardziej szczegółowo

Wstęp do programowania 1

Wstęp do programowania 1 Wstęp do programowania 1 Struktury Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 12 Struktura dla dat - przykład #include struct Date { int y; short m; short

Bardziej szczegółowo

Programowanie I. O czym będziemy mówili. Plan wykładu nieco dokładniej. Plan wykładu z lotu ptaka. Podstawy programowania w językach. Uwaga!

Programowanie I. O czym będziemy mówili. Plan wykładu nieco dokładniej. Plan wykładu z lotu ptaka. Podstawy programowania w językach. Uwaga! Programowanie I O czym będziemy mówili Podstawy programowania w językach proceduralnym ANSI C obiektowym Java Uwaga! podobieństwa w podstawowej strukturze składniowej (zmienne, operatory, instrukcje sterujące...)

Bardziej szczegółowo

Język ANSI C. Pierwsze starcie. Programowanie Proceduralne 1

Język ANSI C. Pierwsze starcie. Programowanie Proceduralne 1 Język ANSI C Pierwsze starcie. Programowanie Proceduralne 1 Znowu trochę historii 1972 Dennis Ritchie (Bell Labs.,New Jersey), projekt języka C na bazie języka B 1973 UNIX, jądro w C, pierwszy przenośny

Bardziej szczegółowo

PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6

PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6 PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6 TEMAT: Programowanie w języku C/C++: instrukcje iteracyjne for, while, do while Ogólna postać instrukcji for for (wyr1; wyr2; wyr3) Instrukcja for twory pętlę działającą

Bardziej szczegółowo

ROZDZIAŁ 2. Operatory

ROZDZIAŁ 2. Operatory Bibliografia [1] Jerzy Grębosz, Symfonia C++, Oficyna Kallimach, Kraków, 1999, [2] Jerzy Grębosz, Pasja C++, Oficyna Kallimach, Kraków, 1999, [3] Bjarne Stroustrup, Język C++, WNT, Warszawa, 1997, [4]

Bardziej szczegółowo

Część 4 życie programu

Część 4 życie programu 1. Struktura programu c++ Ogólna struktura programu w C++ składa się z kilku części: część 1 część 2 część 3 część 4 #include int main(int argc, char *argv[]) /* instrukcje funkcji main */ Część

Bardziej szczegółowo

2 Przygotował: mgr inż. Maciej Lasota

2 Przygotował: mgr inż. Maciej Lasota Laboratorium nr 2 1/7 Język C Instrukcja laboratoryjna Temat: Wprowadzenie do języka C 2 Przygotował: mgr inż. Maciej Lasota 1) Wprowadzenie do języka C. Język C jest językiem programowania ogólnego zastosowania

Bardziej szczegółowo

Podstawy programowania (1)

Podstawy programowania (1) Podstawy programowania (1) doc. dr inż. Tadeusz Jeleniewski Konsultacje pokój 19 Poniedziałki, godz. 9:45 11:20 e-mail: tadeusz.jeleniewski@neostrada.pl Podstawy programowania (1) - wykład 1. Wprowadzenie

Bardziej szczegółowo

Podstawy Informatyki sem. I 2014/2015 studia zaoczne Elektronika i Telekomunikacja!

Podstawy Informatyki sem. I 2014/2015 studia zaoczne Elektronika i Telekomunikacja! Podstawy Informatyki sem. I 2014/2015 studia zaoczne Elektronika i Telekomunikacja! Krzysztof Grudzień kgrudzi@kis.p.lodz.pl! Zbigniew Chaniecki zch@kis.p.lodz.pl 1 program zajęć - wykład Podstawowe pojęcia

Bardziej szczegółowo

Podstawy programowania wykład

Podstawy programowania wykład Podstawy programowania wykład WYDZIAŁ ELEKTRONIKI i INFORMATYKI dr inż. Robert Arsoba Politechnika Koszalińska Wydział Elektroniki i Informatyki POLITECHNIKA KOSZALIŃSKA 2009/2010 1 Materiały do wykładu

Bardziej szczegółowo

Podstawy Programowania. Wykład 1

Podstawy Programowania. Wykład 1 Podstawy Programowania Wykład 1 Jak się uczyć programowania? Wykład i laboratorium Literatura Jerzy Grębosz Symfonia C++ Bjarne Stroustrup Język C++ Bruce Eckel Thinking in C++ Tony L. Hansen C++ zadania

Bardziej szczegółowo

Język C, instrukcje sterujące (laboratorium)

Język C, instrukcje sterujące (laboratorium) Język C, instrukcje sterujące (laboratorium) Opracował: Tomasz Mączka (tmaczka@kia.prz.edu.pl) Na podstawie http://pl.wikibooks.org/wiki/c Wstęp Instrukcja warunkowa Instrukcja if/if-else pozwala na warunkowe

Bardziej szczegółowo

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

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 7 WSTĘP DO INFORMATYKI Dr inż. Grażyna KRUPIŃSKA Grazyna.Krupinska@fis.agh.edu.pl D-10 pokój 227 WYKŁAD 7 WSTĘP DO INFORMATYKI Wyrażenia 2 Wyrażenia w języku C są bardziej elastyczne niż wyrażenia w jakimkolwiek innym języku

Bardziej szczegółowo

WYKŁAD 8. Funkcje i algorytmy rekurencyjne Proste przykłady. Programy: c3_1.c..., c3_6.c. Tomasz Zieliński

WYKŁAD 8. Funkcje i algorytmy rekurencyjne Proste przykłady. Programy: c3_1.c..., c3_6.c. Tomasz Zieliński WYKŁAD 8 Funkcje i algorytmy rekurencyjne Proste przykłady Programy: c3_1.c..., c3_6.c Tomasz Zieliński METODY REKURENCYJNE (1) - program c3_1 ======================================================================================================

Bardziej szczegółowo

Wstęp do programowania

Wstęp do programowania Wstęp do programowania wykład 2 Piotr Cybula Wydział Matematyki i Informatyki UŁ 2012/2013 http://www.math.uni.lodz.pl/~cybula Język programowania Każdy język ma swoją składnię: słowa kluczowe instrukcje

Bardziej szczegółowo

Podstawy Programowania

Podstawy Programowania Podstawy Programowania dr Elżbieta Gawrońska gawronska@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej dr Elżbieta Gawrońska (ICIS) Podstawy Programowania 01 1 / 9 Plan wykładu 1 Informacje

Bardziej szczegółowo

Paostwowa Wyższa Szkoła Zawodowa w Płocku Dariusz Wardowski

Paostwowa Wyższa Szkoła Zawodowa w Płocku Dariusz Wardowski Paostwowa Wyższa Szkoła Zawodowa w Płocku Dariusz Wardowski dr Dariusz Wardowski, Instytut Matematyki i Informatyki PWSZ w Płocku 1 O mnie prowadzący wykład i laboratoria: Dariusz Wardowski pokój: 102

Bardziej szczegółowo

Programowanie w języku C++

Programowanie w języku C++ INE 2022 JĘZYKI PROGRAMOWANIA 1 INE 0050 WSTĘP DO PROGRAMOWANIA Programowanie w języku C++ ( wykł. dr Marek Piasecki ) Literatura: do wykładu dowolny podręcznik do języka C++ na laboratoriach Borland C++

Bardziej szczegółowo

JĘZYKI PROGRAMOWANIA

JĘZYKI PROGRAMOWANIA Stefan Sokołowski JĘZYKI PROGRAMOWANIA Inst Informatyki UG, Gdańsk, 2014/2015 Wykład1OGÓLNEINFORMACJEOC,str1 JĘZYKI PROGRAMOWANIA reguły gry Zasadnicze informacje: http://infugedupl/ stefan/dydaktyka/jezprog

Bardziej szczegółowo

Programowanie, algorytmy i struktury danych

Programowanie, algorytmy i struktury danych 1/44 Programowanie, algorytmy i struktury danych materiały do wykładu: http://cez.wipb.pl/moodle/ email: m.tabedzki@pb.edu.pl strona: http://aragorn.pb.bialystok.pl/~tabedzki/ Marek Tabędzki Wymagania

Bardziej szczegółowo

I - Microsoft Visual Studio C++

I - Microsoft Visual Studio C++ I - Microsoft Visual Studio C++ 1. Nowy projekt z Menu wybieramy File -> New -> Projekt -> Win32 Console Application w okienku Name: podajemy nazwę projektu w polu Location: wybieramy miejsce zapisu i

Bardziej szczegółowo

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

Zadanie 04 Ktory z ponizszych typow danych w jezyku ANSI C jest typem zmiennoprzecinkowym pojedynczej precyzji? Zadanie 01 W przedstawionym ponizej programie w jezyku ANSI C w miejscu wykropkowanym brakuje jednej linii: #include... int main() { printf("tralalalala"); return 0; } A. B. "iostream" C.

Bardziej szczegółowo

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

JAVA. Platforma JSE: Środowiska programistyczne dla języka Java. Wstęp do programowania w języku obiektowym. Opracował: Andrzej Nowak JAVA Wstęp do programowania w języku obiektowym Bibliografia: JAVA Szkoła programowania, D. Trajkowska Ćwiczenia praktyczne JAVA. Wydanie III,M. Lis Platforma JSE: Opracował: Andrzej Nowak JSE (Java Standard

Bardziej szczegółowo

#include int main( ) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); }

#include <stdio.h> int main( ) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); } OPERACJE WEJŚCIA / WYJŚCIA Funkcja: printf() biblioteka: wysyła sformatowane dane do standardowego strumienia wyjściowego (stdout) int printf ( tekst_sterujący, argument_1, argument_2,... ) ;

Bardziej szczegółowo

Tablice i struktury. czyli złożone typy danych. Programowanie Proceduralne 1

Tablice i struktury. czyli złożone typy danych. Programowanie Proceduralne 1 Tablice i struktury czyli złożone typy danych. Programowanie Proceduralne 1 Tablica przechowuje elementy tego samego typu struktura jednorodna, homogeniczna Elementy identyfikowane liczbami (indeksem).

Bardziej szczegółowo

ECLIPSE wnioski z dwóch pierwszych laboratoriów

ECLIPSE wnioski z dwóch pierwszych laboratoriów PODSTAWY PROGRAMOWANIA 3-4 WYKŁAD 22-10-2015 ECLIPSE wnioski z dwóch pierwszych laboratoriów Dodanie pliku i konfiguracji startowej (każdy uruchamiany program powinien mieć własna konfigurację startową)

Bardziej szczegółowo

Podstawy Programowania

Podstawy Programowania Podstawy Programowania Łukasz Kuszner http://www.kaims.pl/ kuszner/ kuszner@kaims.pl Wykład, 2012/13 : Strona 1 z 78 1. Zasady Cel Poznać podstawy języka C, zbudować dobre podstawy do dalszej nauki programowania.

Bardziej szczegółowo

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

Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java Cechy C++ Język ogólnego przeznaczenia Można programować obiektowo i strukturalnie Bardzo wysoka wydajność kodu wynikowego

Bardziej szczegółowo

Elementarne wiadomości o języku C

Elementarne wiadomości o języku C Elementarne wiadomości o języku C 1. Wprowadzenie Oprac.: Zbigniew Rudnicki Pierwszą wersję języka C opracował Dennis Ritchie w roku 1972 (wykorzystując niektóre rozwiazania z opracowanych w latach1967-1970

Bardziej szczegółowo

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Laboratorium 3. Instrukcje wyboru

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Laboratorium 3. Instrukcje wyboru JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM Laboratorium 3 Instrukcje wyboru 1 INSTRUKCJE WYBORU Instrukcje sterujące to takie instrukcje, które sterują przebiegiem programu w zależności od spełnienia

Bardziej szczegółowo

Języki C i C++ Wykład: 1. Wstęp Budowa programu Operacje we/wy Instrukcje wyboru. dr Artur Bartoszewski - Języki C i C++, sem.

Języki C i C++ Wykład: 1. Wstęp Budowa programu Operacje we/wy Instrukcje wyboru. dr Artur Bartoszewski - Języki C i C++, sem. Języki C i C++ Wykład: 1 Wstęp Budowa programu Operacje we/wy Instrukcje wyboru 1 dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD Podstawowe pojęcia Środowisko programistyczne Kod źródłowy - program

Bardziej szczegółowo

Program w C. wer. 10 z drobnymi modyfikacjami! Wojciech Myszka :28:

Program w C. wer. 10 z drobnymi modyfikacjami! Wojciech Myszka :28: Program w C wer. 10 z drobnymi modyfikacjami! Wojciech Myszka 2015-05-02 18:28:29 +0200 Tak wygląda program w języku C 1 / Hello World in C, Ansi s t y l e / 2 #include < s t d i o. h> 3 i n t main ( void

Bardziej szczegółowo

Jerzy Nawrocki, Wprowadzenie do informatyki

Jerzy Nawrocki, Wprowadzenie do informatyki Jerzy Nawrocki, Jerzy Nawrocki Wydział Informatyki Politechnika Poznańska jerzy.nawrocki@put.poznan.pl Cel wykładu Programowanie imperatywne i język C Zaprezentować paradygmat programowania imperatywnego

Bardziej szczegółowo

Techniki Programowania

Techniki Programowania Techniki Programowania Łukasz Madej Katedra Informatyki Stosowanej i Modelowania Wykłady opracowane we współpracy z Danutą Szeligą, Łukaszem Sztangretem Dr hab. inż. Łukasz Madej, prof. AGH Budynek B5,

Bardziej szczegółowo

Praktyka Programowania

Praktyka Programowania Praktyka Programowania Dariusz Dereniowski Materiały udostępnione przez Adriana Kosowskiego Katedra Algorytmów i Modelowania Systemów Politechnika Gdańska deren@eti.pg.gda.pl Gdańsk, 2010 strona przedmiotu:

Bardziej szczegółowo

Spis treści JĘZYK C - INSTRUKCJA SWITCH, OPERATORY BITOWE. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia INF05

Spis treści JĘZYK C - INSTRUKCJA SWITCH, OPERATORY BITOWE. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia INF05 Politechnika Białostocka Wydział Elektryczny Katedra Elektrotechniki Teoretycznej i Metrologii Instrukcja do pracowni specjalistycznej z przedmiotu Informatyka 1 Kod przedmiotu: ES1C200 009 (studia stacjonarne)

Bardziej szczegółowo

Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych.

Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych. Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych. 1. Rodzaje pamięci używanej w programach Pamięć komputera, dostępna dla programu,

Bardziej szczegółowo

Funkcje. czyli jak programować proceduralne. Programowanie Proceduralne 1

Funkcje. czyli jak programować proceduralne. Programowanie Proceduralne 1 Funkcje czyli jak programować proceduralne. Programowanie Proceduralne 1 Struktura programu w C # include / Dyrektywy p r e p r o c e s o r a / #define PI 3.1415 float g =. 5 ; / Zmienne

Bardziej szczegółowo

Organizacja kursu, paradygmaty, ogólnie o C i C++

Organizacja kursu, paradygmaty, ogólnie o C i C++ Organizacja kursu, paradygmaty, ogólnie o C i C++ Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechniki Wrocławskiej Kurs: Copyright c 2015 Bogdan

Bardziej szczegółowo

PARADYGMATY PROGRAMOWANIA Wykład 4

PARADYGMATY PROGRAMOWANIA Wykład 4 PARADYGMATY PROGRAMOWANIA Wykład 4 Metody wirtualne i polimorfizm Metoda wirualna - metoda używana w identyczny sposób w całej hierarchii klas. Wybór funkcji, którą należy wykonać po wywołaniu metody wirtualnej

Bardziej szczegółowo

Programowanie komputerowe. Zajęcia 1

Programowanie komputerowe. Zajęcia 1 Programowanie komputerowe Zajęcia 1 Code::Blocks - tworzenie projektu Create New Project Console Application -> C++ Wybierz nazwę projektu Stworzy się nowy projekt z wpisaną funkcją main Wpisz swój program

Bardziej szczegółowo

Kierunek i poziom studiów: Matematyka, studia I stopnia (licencjackie), rok I

Kierunek i poziom studiów: Matematyka, studia I stopnia (licencjackie), rok I Uniwersytet Śląski w Katowicach str. 1 Kierunek i poziom studiów: Matematyka, studia I stopnia (licencjackie), rok I Sylabus modułu: Informatyka B (03-MO1S-12-InfoB) Nazwa wariantu modułu (opcjonalnie):

Bardziej szczegółowo

Wykład 1. Program przedmiotu. Programowanie Obiektowe (język C++) Literatura. Program przedmiotu c.d.:

Wykład 1. Program przedmiotu. Programowanie Obiektowe (język C++) Literatura. Program przedmiotu c.d.: Program przedmiotu Programowanie Obiektowe (język C++) Wykład 1. Definiowanie prostych klas. Przykłady. Przypomnienie: typy referencyjne, domyślne wartości argumentów, przeciąŝanie funkcji. Konstruktory,

Bardziej szczegółowo

PODSTAWY PROGRAMOWANIA W C. Bibliografia W-1. Dr. Inż. Hab. Siergiej Fialko, PK,

PODSTAWY PROGRAMOWANIA W C. Bibliografia W-1. Dr. Inż. Hab. Siergiej Fialko, PK, PODSTAWY PROGRAMOWANIA W C Dr. Inż. Hab. Siergiej Fialko, PK, sfialko@riad.pk.edu.pl http://torus.uck.pk.edu.pl/~fialko Bibliografia 1. B.M. Kernighan and D.M. Ritchie. Język C. WNT, Warszawa, 1988 2.

Bardziej szczegółowo

#include void main(void) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); }

#include <stdio.h> void main(void) { int x = 10; long y = 20; double s; s = x + y; printf ( %s obliczen %d + %ld = %f, Wynik, x, y, s ); } OPERACJE WEJŚCIA / WYJŚCIA Funkcja: printf() biblioteka: wysyła sformatowane dane do standardowego strumienia wyjściowego (stdout) int printf ( tekst_sterujący, argument_1, argument_2,... ) ;

Bardziej szczegółowo

Elektrotechnika I stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny) Kierunkowy (podstawowy / kierunkowy / inny HES)

Elektrotechnika I stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny) Kierunkowy (podstawowy / kierunkowy / inny HES) Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Programowanie komputerów 2 Nazwa modułu w języku angielskim Computer programming

Bardziej szczegółowo

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

Tablice (jedno i wielowymiarowe), łańcuchy znaków Tablice (jedno i wielowymiarowe), łańcuchy znaków wer. 8 z drobnymi modyfikacjami! Wojciech Myszka Katedra Mechaniki i Inżynierii Materiałowej 2017-04-07 09:35:32 +0200 Zmienne Przypomnienie/podsumowanie

Bardziej szczegółowo

Laboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Ćwiczenie 1. Podstawy. Wprowadzenie do programowania w języku C. Katedra Metrologii AGH

Laboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Ćwiczenie 1. Podstawy. Wprowadzenie do programowania w języku C. Katedra Metrologii AGH Laboratorium Podstaw Informatyki Kierunek Elektrotechnika Ćwiczenie 1 Podstawy Wprowadzenie do programowania w języku C Kraków 2010 Twój pierwszy program w C Program w języku C, jak i w wielu innych językach

Bardziej szczegółowo

Programowanie w C/C++ Instrukcje - konstrukcje powtórka. LABORKA Piotr Ciskowski

Programowanie w C/C++ Instrukcje - konstrukcje powtórka. LABORKA Piotr Ciskowski Programowanie w C/C++ Instrukcje - konstrukcje powtórka LABORKA Piotr Ciskowski zadanie 1. Licz się ze sobą Napisz funkcję bez argumentów i bez wyniku, która za każdym wywołaniem będzie podawała, ile razy

Bardziej szczegółowo

Programowanie w C. dr inż. Stanisław Wszelak

Programowanie w C. dr inż. Stanisław Wszelak Programowanie w C dr inż. Stanisław Wszelak Przeszłość i przyszłość składni programowania w C Ken Thompson Denis Ritchie Bjarne Stoustrup Zespoły programistów B C C++ C# 1969 rok Do SO UNIX 1972 rok C++

Bardziej szczegółowo

1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami

1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami 1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami Celem tych zajęć jest zrozumienie i oswojenie z technikami programowania przy pomocy wskaźników w języku C++. Proszę przeczytać rozdział 8.

Bardziej szczegółowo

Programowanie - instrukcje sterujące

Programowanie - instrukcje sterujące Instytut Informatyki Uniwersytetu Śląskiego Laborki środowisko NetBeans, tworzenie nowego projektu; okno projekty; główne okno programu; package - budowanie paczek z klas; public class JavaApplication

Bardziej szczegółowo

Wstęp do programowania obiektowego. Wykład 1 Algorytmy i paradygmaty Podstawowe pojęcia PO

Wstęp do programowania obiektowego. Wykład 1 Algorytmy i paradygmaty Podstawowe pojęcia PO Wstęp do programowania obiektowego Wykład 1 Algorytmy i paradygmaty Podstawowe pojęcia PO 1 Cele przedmiotu Zapoznanie z podstawowymi pojęciami oraz technikami programowania obiektowego na przykładzie

Bardziej szczegółowo

Podstawy Programowania Algorytmy i programowanie

Podstawy Programowania Algorytmy i programowanie Podstawy Programowania Algorytmy i programowanie Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 3 października 2013 r. Algorytm Algorytm w matematyce, informatyce, fizyce, itp. lub innej dziedzinie życia,

Bardziej szczegółowo

Wstęp do Programowania 2

Wstęp do Programowania 2 Wstęp do Programowania 2 dr Bożena Woźna-Szcześniak bwozna@gmail.com Akademia im. Jana Długosza Wykład 1 Literatura Literatura podstawowa: Prata Stephen. Szkoła programowania. Język C++. Wydanie V. Helion,

Bardziej szczegółowo

Elementy języka C. ACprogramislikeafastdanceonanewlywaxeddancefloorbypeople carrying razors.

Elementy języka C. ACprogramislikeafastdanceonanewlywaxeddancefloorbypeople carrying razors. Wykład 3 ACprogramislikeafastdanceonanewlywaxeddancefloorbypeople carrying razors. Waldi Ravens J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 75 / 146 deklaracje zmiennych instrukcja podstawienia

Bardziej szczegółowo

Metodyki i Techniki Programowania 1 1 1. MECHANIZM POWSTAWANIA PROGRAMU W JĘZYKU C PODSTAWOWE POJĘCIA

Metodyki i Techniki Programowania 1 1 1. MECHANIZM POWSTAWANIA PROGRAMU W JĘZYKU C PODSTAWOWE POJĘCIA Metodyki i Techniki Programowania 1 1 ZAJ CIA 3. 1. MECHANIZM POWSTAWANIA PROGRAMU W JĘZYKU C PODSTAWOWE POJĘCIA IDE zintegrowane środowisko programistyczne, zawierające kompilator, edytor tekstu i linker,

Bardziej szczegółowo

przedmiot kierunkowy (podstawowy / kierunkowy / inny HES) obowiązkowy (obowiązkowy / nieobowiązkowy) polski semestr II

przedmiot kierunkowy (podstawowy / kierunkowy / inny HES) obowiązkowy (obowiązkowy / nieobowiązkowy) polski semestr II KARTA MODUŁU / KARTA PRZEDMIOTU Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. Kod modułu Nazwa modułu Nazwa modułu w języku angielskim Obowiązuje od roku akademickiego 2012/1013

Bardziej szczegółowo

for (i=0; i<10; i=i+1) instrukcja; instrukcja zostanie wykonana 10 razy for (inicjalizacja; test; aktualizacja) instrukcja;

for (i=0; i<10; i=i+1) instrukcja; instrukcja zostanie wykonana 10 razy for (inicjalizacja; test; aktualizacja) instrukcja; Rok akademicki 2014/2015, Pracownia nr 5 2/36 Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia niestacjonarne I stopnia Rok akademicki 2014/2015 Pracownia

Bardziej szczegółowo

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu Programowanie strukturalne Opis ogólny programu w Turbo Pascalu STRUKTURA PROGRAMU W TURBO PASCALU Program nazwa; } nagłówek programu uses nazwy modułów; } blok deklaracji modułów const } blok deklaracji

Bardziej szczegółowo

Proste typy zmiennych języka C++ *) Zapis 3.4 e-38 jest równoważny zapisowi 3,

Proste typy zmiennych języka C++ *) Zapis 3.4 e-38 jest równoważny zapisowi 3, WYKŁAD 1. PODSTAWY 1_1. Typy zmiennych Proste typy zmiennych języka C++ Nazwa typu (nazwa skrócona) Rozmiar (bajtów) unsigned char 1 signed char (char) unsigned short int (unsigned) signed short int (int)

Bardziej szczegółowo

WYKŁAD 1 - KONSPEKT. Program wykładu:

WYKŁAD 1 - KONSPEKT. Program wykładu: mgr inż. Jarosław Forenc e-mail: jarekf@pb.bialystok.pl tel. (0-85) 746-93-97 WWW: http://we.pb.bialystok.pl/~jforenc konsultacje: zaliczenie: Program wykładu: WYKŁAD 1 - KONSPEKT 1. Ogólna struktura programu

Bardziej szczegółowo