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



Podobne dokumenty
Programowanie I C / C++ laboratorium 02 Składnia pętli, typy zmiennych, operatory

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

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

Instrukcje sterujące. Programowanie Proceduralne 1

int tab[5]; tab[1]; ciągły obszar pamięci, w którym umieszczone są elementy tego samego typu macierz [ ] - dwuargumentowy operator indeksowania

Instrukcja wyboru, pętle. 2 wykład. Podstawy programowania - Paskal

dr inż. Jarosław Forenc

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

Wstęp do Programowania, laboratorium 02

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

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

( wykł. dr Marek Piasecki )

2 Przygotował: mgr inż. Maciej Lasota

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

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

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

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

MATERIAŁY DO ZAJĘĆ II

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

Podstawy programowania. Wykład: 4. Instrukcje sterujące, operatory. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Programowanie w elektronice: Podstawy C

Programowanie Proceduralne

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

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

1 Podstawy c++ w pigułce.

Programowanie strukturalne i obiektowe

Podstawy programowania w języku C i C++

Microsoft IT Academy kurs programowania

Część 4 życie programu

Język C zajęcia nr 11. Funkcje

Podstawy Informatyki. Kompilacja. Historia. Metalurgia, I rok. Kompilatory C++ Pierwszy program. Dyrektywy preprocesora. Darmowe:

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

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

Podstawy programowania C. dr. Krystyna Łapin

Podstawy Informatyki. Metalurgia, I rok. Wykład 6 Krótki kurs C++

Podstawy i języki programowania

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

1. Wprowadzenie do C/C++

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

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

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

Podstawy programowania w języku C

ROZDZIAŁ 2. Operatory

Programowanie w języku C++

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

PROGRAMOWANIE w C prolog

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

Funkcja (podprogram) void

Opisy funkcji /html_node/libc_528.html

Wskaźniki w C. Anna Gogolińska

Język C zajęcia nr 5

Stałe i zmienne znakowe. Stała znakowa: znak

część 8 wskaźniki - podstawy Jarosław Gramacki Instytut Informatyki i Elektroniki Podstawowe pojęcia

I - Microsoft Visual Studio C++

Co nie powinno być umieszczane w plikach nagłówkowych:

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

Zmienne, stałe i operatory

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

KURS C/C++ WYKŁAD 7. struct Punkt { int x, y; int kolor; };

Laboratorium Podstaw Informatyki Strona 1. Laboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Ćwiczenie 2. Funkcje, operatory i wyrażenia.

1 Podstawy c++ w pigułce.

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

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

Wstęp do programowania 1

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 10 Kurs C++

Programowanie Proceduralne

1. Wprowadzenie do C/C++

Wstęp do programowania INP003203L rok akademicki 2016/17 semestr zimowy. Laboratorium 1. Karol Tarnowski A-1 p.

Programowanie Proceduralne

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

Wstęp do programowania 1

dr inż. Jarosław Forenc

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

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

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

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

5 Przygotował: mgr inż. Maciej Lasota

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

Wstęp do programowania

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

Operatory AND, OR, NOT, XOR Opracował: Andrzej Nowak Bibliografia:

Instrukcje warunkowe i skoku. Spotkanie 2. Wyrażenia i operatory logiczne. Instrukcje warunkowe: if else, switch.

Podstawy programowania 1

Operacje wejścia/wyjścia odsłona pierwsza

Odczyt danych z klawiatury Operatory w Javie

Tablice, funkcje, wskaźniki - wprowadzenie

Stuck in the loop. Sterowanie. Marcin Makowski. 29 października Zak lad Chemii Teoretycznej UJ

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

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

Wskaźniki. nie są konieczne, ale dają językowi siłę i elastyczność są języki w których nie używa się wskaźników typ wskaźnikowy typ pochodny:

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

TABLICE W JĘZYKU C/C++ typ_elementu nazwa_tablicy [wymiar_1][wymiar_2]... [wymiar_n] ;

Pętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady

OPERACJE WEJŚCIA / WYJŚCIA. wysyła sformatowane dane do standardowego strumienia wyjściowego (stdout)

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

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

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

Języki i paradygmaty programowania

Podstawy programowania - 1

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

Transkrypt:

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 < stdio.h> int main (){ char a = a ; printf ("%c\n", a); printf ("%d\n", a); return 0; } // main

Typ znakowy Typ znakowy Typ wyliczeniowy # include < stdio.h> int main (){ char a = a ; for (a = A ; a <= Z ; a ++){ printf ("%d %c\n", a, a); } return 0; } // main

