Starý program Program s pointerom
|
|
- Dušan Špringl
- před 6 lety
- Počet zobrazení:
Transkript
1 VII-1
2 Pointery Pointery (ukazatele, smerníky) sú srdcom a dušou jazyka C. Pokiaľ ich nebudete používať, ušetríte si veľa problémov (každý algoritmus sa dá napísať bez nich, aj keď možno neefektívne). Pointer je premenná ako každá iná, ibaže definuje adresu v pamäti, a na tejto adrese sa ukrýva skutočná hodnota. hodnota symbolická adresa poi *poi absolútna adresa premenná poi je pointer hodnota poi je 25 (číslo uložené na symbolickej adrese poi je 25) číslo 25 sa nevyužije priamo k výpočtu, ale predstavuje absolútnu adresu v pamäti na absolútnej adrese 25 v pamäti je číslo 18 (určené na použitie k výpočtu) poi ukazuje na hodnotu 18, ale sám má hodnotu 25 VII-2
3 Načo sú pointery? Urýchlenie programov. "Profesionalita." Zmena hodnôt premenných dodávaných funkcii bez toho, že by museli byť definované ako globálne - volanie odkazom - pointery použijeme, keď chceme zmeniť vo funkcii hodnotu parametra natrvalo, namiesto hodnoty dáme funkcii adresu premennej. Narábanie s polom. operátor * povie prekladači, že hodnota premennej je iba adresa a k výpočtu sa má použiť hodnota na dotyčnej adrese pomocou operátoru * môžeme získať obsah na adrese, na ktorú ukazuje pointer i=*poi; ale aj opačne *poi=5; Operátor & má opačný význam ako *, teda dostane sa ním adresa pamäti, na ktorej je premenná uložená. VII-3
4 Starý program #include <stdio.h> #define MAX 10 void main(void) { int a[max], b[max], i; for(i=0; i<max; i++) a[i]=i; for(i=0; i<max; i++) b[i]=a[i]; for(i=0; i<max; i++) printf("%d",b[i]); Program s pointerom #include <stdio.h> #define MAX 10 void main(void) { int a[max], b[max], i, *p, *q; for(i=0; i<max; i++) a[i]=i; for(i=0,p=a,q=b; i<max; i++) *q++ = *p++; for(i=0; i<max; i++) printf("%d",b[i]); VII-4
5 Starý program #include <stdio.h> int x=0; void zmena_premennej(void) { x++; main() { zmena_premennej(); printf("x = %d",x); Program s pointerom #include <stdio.h> void zmena_premennej(int *premenna) { (*premenna)++; main() { int x; zmena_premennej(&x); printf("x = %d",x); VII-5
6 Prehodenie prvkov #include <stdio.h> void vymen(int *p_x, int *p_y) { int pom; pom=*p_x; *p_x=*p_y; *p_y=pom; main() { int i=5, j=3; vymen(&i,&j); printf("i=%d, j=%d"); VII-6
7 výmena adresy a dynamické priraďovanie adries sú typickým použitím pointerov Napr. namiesto výmeny dvoch veľkých "štruktúr", napr. polí, sa vymenia iba adresy ich počiatočného prvku veľmi častá chyba je vymen(i,j); bude zapisovať na absolútne adresy 3 a 5 program zmrzne vymen(*i,*j); bude zapisovať na adresy adries - program zmrzne VII-7
8 Pred volaním vymen(&i,&j); 5 3 i j Po zavolaní vymen(&i,&j); 5 3 i p_x pom p_y j Pred koncom vymen(&i,&j); 5 3 i p_x pom p_y j VII-8
9 Pozor, pamäť, na ktorú ukazuje pointer, musí byť pred zápisom na tú adresu pridelená, v prípade zápisu do nepridelenej pamäti nás prekladač neupozorní!!! int *poi; // pointer poi *poi=5; // zle!!!! Keďže pointeru nebola priradená adresa, ukazuje na náhodné miesto v pamäti, teda hodnota 5 môže prepísať inú premennú alebo príkaz v programu Pointer je vždy zviazaný s nejakým dátovým typom (napr int), ale pozor, u príkazu int *poi, poi2; iba poi je definícia pointera, poi2 je už normálne celé číslo, správne má byť int *poi, *poi2; int i, *p_i=&i; Toto je definícia p_i a jeho súčasná inicializácia adresou premennej i VII-9
10 Priradenie hodnoty pointerom *p_i=1; // OK *(p_i+3)=1; // podozrive, pokial // p_i nie je pole p_i=&i; // OK p_i=&(i+3); // chyba p_i=&15; // chyba p_i=3; // takmer isto chyba //p_i ukazuje na absol. adresu 3 i=p_i; // takmer isto chyba // do i je dana adresa i=&p_i; // takmer isto chyba // do i je dana adresa adresy p_i=&i; // adresa i do p_i i=3; // aj i, aj *p_i je 3 *p_i=4; // aj i, aj *p_i je 4 j=5; *p_i=j; // aj i, aj *p_i je 5 VII-10
11 Operátor * má vyššiu prioritu ako +, teda i=*p_i+1; je vlastne i=(*p_i)+1; #include <stdio.h> main() { int i, j, *p_i; scanf("%d %d",&i,&j); if(i>j) p_i=&i; else p_i=&j; printf("vetsi je %d \n",*p_i); VII-11
12 void spocti_medzery(int *p_medzery)) { int c; *p_medzery=0; while((c=getchar())!= '\n') if(c==' ') (*p_medzery)++; main() { int medzery; spocti_medzery(&medzery); printf("na riadku bolo %d medzier.", medzery); VII-12
13 Pointer na typ void void *p_void; takýto pointer neukazuje na žiaden konkrétny typ, preto sa dá použiť na ľubovoľný typ int i; float f; void *p_void=&i; // p_void ukazuje na i main() { *(int *) p_void=2; // i bude 2 p_void=&f; // ukazuje na f *(float *) p_void=1.2; // f je 1.1 VII-13
14 void ako formálny parameter funkcie #include <stdio.h> void vymen_pointery(void **p_x, void **p_y) { void *p_pom; p_pom=*p_x; *p_x=p_y; *p_y=p_pom; main() { int i=5, j=6, p_i=&i, p_j=&j; vymen_pointery((void*)&p_i, (void*)&p_j); printf("%d %d",*p_i,*p_j); Namiesto niekoľko funkcií, pre každý typ dvojice pointerov zvlášť, sa dá použiť jedna funkcia. VII-14
15 Pointery na funkcie double *p_fd(); znamená funkciu, ktorá vracia pointer na double double (*p_fd)(); znamená pointer na funkciu, ktorá vracia double VII-15
16 Tabelácia dvoch polynómov x 2 +8, x 3-3 od 0 po 1 po 0.1 double pol1(double x) { return(x*x+8); double pol2(double x) { return(x*x*x-3); main() { double x; double (*p_fd)(double x); for(int i=0;i<2;i++) { if(i==0) p_fd=pol1; else p_fd=pol2; for(x=0;x<=1;x+=0.1) printf("%lf %lf\n", x,(*p_fd)(x)); VII-16
17 Ako čítať komplikované definície int x; // x je typu int float *y; // y je pointer na typ float double *z(); // z je funkcia vracajúca // na typ double int *(*v)(); // v je pointer na funkciu // vracajúcu pointer na typ int nájdeme identifikátor, teda "v" a povieme v je čítame doprava, dokiaľ nenarazíme na ")", ktorá nás vracia doľava na "(", odkiaľ čítame zasa doprava, teda "*"... pointer na... preskakujeme už prečítané doprava, pokiaľ nenarazíme na ")" alebo bodkočiarku, u nás to bude (), teda...funkciu vracajúcu... bodkočiarka nás vráti doľava, pretože vpravo už sme všetko prečítali, čítame doľava "*"...pointer na... doľava "int"...int teda v je pointer na funkciu vracajúcu pointer na int VII-17
18 Pointerová aritmetika pre i je typu int pointer +i pointer i pointer1 <= pointer2 (aj všetky ostatné druhy porovnávania) pointer1 - pointer2 Operáror sizeof zistí veľkosť skúmaného dátového typu v Bytoch. Je vyhodnotený pri prekladu, nezdržiava teda program. Využitie pri prideľovaní dynamickej pamäti int i, *p_i; i=sizeof(*p_i); // v i bude počet Bytov // nutných pre uloženie objektu, na ktorý ukazuje // p_i, teda int (pozor, pri poliach sa musí násobiť // veľkosťou pola) VII-18
19 Súčet pointeru a celého čísla Výraz p+n znamená, že sa odkazujeme na n-tý prvok za prvkom, na ktorý práve ukazuje pointer p. Keď p ukazuje na char, hodnota adresy tohto prvku je (char *) p + sizeof(*p) * n teda k pointeru pričítame nie číslo n, ale násobok tohto čísla a veľkosti typu, na ktorý pointer ukazuje. char *p_c=10; // sizeof(char)==1 int *p_i=10; // sizeof(int)==2 float *p_f=10; // sizeof(float)==4 Po pričítaní jednotky platí p_c+1==11 p_i+1==12 p_f+1==14 Výraz typu p_i=p_i+5; bude ukazovať na 5-tý prvok za pôvodným prvkom časté u polí VII-19
20 Odčítanie celého čísla od pointeru p-i funguje podobne ako pričítanie, teda odkazuje na n-tý prvok pred prvkom, na ktorý odkazuje pointer p Porovnávanie pointerov < <= > >= ==!= má zmysel vtedy, keď obidva pointery ukazujú napr. na jedno pole Kopírovanie pamäti Keď p_c a p_d sú pointery na typ char, pričom p_c ukazuje na začiatok pole veľkosti MAX, skopírujeme toto pole nasledovne char *p_t; for(p_t=p_c; p_t<p_c+max; *p_d++=*p_c++) ; Po ukončení kopírovaní ukazuje p_d za prvý Byte za novo skopírovaným blokom, teda je dobre dať príkaz p_d -=MAX; VII-20
21 Odpočítavanie pointerov p_d-p_c má zmysel, keď pointery ukazujú na rovnaké pole dát k zistení počtu prvkov medzi pointerami. Sčítanie pointerov je nezmysel. Predpokladajme predchádzajúci blok dát. Nasledujúca časť programu nájde v tomto bloku znak "?" a vytlačí jeho pozíciu, alebo keď "?" nie je, vytlačí 1. for(p_d=p_c; *p_d!='?' && p_d<p_c+max; p_d++) ; printf("%d\n", (p_d<p_c+max)? p_d-p_c+1 : -1); VII-21
22 Práca s pamäťou Štatická alokácia keď vieme prekladači dopredu presne povedať, aké budeme mať v programu pamäťové nároky. V priebehu behu nášho programu sa nerobí žiadna manipulácia s prideľovaním pamäti. Kedy to nestačí? Napr. pri rekurzívnom volaní funkcie každé volanie vyžaduje nový blok pamäti pre svoje premenné a prekladač nevie, koľkokrát bude funkcia volaná. Alebo pri načítaní celého súboru do pamäti nevieme obecne dopredu povedať jeho dĺžku. Štatiská alokácia vymedzuje miesto v dátovej oblasti napr. všetky globálne premenné. VII-22
23 Dynamická alokácia vymedzuje pamäť na "hromade" (heap). Pamäť možno prideľovať v priebehu výpočtu. Nemá symbolické meno a pristupuje sa do nej pomocou pointerov. Existencia lokálnych premenných vo funkciách ("podprogramoch") začína pri vstupu do funkcie a končí pri výstupu z funkcie (potom môže byť využitá na iné účely) premennú, ktorú potrebujeme iba vo funkcii, ale musí si ponechávať hodnotu medzi volaniami tejto funkcie treba definovať špeciálne definíciou tejto premennej. VII-23
24 Pamäťové triedy extern pre premenné v inom moduli static pre lokálne premenné, ktoré si ponechávajú svoju hodnotu aj medzi jednotlivými volaniami funkcie #include <stdio.h> void f(void) { int x=2; static int i; printf("f bola volana %d-krat,x=%d\n",i,x); i++; x++; main() { for(j=0;j<3;j++) f(); f bola volana 0-krat, x=2 f bola volana 1-krat, x=2 f bola volana 2-krat, x=2 VII-24
25 Typový modifikátor const keď sa raz premenná zadefinuje, nesmie byť menená const float pi= ; ale const int max=100; int pole[max]; // sa nesmie pouzit VII-25
26 Dynamické prideľovanie a návrat pamäti Štandardné funkcie, napr. malloc() pridelia blok pamäti potrebnej veľkosti a vráti jeho adresu. Veľkosť pridelenej dynamickej pamäti musí byť závislá na veľkosti objektu, na ktorý pointer ukazuje. Dáta existujú až do konca programu alebo do uvolnení pamäti príkazom free(). Knižnice: #include <stdlib.h> #include <alloc.h> Funkcie malloc() má jediný parameter typu unsigned int určujúci počet bytov, ktoré chceme alokovať. Vracia pointer na typ void, ktorý treba pretypovať. Keď nie je dostatok miesta, vracia hodnotu NULL je dobre testovať, či sa podarilo prideliť pamäť. VII-26
27 #include <stdio.h> void main(void) { int *p_i; if((p_i=(int *) malloc(sizeof(int)*1000) == NULL) { printf("malo pamati\n"); exit(1); VII-27
28 Uvoľňovanie pamäti Je dobré nepotrebnú pamäť ihneď vrátiť. Parametrom funkcie free() je pointer na typ void. free((void *) p_i); Keby sme chceli prideliť ďaľšiu pamäť na rovnaký pointer p_i=malloc(20); bez predchádzajúceho uvolnenia pamäti, tých 1000 predchádzajúcich integerov nám ostane "visieť" v pamäti a až do konca behu programu sa k nim nedostaneme, lebo nevieme ich pointer. Funkcia calloc() na pole calloc(n,size) odpovedá malloc(n*size) VII-28
29 Pole a pointery int pole[10]; // staticke pole pole[5] je totožné s *(pole+5) &pole[5] je totožné s pole+5*sizeof(int) int *pole2; // dynamicke pole pole2=(int*)malloc(10*sizeof(int)); pole aj pole2 sú pointery na int, ale pole je konštanta, jej hodnota sa už nedá meniť, zatiaľ čo pole2 je premenná, ktorej sa dá priradiť iná pamäť Je jedno, či bolo pole alokované štaticky alebo dynamicky, môže sa adresovať aj pole2[5] aj *(pole2+5) platí pole2[0]==*pole2 VII-29
30 Pole s rôznou dĺžkou riadkov napríklad pre polovicu matice pod diagonálou int *xx[3];//pole troch pointerov for(i=0;i<3;i++) xx[i]= (int *)malloc((i+1)*sizeof(int)); xx xx[0] xx[0][0] xx[1] xx[1][0] xx[1][1] xx[2] xx[2][0] xx[2][1] xx[2][2] POZOR, pole xx[0][1] by ukazovalo na neznámu oblasť pamäti!!! VII-30
31 Polia ako parametre funkcií Pole môže byť parametrom funkcie tak, že sa prenáša adresa začiatku poľa pomocou pointeru. Položky poľa potom môžu byť vo funkcii menené a túto zmenu si ponechajú aj po opustení funkcie. Nasledujúca funkcia nájde najväčší prvok z poľa o ROZSAH prvkoch. double maxim(double pole[],int rozsah) { double *p_max=pole, *p_pom; for(p_pom=pole+1; p_pom<pole+rozsah; p_pom++) if(*p_pom>*p_max) p_max=p_pom; return(*p_max); double pole[] môže byť nahradené pomocou double *pole VII-31
32 funkcia by bola volaná napr. max=maxim(pole, velkost_pole); Pokiaľ vo funkcii pracujeme s poľom a je nutné poznať jeho veľkosť, potom táto veľkosť musí byť daná ako ďalší formálny parameter. Predchádzajúca funkcia sa dá použiť aj na nájdenie maxima z výseku polia, napr. od tretieho do siedmeho prvku max=maxim(pole+2, 5); alebo max=maxim(&pole[2], 5); VII-32
33 Pointer ako skutočný parameter funkcie Program prečíta z klávesnice 10 double čísel, uloží ich do pamäti a vypočíta ich súčin #include <stdio.h> #include <stdlib.h> #define SIZE 10 double *init(void) { return ((double *) malloc(size * sizeof(double))); void citanie(double *p_f) { for(int i=0;i<size;i++) { printf("%d. cislo: ",i+1); scanf("%lf",p_f+i); // bez &! void nasob(double *p_f, int size, double *sucin) { for(size -, *sucin=*(p_f+size); size>=0; size--) *sucin *= *(p_f+size); VII-33
34 main() { double *p_dbl; suc; if((p_dbl=init())==null) return; // nedostatok pamati-koniec citanie(p_dbl); nasob(p_dbl,size,&suc); printf("sucin: %12.3lf \n",suc); Pri funkcii nasob() sa prvý parameter p_dbl uvádza bez &, pretože je to pointer, zatiaľ čo tretí parameter suc sa uvádza s &, pretože je to premenná. VII-34
35 VII-35
Programovanie v jazyku C - to chce dynamiku
CVIČENIE 8/13 (S7) Programovanie v jazyku C - to chce dynamiku About rozdiel medzi statickou a dynamickou alokaciou pamate pre c objekty, spojkove zoznamy Basic knowledge kazda premenna musi mat pocas
PODPROGRAMY. Vyčlenenie podprogramu a jeho pomenovanie robíme v deklarácii programu a aktiváciu vykonáme volaním podprogramu.
PODPROGRAMY Podprogram je relatívne samostatný čiastočný algoritmus (čiže časť programu, ktorý má vlastnosti malého programu a hlavný program ho môže volať) Spravidla ide o postup, ktorý bude v programe
Úroveň strojového kódu procesor Intel Pentium. Adresovanie pamäte
Úroveň strojového kódu procesor Intel Pentium Pamäťový operand Adresovanie pamäte Priama nepriama a indexovaná adresa Práca s jednorozmerným poľom Praktické programovanie assemblerových funkcií Autor:
Př. další použití pointerů
Př. další použití pointerů char *p_ch; int *p_i; p_ch = (char *) p_i; // konverze int * na char * 8 int i = 5; int *p_i; p_i = &i; POZOR!!!! scanf("%d", p_i); printf("%d", *p_i); Obecný pointer na cokoliv:
Dynamická alokácia pamäte a smerníky
ÚINF/JAC1a (Programovací jazyk C) Dynamická alokácia pamäte a smerníky robert.novotny@upjs.sk 18. 10. 2011 Alokácia pamäte v C v C je manažovaná len staticky alokovaná pamäť t. j. pre premenné, ktorých
IUJCE 07/08 Přednáška č. 6
Správa paměti Motivace a úvod v C (skoro vždy) ručně statické proměnné o datový typ, počet znám v době překladu o zabírají paměť po celou dobu běhu programu problém velikosti definovaných proměnných jak
VECIT 2006 Tento materiál vznikol v rámci projektu, ktorý je spolufinancovaný Európskou úniou. 1/4
Príklad 1 Naučte korytnačku príkaz čelenka. Porozmýšľajte nad využitím príkazu plnytrojuhol60: viem plnytrojuhol60 opakuj 3 [do 60 vp 120 Riešenie: definujeme ďalšie príkazy na kreslenie trojuholníka líšiace
Polia a matice v jazyku C. Michal Kvasnica
Polia a matice v jazyku C Michal Kvasnica Reťazec ako pole znakov reťazcový dátový typ rezervovaná pamäť char retazec[pocet_znakov]; názov premennej Reťazec ako pole znakov char retazec[pocet_znakov];
Čo ak program potrebuje pamäť, ktorej veľkosť závisí od konkrétneho vstupu?
SPRÁVA PAMÄTE Čo ak program potrebuje pamäť, ktorej veľkosť závisí od konkrétneho vstupu? a.) Programátor môže odhadnúť maximálnu možnú veľkosť a vyhradiť tento priestor v statických premenných (riešenie
IUJCE 07/08 Přednáška č. 4. v paměti neexistuje. v paměti existuje
Konstanty I možnosti: přednostně v paměti neexistuje žádný ; o preprocesor (deklarace) #define KONSTANTA 10 o konstantní proměnná (definice) const int KONSTANTA = 10; příklad #include v paměti
Programovanie v jazyku C - pole treba poorat...
CVIČENIE 3/13 (SW2) Programovanie v jazyku C - pole treba poorat... PrednaskaB: Operátory, pravidla vyhodnocování PrednaskaZ: Číselné typy, operátory, typové konstrukce, pole a struktury About zadefinovanie
Funkcia - priradenie (predpis), ktoré každému prvku z množiny D priraďuje práve jeden prvok množiny H.
FUNKCIA, DEFINIČNÝ OBOR, OBOR HODNÔT Funkcia - priradenie (predpis), ktoré každému prvku z množiny D priraďuje práve jeden prvok množiny H. Množina D definičný obor Množina H obor hodnôt Funkciu môžeme
Programovanie I. Úvod do programovania Mgr. Stanislav Horal, Katedra informatiky, FPV, UCM
Programovanie I 9.10.2007 Úvod do programovania Mgr. Stanislav Horal, Katedra informatiky, FPV, UCM Algoritmus (1) Existuje niekoľko definícií pojmu algoritmus Algoritmus je presná postupnosť krokov a
Programovanie v jazyku C - struktury a polia
CVIČENIE 6/13 (S7) Programovanie v jazyku C - struktury a polia About struktury, rozdiel medzi polom a strukturou, polia struktur, polia smernikov, bublinkove triedenie Basic knowledge pole je homogenny
Úvod do programování. Lekce 5
I N V E S T I C E D O R O Z V O J E V Z D Ě L Á V Á N Í Inovace a zvýšení atraktivity studia optiky reg. č.: CZ.1.07/2.2.00/07.0289 Úvod do programování Lekce 5 Tento projekt je spolufinancován Evropským
Operační systémy. Cvičení 4: Programování v C pod Unixem
Operační systémy Cvičení 4: Programování v C pod Unixem 1 Obsah cvičení Řídící struktury Funkce Dynamická alokace paměti Ladění programu Kde najít další informace Poznámka: uvedené příklady jsou dostupné
Studentove t-testy. Metódy riešenia matematických úloh
Studentove t-testy Metódy riešenia matematických úloh www.iam.fmph.uniba.sk/institute/stehlikova Jednovýberový t-test z prednášky Máme náhodný výber z normálneho rozdelenia s neznámymi parametrami Chceme
8. Relácia usporiadania
8. Relácia usporiadania V tejto časti sa budeme venovať ďalšiemu špeciálnemu typu binárnych relácií v množine M - reláciám Najskôr si uvedieme nasledujúce štyri definície. Relácia R definovaná v množine
Pracovné prostredie MS EXCEL 2003.
Pracovné prostredie MS EXCEL 2003. Tabuľkové kalkulátory sú veľmi praktické aplikácie pre realizáciu výpočtov, grafických prezentácií údajov, ako aj pe prácu s rôznymi údajmi ako s bázou dát. Tieto programy
Imagine. Popis prostredia:
Priemerný človek si zapamätá približne: - 10 % z toho, čo číta, - 20 % z toho, čo počuje, - 30 % z toho, čo vidí v podobe obrazu, - 50 % z toho, čo vidí a súčasne počuje, - 70 % z toho čo súčasne vidí,
ALGORITMY A PROGRAMOVANIE VO VÝVOJOVOM PROSTREDÍ LAZARUS. Vývojové prostredie Lazarus, prvý program
ALGORITMY A PROGRAMOVANIE VO VÝVOJOVOM PROSTREDÍ LAZARUS Vývojové prostredie Lazarus, prvý program Lazarus si môžete stiahnuť z http://lazarus.freepascal.org 1 Začíname sa učiť programovací jazyk Pascal
Ak stlačíme OK, prebehne výpočet a v bunke B1 je výsledok.
Hľadanie riešenia: ak poznáme očakávaný výsledok jednoduchého vzorca, ale vstupná hodnota, ktorú potrebujeme k určeniu výsledku je neznáma. Aplikácia Excel hľadá varianty hodnoty v určitej bunke, kým vzorec,
To bolo ľahké. Dokážete nakresliť kúsok od prvého stromčeka rovnaký? Asi áno, veď môžete použiť tie isté príkazy.
Opakuj a pomenuj Nakreslime si ovocný sad Príklad 1 Pomocou príkazového riadku skúste s korytnačkou nakresliť ovocný stromček. Vaša postupnosť príkazov sa možno podobá na nasledujúcu:? nechfp "hnedá? nechhp
Textový editor WORD. Práca s obrázkami a automatickými tvarmi vo Worde
Textový editor WORD Práca s obrázkami a automatickými tvarmi vo Worde WordArt WordArt je objekt, pomocou ktorého vieme vytvoriť text s rôznymi efektami. Začneme na karte Vložiť, kde použijeme ikonu WordArt.
M úlohy (vyriešené) pre rok 2017
M úlohy (vyriešené) pre rok 2017 Nájdite najmenšie prirodzené číslo, ktorého ciferný súčet je 2017 Ak má byť prirodzené číslo s daným ciferným súčtom čo najmenšie, musí mať čo najviac číslic 9 Pretože
Programovanie v jazyku C - funkcie a makra
CVIČENIE 4/13 (S7) Programovanie v jazyku C - funkcie a makra About co je to funkcia a procedura, rekurzivne funkcie, co je to makro TODO: ŘETĚZCE řetězec je pole znaků zakončené 0 ( \0 má ASCI-kód 0,
RIEŠENIE NIEKTORÝCH ÚLOH LINEÁRNEJ ALGEBRY V PROSTREDÍ MS EXCEL. 1. Zadáme prvky matice A a B do buniek pracovného hárku zošita MS Excel
RIEŠENIE NIEKTORÝCH ÚLOH LINEÁRNEJ ALGEBRY V PROSTREDÍ I. VÝPOČET SÚČINU MATÍC Vypočítajme súčin matíc C = A B, ak existuje, pre dané matice A a B. 1. Zadáme prvky matice A a B do buniek pracovného hárku
1. Formát exportov typu *.gpc (ABO)
Popis štruktúry technických formátov exportných súborov zverejnené 22/10/2016 1. Formát exportov typu *.gpc (ABO) Štruktúra GPC súboru: Štruktúra záznamu Hlavička exportu : Hlavička exportu účet X Obratová
7.1 Návrhové zobrazenie dotazu
7.1 Návrhové zobrazenie dotazu Ovládanie návrhového zobrazenia, ktoré je jedným z možností zobrazenia dotazu, je nevyhnutné pri tvorbe zložitejších dotazov, pretože v ňom môžeme definovať akýkoľvek dotaz
Objektovo orientované programovanie v C# ERIK KUČERA METÓDY VÝPOČTOVEJ INTELIGENCIE PREDNÁŠKA 3
Objektovo orientované programovanie v C# ERIK KUČERA METÓDY VÝPOČTOVEJ INTELIGENCIE PREDNÁŠKA 3 Statické členy Statické členy nie sú takým pilierom OOP ako dedičnosť alebo polymorfizmus, ale sú užitočným
Prevody z pointfree tvaru na pointwise tvar
Prevody z pointfree tvaru na pointwise tvar Tomáš Szaniszlo 2010-03-24 (v.2) 1 Príklad (.(,)). (.). (,) Prevedenie z pointfree do pointwise tvaru výrazu (.(,)). (.). (,). (.(,)). (.). (,) Teraz je funkcia
Ďalší spôsob, akým je možné vygenerovať maticu je použitie zabudovaných funkcií na generovanie elementárnych matíc.
MATICE MATLAB poskytuje obrovskú podporu práce s maticami. Táto hodina sa bude zaoberať základmi práce s maticami. Cieľom prvej časti hodiny je objasnenie základných princípov tvorby matíc, ich editáciu
Zvyškové triedy podľa modulu
Zvyškové triedy podľa modulu Tomáš Madaras 2011 Pre dané prirodzené číslo m 2 je relácia kongruencie podľa modulu m na množine Z reláciou ekvivalencie, teda jej prislúcha rozklad Z na systém navzájom disjunktných
Kvadratické funkcie, rovnice, 1
Kvadratické funkcie, rovnice, 1. ročník Kvadratická funkcia Kvadratickou funkciu sa nazýva každá funkcia na množine reálnych čísel R daná rovnicou y = ax + bx + c, kde a je reálne číslo rôzne od nuly,
15. Príkazy vetvenia
Príkaz vetvenia je zložený riadiaci príkaz. Používame ho vtedy, keď potrebujeme, aby sa určitý príkaz alebo príkazy vykonal/vykonali iba vtedy, keď je splnená nejaká podmienka. V programe sa vykoná iba
Kombinatorická pravdepodobnosť (opakovanie)
Kombinatorická pravdepodobnosť (opakovanie) Metódy riešenia úloh z pravdepodobnosti a štatistiky Beáta Stehlíková, FMFI UK Bratislava www.iam.fmph.uniba.sk/institute/stehlikova Príklad 1: Zhody kariet
Např.: // v hlavičkovém souboru nebo na začátku // programu (pod include): typedef struct { char jmeno[20]; char prijmeni[20]; int rok_nar; } CLOVEK;
Struktury - složený datový typ. - datový typ jehož položky jsou jiné proměnné: - používá obvykle dohromady s příkazem typedef nechci vypisovat opakovaně složitou deklaraci pomocí typedef udělám nový datový
4. Typ ukazatel, strukturované datové typy
Učební cíle a kompetence Anotace kapitoly Časová náročnost 4. Typ ukazatel, strukturované datové typy Po prostudování této kapitoly studující pochopí datový typ ukazatel, speciální ukazatelové operátory,
Algoritmizace a programování
Algoritmizace a programování Strukturované proměnné Pole (array), ukazatele (pointer) Jazyk C České vysoké učení technické Fakulta elektrotechnická Ver.1.10 J. Zděnek 2015 Pole (array) (1) Pole je množina
MATLAB (1) - úvod do programovania vedeckých problémov. LS 2017, 8.predn.
MATLAB (1) - úvod do programovania vedeckých problémov LS 2017, 8.predn. Program predmetu: 1. týždeň: úvod, základné info o Matlabe, pracovné prostredie Matlabu, interaktívny režim, prvé info o písaní
Operačný systém Úvodná prednáška
Operačný systém Úvodná prednáška Pohľad zvonka (z vyšších úrovní) Pohľad zvnútra Pojmy správy procesov Úlohy jednotlivých častí operačného systému Autor: Peter Tomcsányi, Niektoré práva vyhradené v zmysle
Program "Inventúra program.xlsm"
1 / 14 Program "Inventúra program.xlsm" Program pracuje s reportami, ktoré majú ako zdroj dát tabuľku inventárnych dát. Program je uložený ako VBA projekt v Excel súbore "Inventúra Program.xlsm". Program
Základy algoritmizácie a programovania
Základy algoritmizácie a programovania Pojem algoritmu Algoritmus základný elementárny pojem informatiky, je prepis, návod, realizáciou ktorého získame zo zadaných vstupných údajov požadované výsledky.
3 Determinanty. 3.1 Determinaty druhého stupňa a sústavy lineárnych rovníc
3 eterminanty 3. eterminaty druhého stupňa a sústavy lineárnych rovníc Začneme úlohou, v ktorej je potrebné riešiť sústavu dvoch rovníc o dvoch neznámych. a x + a 2 x 2 = c a 22 a 2 x + a 22 x 2 = c 2
Microsoft Outlook. Stručný prehľad základných funkcií. Ing.Anna Grejtáková, SPP DFBERG
Microsoft Outlook Stručný prehľad základných funkcií Ing.Anna Grejtáková, SPP DFBERG Poslanie Stručne popísať základné funkcie MS Outlook. Upozorniť na problémy, ktoré tu už boli... Odpovedať na Vaše otázky,čo
V nej je potrebné skontrolovať správnosť prenesených a prepočítaných zostatkov z roku 2008.
WinJU ročná uzávierka a prechod na euro Postup prechodu na EURO Vo Win aplikáciách nie je kvôli euru zakladané nové dátové prostredie, ale pokračuje sa v pôvodnej dátovej štruktúre do konca roku 2008 budú
Funkce, intuitivní chápání složitosti
Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti Funkce, intuitivní
DOBROPISY. Dobropisy je potrebné rozlišovať podľa základného rozlíšenia: 1. dodavateľské 2. odberateľské
DOBROPISY Dobropisy je potrebné rozlišovať podľa základného rozlíšenia: 1. dodavateľské 2. odberateľské 1. DODAVATEĽSKÉ to znamená, že dostanem dobropis od dodávateľa na reklamovaný, alebo nedodaný tovar.
Riešenie cvičení z 3. kapitoly
Riešenie cvičení z 3. kapitoly Cvičenie 3.1. Prepíšte z prirodzeného jazyka do jazyka výrokovej logiky: (a) Jano pôjde na výlet a Fero pôjde na výlet; (1) vyjadrite túto vetu pomocou implikácie a negácie
1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:
1. lekce 1. Minimální program do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: #include #include int main() { printf("hello world!\n"); return 0; 2.
Pokročilé programování v jazyce C pro chemiky (C3220) Operátory new a delete, virtuální metody
Pokročilé programování v jazyce C pro chemiky (C3220) Operátory new a delete, virtuální metody Dynamická alokace paměti Jazyky C a C++ poskytují programu možnost vyžádat si část volné operační paměti pro
Správné vytvoření a otevření textového souboru pro čtení a zápis představuje
f1(&pole[4]); funkci f1 předáváme hodnotu 4. prvku adresu 4. prvku adresu 5. prvku hodnotu 5. prvku symbolická konstanta pro konec souboru je eof EOF FEOF feof Správné vytvoření a otevření textového souboru
11a Dynamické dvourozměrné pole (obdobně vícerozměrné)
11a Dynamické dvourozměrné pole (obdobně vícerozměrné) počet hvězdiček == počet rozměrů (dimenze pole) int **p_2d; int radku, sloupcu; printf("zadejte pocet radku a sloupcu pole:"); scanf("%d,%d", &radku,
8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek
8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek 1/41 Základní příkazy Všechny příkazy se píšou malými písmeny! Za většinou příkazů musí být středník (;)! 2/41 Základní příkazy
AR, MA a ARMA procesy
Beáta Stehlíková FMFI UK Bratislava Overovanie stacionarity a invertovateľnosti Opakovanie - stacionarita AR procesu Zistite, či je proces x t = 1.2x t 1 + 0.5x t 2 + 0.3x t 3 + u t stacionárny. Napíšte
Úvod do jazyka C. Ing. Jan Fikejz (KST, FEI) Fakulta elektrotechniky a informatiky Katedra softwarových technologií
1 Fakulta elektrotechniky a informatiky Katedra softwarových technologií 12. října 2009 Organizace výuky Přednášky Teoretické základy dle normy jazyka C Cvičení Praktické úlohy odpřednášené látky Prostřední
Kombinatorická pravdepodobnosť (opakovanie)
Kombinatorická pravdepodobnosť (opakovanie) Metódy riešenia úloh z pravdepodobnosti a štatistiky Cvičenie 1 Beáta Stehlíková, FMFI UK Bratislava www.iam.fmph.uniba.sk/institute/stehlikova Príklad 1: Zhody
Návod k servisnému programu pre fiskálny modul FM2000. manuál. (c)varos
Návod k servisnému programu pre fiskálny modul FM2000. manuál (c)varos Servisný program pre fiskálny modul J&V Safe. Servisným programom sa nastavujú parametre fiskálneho modulu, ktoré nie sú bežne dostupné
ČÍSELNÉ RADY. a n (1) n=1
ČÍSELNÉ RADY Budeme sa zaoberať výrazmi, ktoré obsahujú nekonečne veľa sčítancov. Takéto výrazy budeme nazývať nekonečné rady. V nasledujúcom príklade je ilustrované, ako môže takýto výraz vzniknúť. Príklad.
INTERNET BANKING. Popis štruktúry technických formátov exportných súborov VŠETKO, ČO JE MOŽNÉ. with.vub.sk,
INTERNET BANKING Popis štruktúry technických formátov exportných súborov VŠETKO, ČO JE MOŽNÉ www.vub.sk, with.vub.sk, 0850 123 000 Bank of VYNOVENÝ INTERNET BANKING Nový moderný dizajn Dostupnosť zo všetkých
Základní datové typy, proměnné - deklarujeme předem - C je case sensitive rozlišuje malá a velká písmena v názvech proměnných a funkcí
02 Jazyk C - je imperativní říkáme, co se má udělat, voláme příkazy - další imperativní jazyky: Pascal, Java, C/C++ apod. - na rozdíl od jazyků deklarativních např. Prolog, Haskell, Scheme, Lisp (funkcionální
Pole a Funkce. Úvod do programování 1 Tomáš Kühr
Pole a Funkce Úvod do programování 1 Tomáš Kühr (Jednorozměrné) pole u Datová struktura u Lineární u Homogenní = prvky stejného datového typu u Statická = předem určený počet prvků u Pole umožňuje pohodlně
Programovanie v jazyku C - ti to zratam...
CVIČENIE 2/13 (S7) Programovanie v jazyku C - ti to zratam... PrednaskaB: Datové typy PrednaskaZ: Výrazy a příkazy, programové konstrukce, operátory About aritmeticke operacie TODO: Declaration vs. definition
MANUÁL K PROGRAMU MATEMATIKA 2.0 STIAHNUTIE A INŠTALÁCIA PROGRAMU:
MANUÁL K PROGRAMU MATEMATIKA 2.0 Program na precvičovanie učiva z matematiky na nájdeme na stránke http://www.slunecnice.cz/sw/4321-matematika/. STIAHNUTIE A INŠTALÁCIA PROGRAMU: Po kliknutí na Stáhnout
9.3.2010 Program převod z desítkové na dvojkovou soustavu: /* Prevod desitkove na binarni */ #include <stdio.h>
9.3.2010 Program převod z desítkové na dvojkovou soustavu: /* Prevod desitkove na binarni */ #include int main(void) { int dcislo, kolikbcislic = 0, mezivysledek = 0, i; int vysledek[1000]; printf("zadejte
Blokové a prúdové šifry
Informačná bezpečnosť 2, jar 2015 Blokové a prúdové šifry Ján Karabáš Blokové šifry a dlhé správy Bloková šifra je vhodná pre zašifrovanie iba jedného, relatívne krátkeho bloku Blok je skupina znakov (otvorenej
ÚVOD DO HRY PRINCIP HRY
Počet hráčů: 2-6 Věk: od 6 let Délka hry: cca 20 min. Obsah: 66 hracích karet: 45 karet s čísly (hodnota 0 8 čtyřikrát, hodnota 9 devětkrát), 21 speciálních karet (9 karet Výměna, 7 karet Špehuj, 5 karet
OCHRANA INOVÁCIÍ PROSTREDNÍCTVOM OBCHODNÝCH TAJOMSTIEV A PATENTOV: DETERMINANTY PRE FIRMY EURÓPSKEJ ÚNIE ZHRNUTIE
OCHRANA INOVÁCIÍ PROSTREDNÍCTVOM OBCHODNÝCH TAJOMSTIEV A PATENTOV: DETERMINANTY PRE FIRMY EURÓPSKEJ ÚNIE ZHRNUTIE júl 2017 OCHRANA INOVÁCIÍ PROSTREDNÍCTVOM OBCHODNÝCH TAJOMSTIEV A PATENTOV: DETERMINANTY
1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:
1. lekce 1. Minimální program do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: #include #include int main() { printf("hello world!\n"); return 0; 2.
for (i = 0, j = 5; i < 10; i++) { // tělo cyklu }
5. Operátor čárka, - slouží k jistému určení pořadí vykonání dvou příkazů - oddělím-li čárkou dva příkazy, je jisté, že ten první bude vykonán dříve než příkaz druhý. Např.: i = 5; j = 8; - po překladu
Automatický timer pre DX7 návod na inštaláciu a manuál
Automatický timer pre DX7 návod na inštaláciu a manuál Upozornenie: Aj keď je modul pre DX7 obvodovo takmer totožný s modulom pre DX6i, majú niektoré súčiastky odlišnú hodnotu a v procesore je úplne iný
Ružové obrázkové slová skladanie slov z písmen
Ružové obrázkové slová skladanie slov z písmen Obrázkové slová slúžia na skladanie slov podľa začiatočných písmeniek z obrázkov. Montessori postupuje od skladania slov k ich čítaniu. Keď sa dieťa naučí
MANUÁL K TVORBE CVIČENÍ NA ÚLOHY S POROZUMENÍM
MANUÁL K TVORBE CVIČENÍ NA ÚLOHY S POROZUMENÍM Cvičenia na úlohy s porozumením si vieme pre žiakov vytvoriť v programe, ktorý stiahneme zo stránky http://www.education.vic.gov.au/languagesonline/games/comprehension/index.htm.
TomTom Referenčná príručka
TomTom Referenčná príručka Obsah Rizikové zóny 3 Rizikové zóny vo Francúzsku... 3 Upozornenia na rizikové zóny... 3 Zmena spôsobu upozornenia... 4 tlačidlo Ohlásiť... 4 Nahlásenie novej rizikovej zóny
Total Commander. Základné nastavenia
je program, ktorý patrí k nadstavbovým programom OS. Jeho použitie je podobné ako u prieskumníka. Používa sa na jednoduchú prácu s adresármi (zložka, priečinok, folder) a súbormi. prezerať priečinky vyrobiť
Ako započítať daňovú licenciu
Ako započítať daňovú licenciu 1. Zápočet daňovej licencie a jej evidencia... 1 2. Započítanie DL v plnej sume... 1 3. Nárok na čiastočný zápočet DL... 2 4. Bez nároku na zápočet, daň < DL... 3 5. Bez nároku
Struktura programu v době běhu
Struktura programu v době běhu Miroslav Beneš Dušan Kolář Struktura programu v době běhu Vztah mezi zdrojovým programem a činností přeloženého programu reprezentace dat správa paměti aktivace podprogramů
Strojový kód, assembler, emulátor počítača
Strojový kód, assembler, emulátor počítača Návrh architektúry hypotetického procesora Strojový kód Assemblerový jazyk Programovanie v assemblerovom jazyku: Lineárny program Vetvenie Cyklus Emulátor počítača
Hromadná korešpondencia v programe Word Lektor: Ing. Jaroslav Mišovych
Hromadná korešpondencia v programe Word 2010 Lektor: Ing. Jaroslav Mišovych Obsah Čo je hromadná korešpondencia Spustenie hromadnej korešpondencie Nastavenie menoviek Pripojenie menoviek k zoznamu adries
Ukazatel (Pointer) jako datový typ - proměnné jsou umístěny v paměti na určitém místě (adrese) a zabírají určitý prostor (počet bytů), který je daný
Ukazatel (Pointer) jako datový typ - proměnné jsou umístěny v paměti na určitém místě (adrese) a zabírají určitý prostor (počet bytů), který je daný typem proměnné - ukazatel je tedy adresa společně s
Triedenie. Príklad T.1 Vytvorte funkciu, ktorá zistí počet rôznych hodnôt v poli.
Triedenie je činnosť, po skončení ktorej pre všetky dovolené hodnoty indexov poľa platí, že pole[i] pole[i+1]. Pre triedenie zoznamov (list, a teda aj našich polí) máme v Pythone k dispozícii funkciu zoznam.sort()
Strukturu lze funkci předat: (pole[i])+j. switch(výraz) velikost ukazatele
Strukturu lze funkci předat: hodnotou i pomocí ukazatele pouze pomocí ukazatele (reference na strukturu) pouze hodnotou (kopie struktury) (pole[i])+j adresa prvku na souřadnicích i, j adresa i-tého řádku
Jazyk C++, některá rozšíření oproti C
Karel Müller, Josef Vogel (ČVUT FIT) Jazyk C++, některá rozšíření oproti C BI-PA2, 2011, Přednáška 1 1/22 Jazyk C++, některá rozšíření oproti C Ing. Josef Vogel, CSc Katedra softwarového inženýrství Katedra
Množiny, relácie, zobrazenia
Množiny, relácie, zobrazenia Množiny "Množina je súhrn predmetov, vecí, dobre rozlíšiteľných našou mysľou alebo intuíciou" "Množina je súbor rôznych objektov, ktoré sú charakterizované spoločnými vlastnosťami,
Skákalka. Otvoríme si program Zoner Callisto, cesta je Programy Aplikácie Grafika Zoner Callisto.
Skákalka Otvoríme si program Zoner Callisto, cesta je Programy Aplikácie Grafika Zoner Callisto. Vyberieme si z ponuky tvarov kruh a nakreslíme ho (veľkosť podľa vlastného uváženia). Otvoríme si ponuku
Vytvorenie používateľov a nastavenie prístupov
Vytvorenie používateľov a nastavenie prístupov 1. Vytvorenie používateľov Spustite modul Správa systému, prihláste sa ako používateľ sa, z ponuky vyberte Evidencie Používatelia - Zoznam. Pomocou tlačidla
P R O L U C. POZNÁMKY individuálnej účtovnej závierky pre rok 2014
P R O L U C POZNÁMKY individuálnej účtovnej závierky pre rok 2014 Spustenie... 2 Doporučená verzia pre otvorenie a uloženie poznámok - Acrobat Reader XI... 2 Prvotné nastavenie a podmienky spracovania....
Pointery II. Jan Hnilica Počítačové modelování 17
Pointery II 1 Pointery a pole Dosavadní způsob práce s poli zahrnoval: definici pole jakožto kolekce proměnných (prvků) jednoho typu, umístěných v paměti za sebou int pole[10]; práci s jednotlivými prvky
Finančné riaditeľstvo Slovenskej republiky
Finančné riaditeľstvo Slovenskej republiky Informácia k výpočtu preddavkov na daň z príjmov FO Výška preddavkov na daň v preddavkovom období od 1.4.2015 do 31.3.2016 sa vyčísli z poslednej známej daňovej
Zaciatok programovania na
Zaciatok programovania na itnc 530 HEIDENHAIN Poznamka : Tento navod bude vytvoreny pomocou virtualnej klávesnice. Jej nastavenie je popisane v navode Instalacia a nastavenie Simulatora. Samozrejme, mozete
Import Excel Univerzál
Import Excel Univerzál PRÍKLAD Ako jednoducho postupova pri importe akéhoko vek súboru z MS Excel do programu CENKROS plus, ktorý má podobu rozpo tu (napr. rozpo et vytvorený v inom programe)? RIEŠENIE
nastavenie a realizácia vzájomných zápočtov v Money S4 / Money S5
VZÁJOMNE ZÁPOČTY nastavenie a realizácia vzájomných zápočtov v Money S4 / Money S5 Aparát vzájomných zápočtov v Money S4/S5 slúži k návrhu vzájomných zápočtov pohľadávok a záväzkov a následne k automatickej
Konfigurácia IP Bell 02C Dverný vrátnik a FIBARO Home Center 2
Konfigurácia IP Bell 02C Dverný vrátnik a FIBARO Home Center 2 Použité zariadenia: Riadiaca jednotka - Fibaro Home Center 2 vo verzii 4.059 BETA Dverný vrátnik - IP Bell 02C od spoločnosti ALPHATECH TECHNOLOGIES
Modré obrázkové slová skladanie slov z písmen
Modré obrázkové slová skladanie slov z písmen Obrázkové slová slúžia na skladanie slov podľa začiatočných písmeniek z obrázkov. Montessori postupuje od skladania slov k ich čítaniu. Keď sa dieťa naučí
SKLADOVÁ INVENTÚRA 1 VYTVORENIE INVENTÚRY. 1.1 Nastavenie skladovej inventúry
SKLADOVÁ INVENTÚRA Skladové inventúry umožňujú vyrovnanie evidovaného stavu zásob so skutočným fyzicky zisteným stavom. Pri inventúre vznikajú inventúrne rozdiely medzi fyzickým a evidenčným stavom: kladné
Užívateľská príručka. Vytvorte 1 medzi stránkami v niekoľkých jednoduchých krokoch
Užívateľská príručka Vytvorte 1 medzi stránkami v niekoľkých jednoduchých krokoch EXO TECHNOLOGIES spol. s r.o. Garbiarska 3 Stará Ľubovňa 064 01 IČO: 36 485 161 IČ DPH: SK2020004503 support@exohosting.sk
STRUČNÝ NÁVOD NA OBSLUHU DATALOGERA KIMO KT110 / 150
STRUČNÝ NÁVOD NA OBSLUHU DATALOGERA KIMO KT110 / 150 1. Inštalácia softvéru KILOG Pre dokončenie inštalácie je potrebné potvrdiť všetky čiastkové inštalácie, ktoré sa budú ponúkať v inštalačnom okne. Strana
TELCO PH 578. telefónny prístroj. Návod na obsluhu Návod na obsluhu Návod na obsluhu VLASTNOSTI:
Návod na obsluhu Návod na obsluhu Návod na obsluhu telefónny prístroj TELCO PH 578 VLASTNOSTI: Opakovanie posledného voleného čísla REDIAL Pauza vo voľbe čísla Spätný dotaz na pobočkovú ústredňu FLASH
KOMISNÝ PREDAJ. Obr. 1
KOMISNÝ PREDAJ Komisný predaj sa realizuje na základe komisionárskej zmluvy, pričom ide v podstate o odložený predaj, kde práva k výrobku alebo tovaru prevedie dodávateľ (výrobca, komitent) na predajcu
INTERNET BANKING. Platby cez Internet banking VŠETKO, ČO JE MOŽNÉ. with.vub.sk, Bank of
INTERNET BANKING Platby cez Internet banking VŠETKO, ČO JE MOŽNÉ www.vub.sk, with.vub.sk, 0850 123 000 Bank of VYNOVENÝ INTERNET BANKING Nový, moderný dizajn Dostupnosť zo všetkých zariadení Prehľad o