Typ wyliczeniowy Typ znakowy Typ wyliczeniowy # include < stdio.h> int main (){ enum dni {Pn, Wt, Sr, Cz, Pt, So, Ni }; enum dni dzien = Sr; } printf (" Mamy dzis Poniedzialek \n") if ( dzien == Pn ){ } return 0;

int a, b; a = 11; b = 4; printf ("%d\n", a); printf ("%d\n", -a); printf ("%d\n", a + b ); printf ("%d\n", a - b ); printf ("%d\n", a * b ); printf ("%d\n", a / b ); // dzielenie calkowite printf ("%d\n", a % b ); // dzielenie modulo

Zadanie Jaka jest wartość operacji? -1-2 -3 2 + 2 * 2 1-4 / 2 * 3 1 / 3 1 / 3.0 1 % 3 1 % 3.0

Zadanie Jaka jest wartość operacji? -1-2 -3 2 + 2 * 2 1-4 / 2 * 3 1 / 3 1 / 3.0 1 % 3 1 % 3.0 błąd kompilacji, drugi argument jest float

Przesunięcia bitowe int a, b; a = 3; b = 2; scanf ("%d %d", &a, &b); printf ("%d\n", a << b); // przesuniecie bitowe w lewo printf ("%d\n", a >> b); // przesuniecie bitowe w prawo

Zadanie Jaka jest wartość operacji? 1 << 1 1 << 2 2 << 1 3 << 2 5 << 2 3 >> 1 3 >> 2

Operacje bitowe int a, b; scanf ("%d %d", &a, &b); printf ("%d\n", a b); // alternatywa bitowa printf ("%d\n", a & b); // koniunkcja bitowa printf ("%d\n", a ^ b); // xor bitowy

Zadanie Jaka jest wartość operacji? 2 3 2 & 3 2 ^ 3 5 8 5 & 8 5 ^ 8 dany jest adres IP = a.b.c.d, a, b, c, d {0, 255} oraz maska M {0, 31} oblicz adres sieci i rozgłoszeniowy z wykorzystaniem operacji bitowych

int a, b; scanf ("%d %d", &a, &b); a = b; a += b; a -= b; a *= b; a /= b; a %= b; a <<= b; a >>= b; a = b; a &= b; a ^= b;

Inkrementacja i dekrementacja int b, a = b = 3; printf ("%d\n", ++a); printf ("%d\n", b ++); float c = 30; printf ("%e\n", --c); printf ("%d %d %.2 e \n", a, b, c);

Zadanie Co wypisze program? int a = 0; int b = a++; printf("%d", a++ ); int a = 0; int b = a++; a += ++b; printf("%d", ++b + a++ );

Rzutowanie float f = 3.12345; int a = 3; printf ("%d\n", ( int )(a + f) ); long long l = 3L; printf ("%d\n", ( int ) l ); float g =.0000000011; int r = ( int ) f ^ ( int ) g; printf ("%d\n", r); Zadanie: spróbuj usunąć któreś z rzutowań i skompiluj program z flagą -Wall

int a; switch (a) { case 1: printf ("1\n"); case 2: case 3: printf ("2 lub 3\n"); break ; case 4: break ; case 5: { int b = a +1; printf ("5 %d\n", b); break ; } // case 5 default : printf (" cos innego \n"); break ; }; // switch

Tablice Tablice int Tablice char int n =10; int a[n]; a [0] = 2; a [1] = 3; printf ("%d\n", a [2]); tablice w C są indeksowane od zera

Tablice - alokacja w miejscu Tablice int Tablice char int a[] = { 9, 3, 4, 8, 1}; printf ("%d %d \n", a[0], a [4]); odwołanie się do elementu poza tablicą daje się skompilować ale może powodować błędy pisanie do elementu poza tablicą powoduje segmentation fault

Tablice znaków Tablice int Tablice char char a[] = " Ala ma kota "; printf ("%c%c%c%c\n", a [10], a[9], a[8], a [7] ); printf (" **% c\n**", a [11]); napis w C jest tablicą znaków

Tablice znaków Tablice int Tablice char char a [10]; a [0] = a [2] = a ; a [1] = l ; printf ("%s\n", a ); a [3] = \0 ; printf ("%s\n", a); napis jest terminowany za pomocą znaku '\0'

Jak sprawdzić długość napisu? Tablice int Tablice char # include < stdio.h> # include < string.h> int main (){ char a [10]; gets (a); printf ("%d\n", strlen (a )); return 0; } // main