Složeni tipovi podataka
|
|
- Toril Johansen
- 6 år siden
- Visninger:
Transkript
1 Složeni tipovi podataka Složeni tipovi? C raspolaže sljedećim složenim tipovima podataka: polja (indeksirane promjenljive) jednodimenzionalno = NIZ, dvodimenzionalno = MATRICA, višedimenzionalno strukture unije
2 Polja NIZOVI? Nizovi Niz ili vektor je jednodimenzionalno polje To je skup podataka istog tipa U memoriji se smješta u niz uzastopnih mem. lokacija Svi podaci u nizu imaju jedno ime = IME NIZA Ime niza predstavlja početnu adresu niza u memoriji Svaki element u nizu određen je: imenom niza, i indeksom (pomjerajem u odnosu na početak niza) niz[7] niz[6] niz[5] niz[4] niz[3] niz[2] niz[1] niz[0] MEMORIJA
3 Polja NIZOVI? Deklaracija niza Opšti oblik deklaracije: tip ime_niza [broj_elemenata] = lista vrijednosti tip niza (tip podataka u nizu) ime niza (identifikator u skladu sa sintaksom jezika, važe sva pravila kao i za skalarne promjenljive) broj elemenata u nizu (cjelobrojna konstanta) (rezerviše se potreban broj bajtova za memorisanje deklarisanog broja elemenata) vrijednosti elemenata u nizu (inicijalizacija niza) (nije obavezno inicijalizovanje) (vrijednosti se razdvajaju zapetama)
4 Polja NIZOVI? Deklaracija niza Primjer deklaracije: int niz[5]; char tekst[10]; Primjer: #define MAX 5 #define LENG 10 main() int niz[max]; char tekst[leng];... tekst[9] tekst[1] tekst[0] niz[4] niz[3] niz[2] niz[1] niz[0] MEMORIJA tekst 10*1B = 10B niz 5*2B = 10B
5 Polja NIZOVI? Deklaracija niza Primjer deklaracije sa inicijalizacijom: int A[3]=1,2,3; int B[]=1,2,3,4; A[0] A[1] A[2] B[0] B[1] B[2] B[3] int C[5]=10; int D[5]=0; C[0] C[1] C[2] C[3] D[0] D[1] D[2] D[3] C[4] 0 D[4] 0
6 Polja NIZOVI? Primjer: Učitati niz od n cijelih brojeva, pa ih ispisati redoslijedom kojim su učitani. #include <stdio.h> #define MAX 100 main() int niz[max]; int i,n; do printf( n= ); scanf( %d, &n); while (n<1); for ( i=1 ; i<=n ; i++ ) printf( Unesite %d. broj: ); scanf( %d, &niz[i-1]); printf( Unijeli ste: ); for ( i=0 ; i<n ; i++ ) printf( %d, niz[i]); POČETAK n ISTINA n < 1 LAŽ i = 1, n niz[i-1] i = 0, n-1 niz[i] KRAJ
7 Polja NIZOVI? Primjer: Učitati niz od n cijelih brojeva, pa ih ispisati obrnutim redoslijedom. #include <stdio.h> #define MAX 100 main() int niz[max]; int i,n; do printf( n= ); scanf( %d, &n); while (n<1); for ( i=1 ; i<=n ; i++ ) printf( Unesite %d. broj: ); scanf( %d, &niz[i-1]); printf( Unijeli ste: ); for ( i=n ; i>=1 ; i++ ) printf( %d, niz[i-1]); POČETAK n ISTINA n < 1 LAŽ i = 1, n niz[i-1] i = n, 1 niz[i-1] KRAJ
8 Polja NIZOVI? Primjer: Učitati niz od n cijelih brojeva, pa ispisati njihovu aritmetičku sredinu i one učitane brojeve koji su veći od sredine. POČETAK n ISTINA n < 1 s = 0 LAŽ i = 0, n-1 niz[i] s = s + niz[i] ISTINA niz[i] T as = s/n i = 0, n-1 niz[i]>as KRAJ LAŽ #include <stdio.h> #define MAX 100 main() int niz[max]; int i,n,s=0; float as; do printf( n= ); scanf( %d, &n); while (n<1); for (i=0;i<=n-1;i++) printf( Unesite broj: ); scanf( %d, &niz[i]); s+=niz[i]; as=(float)s / n; printf( Sredina: %7.3f\n,as); printf( Veci su: ); for ( i=0 ; i<n ; i++ ) if (niz[i]>as) printf( %d, niz[i]); T
9 Polja NIZOVI? SORTIRANJE Primjer: Program koji učitava niz cijelih brojeva, a zatim ih ispisuje u rastućem redoslijedu. Sortiranje niza: Sortiranje je postupak kojim se mijenja poredak elemenata u nizu, kako bi se podaci doveli u željeni redoslijed: rastući (ascending) opadajući (descending) Rješenje problema? Postoji velik broj algoritama za sortiranje Najpopularniji algoritmi za sortiranje: select-sort bubble-sort quick-sort shell-sort stack-sort...
10 Polja NIZOVI? SORTIRANJE SELECT-SORT int i, j, niz[] = 5, 2, 9, 4, pom; for(i=0; i<3; i++) // N-1 PROLAZA for(j=i+1; j<4; j++) if(niz[i]>niz[j]) pom = niz[i]; niz[i]=niz[j]; niz[j] = pom; niz[] pom ?
11 Polja MATRICE? Dvodimenzionalna polja Element niza može da bude novi niz tako dobijamo dvodimenzionalno polje (matrica) j... m-1 mat[1][0] i red (vrsta) n-1 mat[i][j] kolona (stupac) mat[n-1][m-1]
12 Polja MATRICE? Deklaracija matrice Opšti oblik deklaracije: tip ime_mat [D1][D2] = L1,L2,...,Ln-1 tip matrice (tip podataka) ime matrice vrijednosti elemenata u matrici inicijalizacija matrice nije obavezno inicijalizovanje dimenzije matrice D1 = broj redova D2 = broj kolona rezerviše se potreban broj bajtova za memorisanje D1*D2 elemenata
13 Polja MATRICE? Deklaracija matrice Primjer deklaracije: char tablica[2][3]; logička predstava tablica[1][2] tablica[1][1] tablica[1][0] tablica[0][2] tablica[0][1] tablica[0][0] MEMORIJA fizička predstava
14 Polja MATRICE? Deklaracija matrice Primjer deklaracije sa inicijalizacijom: int mat[2][3] = 3,1,8, 2,5,6 ; Primjer deklaracije sa inicijalizacijom: int mat[2][3] = 3,1,8 ;
15 Polja MATRICE? Manipulacija matricom Primjer učitavanja matrice: for ( red=1; red<=n; red++ ) for ( kol=1; kol<=m; kol++ ) printf( mat[%d][%d]=,red-1,kol-1); scanf( %d, &mat[red-1][kol-1]); ili: for ( red=0; red<n; red++ ) for ( kol=0; kol<m; kol++ ) printf( mat[%d][%d]=,red,kol); scanf( %d, &mat[red][kol]);
16 MATRICE? Polja Manipulacija matricom Primjer ispisivanja matrice: for ( red=1; red<=n; red++ ) for ( kol=1; kol<=m; kol++ ) printf( %4d,mat[red-1][kol-1]); printf( \n ); ili: for ( red=0; red<n; red++ ) for ( kol=0; kol<m; kol++ ) printf( %4d,mat[red][kol]); printf( \n );
17 Polja MATRICE? Manipulacija matricom Primjer manipulacije glavnom dijagonalom: mat[0][0] mat[1][1] mat[i][i] mat[i][j], i=j mat[n-1][n-1] Ispis elemenata na glavnoj dijagonali: printf( Glavna dijagonala: ); for ( i=0; i<n; i++ ) printf( %d, mat[i][i]); Suma elemenata na glavnoj dijagonali: for ( s=i=0; i<n; i++ ) s+=mat[i][i]; printf( Suma elemenata na GD: %d,s);
18 Polja MATRICE? Manipulacija matricom Primjer transponovanja matrice polazna matrica Ispis transponovane matrice na osnovu originalne matrice: printf( Transponovana:\n ); for ( i=0; i<n; i++ ) for ( j=0; j<n; j++ ) printf( %4d, mat[j][i]); printf( \n ); transponovana matrica Transponovanje matrice: ) for ( i=0; i<n; i++ ) for ( j=i+1; j<n; j++ pom=mat[i][j]); mat[i][j]=mat[j][i]; mat[j][i]=pom;
19 MATRICE? Polja Manipulacija matricom Primjer množenja dvije matrice * ??? 30??? 66??? Matrica A (m*n) Matrica B (n*p) Matrica C (m*p) Množenje matrica: for ( i=0; i<m; i++ ) /* red matrice C */ for ( j=0; j<p; j++ ) /* kolona matrice C */ for ( k=0; k<n; k++ ) c[i][j]+=a[i][k]*b[k][j];
20 Polja VIŠE DIMENZIJE? Višedimenzionalna polja C omogućava i manipulaciju višedimenzionalnim poljima Trodimenzionalno polje tip ime[d1][d2][d3]; Primjer deklaracije: int kocka[3][6][6]; Primjer 4-dim. polja: char P4[d1][d2][d3][d4]; kocka[sloj][red][kolona]
21 prenos VEKTORA u funkciju? Polja - Funkcije VEKTOR (polje) kao argument funkcije Prenos vektora (polja) vrši se putem adrese 1. prilikom poziva funkcije šalje se adresa niza (vektora) kao stvarni argument navodi se ime niza (ime niza je početna adresa niza) 2. funkcija prihvata adresu niza formalni argument u definicji funkcije mora da sadrži [ ] broj elemenata niza ne mora da se navodi ne stvara se kopija niza nego se manipuliše stvarnim podacima U funkciji se manipuliše stvarnim podacima, a ne kopijom niza. Zato funkcija može da promijeni niz, pa po povratku iz funkcije nemamo originalni nego modifikovani niz!!!
22 Polja - Funkcije prenos VEKTORA u funkciju? Primjer: Program koji pronalazi najveći element u nizu. #include <stdio.h> int max ( int niz[], int n); main() int a[] = 2,15,5,0,8 ; int n = 5; printf( Najveci: %d\n, max( a,n ) ); int max ( int niz[], int n ) int i, m=niz[0]; for (i=1; i<n; i++) if (niz[i]>m) m=a[i]; return (m); Najveci: 15 Poziv funkcije šalje se adresa niza Formalni argument deklaracija niza bez dimenzije moglo je i int niz[5]
23 prenos VEKTORA u funkciju? Polja - Funkcije Primjer: Program koji sortira i ispisuje niz korišćenjem funkcija. #include <stdio.h> void sort ( int niz[], int n); void pisi ( int niz[], int n); main() int a[] = 2,15,5,0,8 ; printf( Prije: ); pisi( a,n ); sort( a,n ); printf( Poslije: ); pisi( a,n ); void pisi ( int niz[], int n ) int i; for (i=0; i<n; i++) printf( %d, niz[i]); printf( \n ); void sort ( int niz[], int n ) int i,j,rb,pom; for (i=0; i<n-1; i++) for (rb=i, j=i+1; j<n; j++) if (niz[j]<niz[rb]) rb=j; if (rb!=i) pom=niz[i]; niz[i]=niz[rb]; niz[rb]=pom; Prije: Poslije:
24 Polja - Funkcije prenos MATRICE u funkciju? VIŠEDIMENZIONALNO polje kao argument funkcije Prenos višedimenzionalnog polja vrši se putem adrese U deklaraciji formalnih parametara: prva dimenzija ne mora da se navede (može samo [ ] ) ostale dimenzije moraju da se navedu Primjer: int funkcija (int a[][10][10], int p, int q) ili int funkcija (int a[10][10][10], int p, int q) U funkciji se manipuliše stvarnim podacima, a ne kopijom polja. Zato po povratku iz funkcije nemamo originalno nego modifikovano polje!!!
25 Polja - Funkcije prenos MATRICE u funkciju? Primjer: Program koji transponuje kvadratnu matricu. #include <stdio.h> void tran ( int m[10][10], int n); void pisi ( int m[10][10], int n); main() int a[10][10] = 1,2,3,4 ; printf( Prije:\n ); pisi(a,n); tran( a,n ); printf( Poslije:\n ); pisi(a,n); void pisi (int m[10][10], int n) int i,j; for (i=0; i<n; i++) for (j=0; j<n; j++) printf( %4d, m[i][j]); printf( \n ); void tran (int m[10][10], int n) int i,j,pom; for (i=0; i<n; i++) for (j=i+1; j<n; j++) pom=m[i][j]; m[i][j]=m[j][i]; m[j][i]=pom; Prije: Poslije:
26 Pokazivači (pointeri) POINTERI? Pokazivači (Pointeri) Pokazivači obezbjeđuju indirektan pristup memoriji (putem adrese) Pokazivač je promjenljiva koja sadrži memorijsku adresu nekog objekta ako je u pitanju polje tada je to adresa početnog elementa polja ako je u pitanju funkcija tada je to adresa početka funkcije Ako promjenljiva p sadrži adresu objekta q, kažemo da p pokazuje na q Primjer: p 100 q 65 MEMORIJA adresa Deklaracija pokazivača: Primjer: tip *ime; int *pi; char *pc, *tekst;
27 Pokazivači (pointeri) POINTERI? Operatori za rad sa pokazivačima Adresni operator & daje adresu nekog objekta u memoriji Ako je q neka promjenljiva tada &q daje adresu te promjenljive Ako želimo da pokazivač p pokazuje na promjenljivu q imamo p=&q p p=&q 100 q 65 MEMORIJA adresa Operator indirekcije * omogućava indirektan pristup promjenljivoj koristeći pokazivač na tu promjenljivu Ako je s neka promjenljiva, a p pokazivač na isti tip, tada se može pisati s=*p. To znači da će q dobiti vrijednost koja se nalazi na lokaciji koju pokazuje p p=&q s p q 65 MEMORIJA adresa s=*p
28 Pokazivači (pointeri) POINTERI? Operatori za rad sa pokazivačima Adresni operator & i operator indirekcije * su INVERZNI OPERATORI Primjer: ili y = *& x ili int x,y,*z; z = &x; y = *z; #include <stdio.h> main() int x, prom=5, *pokaz; pokaz = &prom; x = *pokaz; y = x printf( prom=%d\nx=%d\n,prom,x); y = *z = *&x = x prom=5 x=5
29 Pokazivači (pointeri) POINTER NA POLJE? Pokazivač na vektor (jednodimenzionalno polje) Ime vektora (niza) predstavlja adresu početnog elementa vektora i već je samo po sebi pokazivač (statički pokazivač) int a[5]=0; int *p, *q; a[0] a[1] a[2] a[3] a[4] 0 p = a; ili p = &a[0]; q = a+3; ili q = &a[3]; Napomena: a je statička promjenljiva Nije dozvoljeno a=a+2; ili a++; Napomena: p je dinamička promjenljiva Dozvoljeno je p=p+2; ili p++;
30 Pokazivači (pointeri) POINTER NA POLJE? Pokazivač na vektor (jednodimenzionalno polje) Primjer: #include <stdio.h> static int x[5] = 1,2,3,4,5; main() int *p; p = x; printf( %d %d %d\n, x[0], x[1], x[2]); printf( %d %d %d\n, *p, *(p+1), *(p+2) );
31 Pokazivači (pointeri) POINTER NA POLJE? Prenos vektora u funkciju pomoću pokazivača Pretpostavimo da imamo funkciju int funkcija (niz, n) int niz[], n;... pristup elementima u nizu niz[indeks] ili int funkcija (p, n) int *p, n;... pristup pomoću pointera *(p+indeks) Primjer: int suma (int niz[], int n) int s=0, i; for (i=0; i<n; i++) s += niz[i]; return (s); Primjer: int suma (int *p, int n) int s=0, i; for (i=0; i<n; i++) s += *(p+i); return (s);
32 Pokazivači (pointeri) POINTER NA POLJE? Pokazivač na matricu (dvodimenzionalno polje) int *p; mat[0][0] 0 1 i j... m-1 p = mat; ili p = &mat[0][0]; n-1 mat[i][j] *( mat + m*i + j ) ili *( &mat[0][0] + m*i + j )
33 Pokazivači (pointeri) ADRESNA ARITMETIKA? Adresna aritmetika Neka je: a vektor sa elementima tipa T v izraz tipa T n cjelobrojni izraz p, q pokazivači na tip T (pokazuju na elemente niza a) Tada važe sljedeća pravila: a pokazivač na početak niza &a[0] pokazivač na početak niza *p element niza a na koji pokazuje p *p=v elementu na koji pokazuje p dodjeljuje vrijednost v ++p pokazuje na sljedeći element niza --p pokazuje na prethodni element niza *++p inkrementira p, pa pristupa tom (sljedećem) elementu *p++ - pristupa elementu na koji pokazuje p, a zatim pokazuje na sljedeći element p+n - pokazuje na n-ti naredni element niza *(p+n)=v dodjeljuje vrijednost v n-tom narednom elementu u nizu u odnosu na element na koji pokazuje p q-p - određuje broj elemenata niza smještenih između adresa na koje pokazuju q i p
34 Pokazivači (pointeri) ADRESNA ARITMETIKA? Primjer: *c=a *i=1 *pc1=a *pi1=1 *(pc1+1)=b *(pi1+2)=3 *++pc1=b *++pi1=2 *pc1++=b *pi1++=2 *pi1=3 *pi1=1 pi2-pi1=3 #include <stdio.h> *pc1=c main() *pc1=a pc2-pc1=3 static char c[] = a, b, c, d ; static int i[] = 1, 2, 3, 4; char *pc1=&c[0], *pc2=&c[3]; int *pi1=&i[0], *pi2=&i[3]; printf( *c=%c *i=%d\n, *c, *i); printf( *pc1=%c *pi1=%d\n, *pc1, *pi1); printf( *(pc1+1)=%c *(pi1+2)=%d\n, *(pc1+1), *(pi1+2)); printf( *++pc1=%c *++pi1=%d\n, *++pc1, *++pi1); printf( *pc1++=%c *pi1++=%d\n, *pc1++, *pi1++); printf( *pc1=%c *pi1=%d\n, *pc1, *pi1); pc1-=2; pi1-=2; printf( *pc1=%c *pi1=%d\n, *pc1, *pi1); printf( pc2-pc1=%d pi2-pi1=%d\n, pc2-pc1, pi2-pi1);
35 Pokazivači (pointeri) REFERISANJE? Prenos argumenata u funkciju referisanjem Argumenti se u funkciju standardno prenose putem vrijednosti Funkcija nema mogućnost da promijeni vrijednost stvarnog argumenta!!! Da bi se omogućilo da funkcija mijenja vrijednost stvarnog argumenta: 1. Prilikom poziva funkcije treba slati adresu! 2. Formalni argument treba definisati kao pokazivač na tip! 3. U tijelu funkcije treba koristiti operator indirekcije! REFERISANJE = PRENOS ADRESE (REFERENCE) stvarnog argumenta Referisanje omogućava da funkcija mijenja vrijednost stvarnog argumenta!
36 Pokazivači (pointeri) REFERISANJE? Korišćenje operatora indirekcije Primjer: #include <stdio.h> void suma ( niz, n, s ) int *niz, n, *s; int i; *s = 0; for (i=0; i<n; i++) *s += *niz++ ; Formalni argument je pokazivač main() static int i[]=1,2,3,4; int x; suma (i, 4, &x); printf( Suma: %d, x); šalje se adresa Suma: 10
37 Stringovi STRING? Stringovi String je jednodimenzionalni znakovni niz Deklaracija stringa: Primjer: To je niz znakova koji završava nul-znakom (znak čiji je kod 0) \0 char ime[duzina] = string ; ili char ime[duzina] = znak, znak,, znak ; char grad1[] = PODGORICA ; char grad2[] = B, E, R, A, N, E, \0 ; Označavanje znakovnih i string konstanti: D ovo je znak D D ovo je string D, \0
38 Stringovi STRING? Manipulacija stringom Ispisivanje stringa ispisivanje pomoću funkcije Primjer: printf( %s, string); #include <stdio.h> main() char grad[]= BANJA LUKA ; printf( %s\n, grad); BANJA LUKA ispisivanje pomoću funkcije Primjer: puts(string); #include <stdio.h> main() char grad[]= BANJA LUKA ; puts(grad); BANJA LUKA
39 Stringovi STRING? Manipulacija stringom Učitavanje stringa učitavanje pomoću funkcije Primjer: scanf( %s, string); #include <stdio.h> main() char tekst[50]; printf( Unesi recenicu:\n ); scanf( %s, tekst); printf( %s, tekst); Unesi recenicu: BANJA LUKA BANJA učitavanje pomoću funkcije Primjer: gets(string); #include <stdio.h> main() char tekst[50]; printf( Unesi recenicu:\n ); gets(tekst); printf( %s, tekst); Unesi recenicu: BANJA LUKA BANJA LUKA
40 STRING? Stringovi Primjer: Program koji učitava string, a zatim ispisuje njegovu dužinu. #include <stdio.h> int strlen ( char *s ) int i; for (i=0; *s!= \0 ; i++); return(i); main() char grad[]= PODGORICA ; printf( Broj slova: %d, strlen(grad) ); Broj slova: 9
41 STRING? Stringovi Primjer: Program koji učitava string i pravi kopiju tog stringa. #include <stdio.h> void strcopy ( char *s1, char *s2 ) while ( *s2++ = *s1++ ); main() char original[100]= PODGORICA ; char kopija[100]; strcopy(original, kopija); printf( %s\n, original); printf( %s\n, kopija); PODGORICA PODGORICA
42 Stringovi (biblioteka: string.h) strlen() za određivanje dužine stringa bez znaka null na kraju strcmp() za poređenje kompletnih sadržaja dva stringa strncmp() za poređenje delova sadržaja dva stringa strcpy() za kopiranje jednog stringa u drugi, od početka drugog strncpy() za kopiranje dela jednog stringa u drugi, od početka drugog strcat() za kopiranje jednog stringa u drugi, u produžetku sadržaja drugog strncat() za kopiranje dela jednog stringa u drugi, u produžetku sadržaja drugog
43 Stringovi (biblioteka: string.h) char rec1[ ] = "abc"; char rec2[ ] = "abc"; char rec3[ ] = "aeo"; printf("%s\n", strcmp(rec1, rec2)? "razliciti":"isti"); isti printf("%s\n", strcmp(rec1, rec3)? "razliciti":"isti"); razliciti printf("%s\n", strcmp(rec2, rec3)? "razliciti":"isti"); razliciti
44 Stringovi (biblioteka: string.h) // KOPIRANJE STRINGA #include <stdio.h> #include <string.h> int main(void) char bafer[6]; char rec[ ] = "abc"; strcpy(bafer, rec); puts(bafer); getchar(); return(0);
45 Stringovi (biblioteka: string.h) // KOPIRANJE STRINGA #include <stdio.h> #include <string.h> int main(void) char bafer[6]; char rec[ ] = "abc"; strcpy(bafer, rec); puts(bafer); getchar(); return(0);
46 biblioteka: stdlib.h) (biblioteka: string.h) Stringovi atoi() za konverziju stringa u ceo broj, ako je to moguće atof() za konverziju stringa u realan broj, ako je to moguće //PRIMJER atof() #include <stdio.h> #include <string.h> #include <stdlib.h> int main(void) char tekst1[ ] = " 2.5"; char tekst2[ ] = "0005"; char tekst3[ ] = "10.25 i neki tekst"; char tekst4[ ] = "5e+2"; char tekst5[ ] = "neki tekst "; printf("\nbroj: %f", atof(tekst1)); // printf("\nbroj: %f", atof(tekst2)); // printf("\nbroj: %f", atof(tekst3)); // printf("\nbroj: %f", atof(tekst4)); // printf("\nbroj: %f", atof(tekst5)); // getchar(); return(0);
47 Znakovi znakovi Znak potreban programu može biti: slovo, cifra, ostali... Tip promenljive za čuvanje znaka samo jedan: char Svaki znak je kodiran u ASCII tabeli pomoću broja Nema posebnih operatora za znakove!
48 Znakovi ASCII TABELA
49 Znakovi UPRAVLJAČKI (NEKI) 13, Povratak na početak reda, '\r' 12, Prelaz na novu stranu, '\f' 11, Vertikalni pomeraj, '\v' 10, Prelaz u nov red, '\n' 9, Horizontalni pomeraj, '\t' 8, Povratak za jedno mesto, '\b 7, Zvono
50 Znakovi Prepoznavanje slova ili cifre u znaku Prostor u mem.
51 Strukture STRUKTURA? Strukture Struktura je skup heterogenih podataka međusobno logički povezanih Pogodna za grupisanje atributa nekog entiteta (stvarnog ili nestvarnog) Atributi? prezime ime visina struct osoba char prezime[15]; char ime[15]; int visina;
52 Strukture STRUKTURA? Deklaracija strukture Opšti oblik deklaracije: ključna riječ struct ime ime strukture tip1 element1; tip2 element2;... tipn elementn; lista_promjenljivih; Deklaracija elementa (polja) Primjer: lista promjenljivih ovog tipa struct osoba char prezime[15]; char ime[15]; int visina; student1, student2, klub[100];
53 Strukture STRUKTURA? Pristup elementima (poljima) strukture Primjer: Pristup pomoću operatora. = ELEMENT STRUKTURE struct osoba char prezime[15]; char ime[15]; int visina; student, klub[100]; Pristup poljima: student.prezime = Markovic ; klub[1].prezime = Jankovic ; student.ime = Marko ; klub[1].ime = Janko ; student.visina = 190; klub[1].visina = 202;
54 STRUKTURA? Strukture Primjer: Ilustracija struktura #include <stdio.h> #include <string.h> struct evid char prezime[50]; char ime[50]; int maticni; trazena = "Stojanovic","Radovan",234, osoba; int main() int a,b,c; printf("upisi Prezime Ime osobe i maticni broj "); scanf("%s %s %d", osoba.prezime, osoba.ime, &osoba.maticni); //printf("%s %s %d",osoba.prezime, osoba.ime, osoba.maticni); a=strcmp(osoba.prezime, trazena.prezime); b=strcmp(osoba.ime, trazena.ime); if((!a &&!b)&&(osoba.maticni=trazena.maticni)) printf("wanted"); else printf("pass"); getchar(); getchar();
Strukture. Strukturirani (složeni) tip podataka koji definiše korisnik. Razlike u odnosu na niz
Strukture Strukture Strukturirani (složeni) tip podataka koji definiše korisnik sastoji se od više komponenti komponente imaju identifikatore ne moraju biti istog tipa struktura se smatra jednim objektom
DetaljerZadatak 1 strukture (C110) P2: Jedanaesta nedelja Strukture i liste. Strukture na jeziku C (2) Strukture na jeziku C (1)
Zadatak 1 strukture (C110) P2: Jedanaesta nedelja Strukture i liste Date su sledeće deklaracije: typedef int CeoBroj; typedef int *PokazivacNaCeoBroj; typedef int NizCelihBrojeva[100]; CeoBroj *pokaza;
DetaljerDel 1 En oversikt over C-programmering
Del 1 En oversikt over C-programmering 1 RR 2016 Starten C ble utviklet mellom 1969 og 1973 for å re-implementere Unix operativsystemet. Er et strukturert programmeringsspråk, hvor program bygges opp av
DetaljerProgramiranje 1 grupno spremanje (zadaci) datoteke
Programiranje 1 grupno spremanje (zadaci) datoteke Tipovi datoteka Datoteke se mogu podeliti na binarne i tekstualne. Iako su na prvi pogled ova dva tipa veoma slična oni se suštinski razlikuju. Binarne
DetaljerDel 2 Tabeller, arrays, strenger
Del 2 Tabeller, arrays, strenger 1 RR 2016 Tabeller Variabel som kan holde mange verdier. Styrer bruken med indeks. Det er ingen indekskontroll i C. int tab[5] = {2, 4, 6, 8, 10}; tab[4] = 12; int tab[100]
DetaljerDagens tema INF1070. Vektorer (array er) Tekster (string er) Adresser og pekere. Dynamisk allokering
Dagens tema Vektorer (array er) Tekster (string er) Adresser og pekere Dynamisk allokering Dag Langmyhr,Ifi,UiO: Forelesning 23. januar 2006 Ark 1 av 23 Vektorer Alle programmeringsspråk har mulighet til
DetaljerVektorer. Dagens tema. Deklarasjon. Bruk
Dagens tema Dagens tema Deklarasjon Vektorer Vektorer (array-er) Tekster (string-er) Adresser og pekere Dynamisk allokering Alle programmeringsspråk har mulighet til å definere en såkalte vektor (også
DetaljerKapittel 1 En oversikt over C-språket
Kapittel 1 En oversikt over C-språket RR 2015 1 Skal se på hvordan man En innføring i C Skriver data til skjermen Lese data fra tastaturet Benytter de grunnleggende datatypene Foretar enkle matematiske
Detaljer1. 0BLINEARNE STRUKTURE PODATAKA
1. 0BLINEARNE STRUKTURE PODATAKA 1.1. 1BPOLJE 1.1.1. 5BDEFINICIJE I STRUKTURA Polje (array) predstavlja linearnu homogenu statičku strukturu podataka i sastoji se od fiksnog broja komponenata istog tipa.
Detaljer/* Adresu promenjive x zapamticemo u novoj promeljivoj. Nova promenljiva je tipa pokazivaca na int (int*) */ int* px;
1. 0B 2. PODSEĆANJE 1. /* Pokazivaci - osnovni pojam */ #include main() { int x = 3; /* Adresu promenjive x zapamticemo u novoj promeljivoj. Nova promenljiva je tipa pokazivaca na int (int*)
DetaljerObjektno orijentisano programiranje 2. Tipovi podataka u C#
Objektno orijentisano programiranje 2 Klasifikacija tipova Osnovna podela na: vrednosne (value) tipove ukazane (reference) tipove Vrednosni tipovi: jednostavni tipovi (kao što su npr. byte, int, long,
DetaljerProgrammeringsspråket C Del 2. Michael Welzl
Programmeringsspråket C Del 2 Michael Welzl 1 Et eksempel Dette er lite eksempel som ber om et tall, leser det og så teller fra det nedover til 0 $> gcc countdown.c -o countdown $>./countdown ===== Countdown
DetaljerUvod u Veb i Internet tehnologije HTML
Uvod u Veb i Internet tehnologije Filip Marić Vesna Marinković Filip Marić, Vesna Marinković Uvod u Veb i Internet tehnologije 1 / 49 Jezici za obeležavanje Pristupi kreiranju dokumenata Dva osnovna pristupa
DetaljerDel 4 Noen spesielle C-elementer
Del 4 Noen spesielle C-elementer 1 RR 2016 Header-filer inneholder Prototypene til funksjonene i standard biblioteket Verdier og definisjoner som disse funksjonene bruker #include #include
DetaljerDagens tema. C-programmering. Nøkkelen til å forstå C-programmering ligger i å forstå hvordan minnet brukes.
Dagens tema Dagens tema C-programmering Nøkkelen til å forstå C-programmering ligger i å forstå hvordan minnet brukes. Adresser og pekere Parametre Vektorer (array-er) Tekster (string-er) Hvordan ser minnet
DetaljerDagens tema C, adresser og pekere
Dagens tema C, adresser og pekere (Kapittel 17 i Patt&Patel-boken) Variable og adresser Pekervariable Parametre Dynamisk allokering Stakker og ringbuffere Ark 1 av 26 Adresser Som nevnt tidligere ligger
DetaljerArk 3 av 26. printf("i adresse %08x ligger b med verdien %d.\n", &b, b); printf("i adresse %08x ligger a med verdien %d.
Dagens tema C, adresser og pekere (Kapittel 17 i Patt&Patel-boken) Variable og adresser Pekervariable Parametre Dynamisk allokering Stakker og ringbuffere Adresser Som nevnt tidligere ligger data og programkode
DetaljerKartlegging av leseferdighet Trinn 2 og 3 på bosnisk
Lærerveiledning Bosnisk, 2. og 3. trinn Lærerveiledning Kartlegging av leseferdighet Trinn 2 og 3 på bosnisk Priručnik za učitelje Ispitivanje sposobnosti čitanja 2. i 3. razred na bosanskom jeziku 2013
DetaljerDagens tema. C-programmering. Nøkkelen til å forstå C-programmering ligger i å forstå hvordan minnet brukes.
Dagens tema C-programmering Nøkkelen til å forstå C-programmering ligger i å forstå hvordan minnet brukes. Adresser og pekere Parametre Vektorer (array-er) Tekster (string-er) Hvordan ser minnet ut? Variabler,
DetaljerDagens tema INF1070. Vektorer (array-er) Tekster (string-er) Adresser og pekere. Dynamisk allokering
Dagens tema Vektorer (array-er) Tekster (string-er) Adresser og pekere Dynamisk allokering Dag Langmyhr,Ifi,UiO: Forelesning 17. januar 2005 Ark 1 av 23 Vektorer Alle programmeringsspråk har mulighet til
DetaljerNeprekidne funkcije nestandardni pristup
nestandardni pristup Predavanje u sklopu Teorije, metodike i povijesti infinitezimalnih računa fniksic@gmail.com PMF Matematički odsjek Sveučilište u Zagrebu 10. veljače 2011. Ciljevi predavanja Ciljevi
Detaljer1. DHB-E 18/21/24 Sli art ELEKTRONIČKI PROTOČNI GRIJAČ VODE
ZAGREB, SRPANJ, 2017. VELEPRODAJNI CIJENIK STIEBEL ELTRON ZA 2017 G. PROTOČNI BOJLERI 1. DHB-E 18/21/24 Sli art.232016 - ELEKTRONIČKI PROTOČNI GRIJAČ VODE Protočni grijač vode za trenutno zagrijavanje
DetaljerDagens tema. Kort repetisjon om rutiner. Programmering i C Variable og adresser. Vektorer. Tekster. Preprosessoren. Separat kompilering
Dagens tema Kort repetisjon om rutiner Programmering i C Variable og adresser Vektorer Tekster Preprosessoren Separat kompilering Innlesning og utskrift mot skjerm og fil Ark 1 av 31 Hva er en rutine?
DetaljerProgrammeringsspråket C Del 3. Hans Petter Taugbøl Kragset
Programmeringsspråket C Del 3 Hans Petter Taugbøl Kragset Repetisjon I C er ikke array en egen type, men variabler kan være arrayer! Pekere C-strenger Veldig likt Java på mange måter Programmering er fortsatt
DetaljerIN 147 Program og maskinvare
Dagens tema Mer om C Cs preprosessor Allokering av variable Separat kompilering Programmet make Pekere i C Operasjoner på pekere Pekere og vektorer Referanseparametre Pekere til «alt» og «ingenting» Dynamisk
DetaljerDagens tema: Datastrukturer
Dagens tema: Datastrukturer Matriser Dynamiske matriser Ringbuffere Mengder Lister Enkle listeoperasjoner Programmering av en listepakke Lister med hode og hale Toveislister Onsdag 24.3 Avslutning av IN147A
DetaljerELEKTROTEHNIČKI FAKULTET UNIVERZITETA U BEOGRADU PROGRAMIRANJE 2 MATERIJALI ZA PRIPREMU ISPITA. verzija:
ELEKTROTEHNIČKI FAKULTET UNIVERZITETA U BEOGRADU PROGRAMIRANJE 2 MATERIJALI ZA PRIPREMU ISPITA verzija: 06.07.2018. Studentima se savetuje da programski kod ne uče napamet. Za pisanje i testiranje rešenja
DetaljerMATLAB matrični laboratorij Interaktivni alat (kalkulator), programski jezik, grafički procesor
M. Essert: Matlab interaktivno 1 MATLAB matrični laboratorij Interaktivni alat (kalkulator), programski jezik, grafički procesor Program = algoritam + strukture podataka Tipovi podataka temeljni tip -
DetaljerDagens tema. Adresser som parametre Dynamisk allokering Signaturer Definisjon av nye typenavn Typekonvertering Pekere og vektorer
Dagens tema Dagens tema Adresser som parametre Dynamisk allokering Signaturer Definisjon av nye typenavn Typekonvertering Pekere og vektorer Adresser som parametre Et eksempel La oss lage en funksjon som
Detaljer4. Grafič ke funkčije
4. Grafič ke funkčije Svaki grafik možemo posmatrati kao prikaz numeričkih vrednosti. Poreklo ovih vrednosti, međutim, diktira način na koji se one koriste ili generišu. U vedini slučajeva, izvor podataka
DetaljerDagens tema. Rutiner i LC-2 Og her er tilsvarende kode for LC-2: Funksjoner i C Her er det samme programmet i C: Kort repetisjon om rutiner
Dagens tema Kort repetisjon om rutiner Programmering i C Variable og adresser Vektorer Tekster Preprosessoren Separat kompilering Innlesning og utskrift mot skjerm og fil Hva er en rutine? En rutine (også
Detaljer1 REALNE FUNKCIJE REALNE VARIJABLE
REALNE FUNKCIJE REALNE VARIJABLE. Neka je f() = ln 4e 3 e. Odredite a) f b) D(f) i R(f) c) Odredite min f, inf f, ma f, sup f. 2. Odredite prirodnu domenu funkcije f() = ln (3e e 3 ) + 5 log 5 +3 + ( cos
DetaljerIN 147 Program og maskinvare
Dagens tema Basistyper i C Typekonvertering Formater i printf Pekere i C En kort repetisjon om pekere Hva er egentlig en peker? Pekere til alt og ingenting Pekere som parametre Pekere og vektorer Ark 1
DetaljerDagens tema INF2270. Cs preprosessor. Separat kompilering av C funksjoner. C og minnet. Dag Langmyhr,Ifi,UiO: Forelesning 5. februar 2007 Ark 1 av 15
Dagens tema Cs preprosessor Separat kompilering av C funksjoner C og minnet Dag Langmyhr,Ifi,UiO: Forelesning 5. februar 2007 Ark 1 av 15 Cs preprosessor Før selve kompileringen går C kompilatoren gjennom
DetaljerDagens tema INF1070. Info om C. Cs preprosessor. Feilsøking. Dag Langmyhr,Ifi,UiO: Forelesning 31. januar 2005 Ark 1 av 29
Dagens tema Info om C Cs preprosessor Feilsøking Dag Langmyhr,Ifi,UiO: Forelesning 31. januar 2005 Ark 1 av 29 Informasjon om C Den viktigste kilden til informasjon om C (utenom en god oppslagsbok) er
DetaljerInformasjon om C. Dagens tema INF1070 INF1070 INF1070 INF1070. Den viktigste kilden til informasjon om C (utenom en god. C-funksjonene.
Dagens tema Info om C Cs preprosessor Feilsøking Dag Langmyhr,Ifi,UiO: Forelesning 31. januar 2005 Ark 1 av 29 Dag Langmyhr,Ifi,UiO: Forelesning 31. januar 2005 Ark 2 av 29 NAME sqrt - square root function
DetaljerOving 2. Oppgave 1. #include <stdio.h> int main(int argc, char **argv) { char *navn = argv[1]; printf ("Navnet ditt er %s\n", navn); } Oppgave 2
Oving 2 Oppgave 1 int main(int argc, char **argv) char *navn = argv[1]; printf ("Navnet ditt er %s\n", navn); Oppgave 2 char navn[25]; printf( "Hei hva heter du?\n" ); scanf("%s", navn); printf ("Hei:
DetaljerRiješeni zadaci: Funkcije
Riješeni zadaci: Funkcije Domena funkcije, kompozicija funkcija, invertiranje funkcije, parnost funkcije Domene nekih funkcija: f(x) = x D f = [0, f(x) = x D f = R \ {0} f(x) = log a x, a > 0, a D f =
DetaljerProgrammeringsspråket C Del 2. Hans Petter Taugbøl Kragset
Programmeringsspråket C Del 2 Hans Petter Taugbøl Kragset Repetisjon I C er ikke array en egen type, men variabler kan være arrayer! 28.08.17 Hans Petter Taugbøl Kragset 2 Arrays Java int[] arr1 = {1,
DetaljerProgrammeringsspråket C
Programmeringsspråket C Bakgrunn Implementasjon av Unix ved AT&Ts laboratorium i Palo Alto 1960 75. Navnet kommer fra BCPL B C. Opphavsmannnen heter Dennis Ritchie. ANSI standard i 1988; omtrent alle følger
DetaljerPekere og vektorer. Dagens tema. I C gjelder en litt uventet konvensjon:
Pekere og vektorer I C gjelder en litt uventet konvensjon: Dagens tema Det siste om C Pekere og vektorer Pekere til pekere Vanlige pekerfeil struct-er og typedef Lister Feilsøking Bruk av et vektornavn
DetaljerDagens tema. Det siste om C Pekere og vektorer. Pekere til pekere. Vanlige pekerfeil. struct-er og typedef. Lister. Feilsøking
Dagens tema Det siste om C Pekere og vektorer Pekere til pekere Vanlige pekerfeil struct-er og typedef Lister Feilsøking Ark 1 av 35 Pekere og vektorer I C gjelder en litt uventet konvensjon: Bruk av et
DetaljerDagens tema. Cs preprosessor Separat kompilering av C-funksjoner C og minnet Oversikt over operatorene
Dagens tema Dagens tema Cs preprosessor Separat kompilering av C-funksjoner C og minnet Oversikt over operatorene Inkludering av filer Cs preprosessor Før selve kompileringen går C-kompilatoren gjennom
DetaljerDagens tema. Mer om C Enkle datatyper Sammensatte datatyper: Vektorer og matriser Tekster Mengder Strukturer Unioner Ringbuffere
Dagens tema Mer om C Enkle datatyper Sammensatte datatyper: Vektorer og matriser Tekster Mengder Strukturer Unioner Ringbuffere Formål: Nyttige å bruke under programmeringen Trening i programmering i C
Detaljerdo minimalno 8 kreativnih objava mjesečno Povlaštena cijena nakon završetka akcije: 900,00 kn
do 30.09.2015. 9 2 Društvene mreže izrada nove ili redizajn postojeće fan stranice minimalno 4 kreativnih objava mjesečno 1.200,00 kn 50% 600,00 kn Povlaštena cijena nakon završetka akcije: 900,00 kn Yellow:
DetaljerSveučilište u Zagrebu PMF Matematički odsjek. Mreže računala. Vježbe 04. Zvonimir Bujanović Slaven Kožić Vinko Petričević
Sveučilište u Zagrebu PMF Matematički odsjek Mreže računala Vježbe 04 Zvonimir Bujanović Slaven Kožić Vinko Petričević Klijent / Server paradigma internet daje infrastrukturu koja omogućava komunikaciju
DetaljerALUMINIJSKE VODILICE ZA ODJELJIVANJE PROSTORA
ALUMINIJSKE VODILICE ZA ODJELJIVANJE PROSTORA ALU. VODILICE ZA ODJELJIVANJE PROSTORA AV 04.01-04.10...jer o tome mnogo ovisi... S C H W O L L E R - L U Č I Ć AL 400 AV 04.01 minijska vodilica za odjeljivanje
DetaljerIN 147 Program og maskinvare
Dagens tema Deklarasjon av nye typer Typekonvertering mellom pekere Regning med pekere Pekere til funksjoner Pekere til pekere til... Vanlige feil ved bruk av pekere Feilsøking Debuggere lint Kompilatormeldinger
DetaljerLøsningsforslag til 2. del av Del - EKSAMEN
Løsningsforslag til 2. del av Del - EKSAMEN Emnekode: ITD13012 Emne: Datateknikk Dato: 21. Mai 2013 Eksamenstid: kl 9:00 til kl 12:00 Hjelpemidler: 4 sider (A4) (2 ark) med egne notater. Ikke-kummuniserende
DetaljerCs preprosessor. Dagens tema. Betinget kompilering
Dagens tema Dagens tema Inkludering av filer Cs preprosessor Cs preprosessor Separat kompilering av C funksjoner C og minnet Før selve kompileringen går C kompilatoren gjennom koden med en preprosessor
DetaljerDagens tema INF1070. Signaturer. Typekonvertering. Pekere og vektorer. struct-er. Definisjon av nye typenavn. Lister
Dagens tema Signaturer Typekonvertering Pekere og vektorer struct-er Definisjon av nye typenavn Lister Dag Langmyhr,Ifi,UiO: Forelesning 24. januar 2005 Ark 1 av 20 Signaturer I C gjelder alle deklarasjoner
DetaljerIN 147 Program og maskinvare
Dagens tema Mer om C Et eksempel til (med diverse forklaringer) Representasjon av tegn og logiske verdier Vektorer Statusverdi Innhenting av definisjoner Inkrementering og dekrementering av variable for-setningen
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet PRØVEEKSAMEN i INF1000 23. november 2004 kl. 14.00 17.00 Dine svar skal skrives på disse oppgavearkene, og ikke på separate ark. Dette gjelder
DetaljerOPPGAVE 1 OBLIGATORISKE OPPGAVER (OBLIG 1) (1) Uten å selv implementere og kjøre koden under, hva skriver koden ut til konsollen?
OPPGAVESETT 4 PROSEDYRER Oppgavesett 4 i Programmering: prosedyrer. I dette oppgavesettet blir du introdusert til programmering av prosedyrer i Java. Prosedyrer er også kjent som funksjoner eller subrutiner.
DetaljerOrd og begreper. Norsk Morsmål: Tegning (hvis aktuelt)
Ord og begreper Norsk Morsmål: Tegning (hvis aktuelt) Få Dobiti Mange Mnogo Venstre Lijevo Høyre Desno Øverst Iznad Nederst Niže Lite Malo Mye Mnogo Flest Vecina Færrest Najmanje Oppe Gore Nede Dole Mellom
DetaljerKako dostaviti logo. USBnet. Powered by
Kako dostaviti logo USBnet Powered by Sadržaj Sadržaj Upute za dostavljanje loga Vektorski dokumenti Bitmap dokumenti Tekst i fontovi Boje Dimenzije i površina loga 2 3 4 5 6 7 8 2 Upute za dostavu loga
DetaljerUNIVERSITETET I OSLO
FASIT UNIVERSITETET I OSLO BOKMÅL Det matematisk-naturvitenskapelige fakultet Kontinuasjonseksamen i : Eksamensdag : INF1000 Grunnkurs i objektorientert programmering Fredag 7. januar Tid for eksamen :
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO BOKMÅL Det matematisk-naturvitenskapelige fakultet Kontinuasjonseksamen i : Eksamensdag : INF1000 Grunnkurs i objektorientert programmering Fredag 7. januar Tid for eksamen : 09.00
DetaljerIN 147 Program og maskinvare
Dagens tema: Kort repetisjon Mengder Lister Enkle listeoperasjoner Programmering av en listepakke Lister med hode og hale Toveislister Hvaeretoperativsystem? En meget kort oversikt over operativsystemenes
DetaljerIN 147 Program og maskinvare
Dagens program Repetisjon Basistyper i C Typekonvertering Formater i printf Deklarasjon av nye typer Pekere i C En kort repetisjon om pekere Pekere som parametre Pekere og vektorer Regning med pekere Pekere
DetaljerProgrammeringsspråket C Del 2
Programmeringsspråket C Del 2 Michael Welzl E-mail: michawe@ifi.uio.no 8/25/10 inf1060 1 Et eksempel Dette er lite eksempel som ber om et tall, leser det og så teller fra det ned til 0. 8/25/10 inf1060
DetaljerProgrammeringsspråket C Del 2
Et eksempel Programmeringsspråket C Del 2 Dette er lite eksempel som ber om et tall, leser det og så teller fra det ned til 0. Kjell Åge Bringsrud E-mail: kjellb@ifi.uio.no inf1060 1 inf1060 2 Forklaring:
DetaljerDagens tema. Cs preprosessor Separat kompilering av C-funksjoner C og minnet Oversikt over operatorene
Dagens tema Dagens tema Cs preprosessor Separat kompilering av C-funksjoner C og minnet Oversikt over operatorene Inkludering av filer Cs preprosessor Før selve kompileringen går C-kompilatoren gjennom
DetaljerProgrammeringsspråket C Del 2
Programmeringsspråket C Del 2 Kjell Åge Bringsrud E-mail: kjellb@ifi.uio.no 30.08.2005 inf1060 H05 1 Et eksempel Dette er lite eksempel som ber om et tall, leser det og så teller fra det ned til 0. 30.08.2005
DetaljerTru64: Uvod - alati i naredbe. Dinko Korunić, InfoMAR d.o.o. v1.2, travanj 2006.
Tru64: Uvod - alati i naredbe Dinko Korunić, InfoMAR d.o.o. v1.2, travanj 2006. O predavaču višegodišnji vanjski suradnik časopisa Mrež@, vlastita kolumna "Digitalna radionica - Linux", itd. vanjski suradnik
DetaljerProgrammering i C++ Løsningsforslag Eksamen høsten 2005
Programmering i C++ Eksamen høsten 2005 Simen Hagen Høgskolen i Oslo, Avdeling for Ingeniørutdanning 7. desember 2005 Generelt Denne eksamensoppgaven består av tre oppgaver, pluss en ekstraoppgave. Det
DetaljerK O N T I N U A S J O N S E K S A M E N
Høgskolen i Gjøvik K O N T I N U A S J O N S E K S A M E N FAGNAVN: FAGNUMMER: Grunnleggende programmering og datastrukturer L 169 A EKSAMENSDATO: 8. januar 1998 KLASSE: 96HINDA / 96HINDE TID: 09.00-14.00
DetaljerLøsningsforslag til 2. del av Del - EKSAMEN
Løsningsforslag til 2. del av Del - EKSAMEN Emnekode: ITD13012 Emne: Datateknikk Dato: 19. Mai 2014 Eksamenstid: kl 9:00 til kl 12:00 Hjelpemidler: 4 sider (A4) (2 ark) med egne notater. Ikke-kummuniserende
DetaljerProgrammeringsspråket C Del 3. Michael Welzl
Programmeringsspråket C Del 3 Michael Welzl 1 Vektorer og minneallokering Vektorer blir ikke initialisert å allokere en vektor er bare en statisk måte å allokere minne på. char a, b[4], c; a = 3; b[0]
DetaljerOppgave 1. Oppgave 2. Oppgave 3. Prøveeksamen i INF1000. Ole Christian og Arne. 23. november 2004
Oppgave 1 Prøveeksamen i INF1000 Ole Christian og Arne 23. november 2004 Er dette lovlige deklarasjoner (når de foretas inni en metode)? JA NEI int i; int k = i; int i, j = 4; int k = j; double[] x = new
DetaljerDagens program. Operativsystemer Prosesser og systemkall i UNIX Hente prosessens nummer Starte prosesser Vente på prosesser Utføre programmer
Dagens program Operativsystemer Prosesser og systemkall i UNIX Hente prosessens nummer Starte prosesser Vente på prosesser Utføre programmer Nyttige forklaringer Sikker opprettelse av nye prosesser Hva
DetaljerEKSAMENSOPPGAVE. INF-1100 Innføring i programmering og datamaskiners virkemåte. Ingen. Elektronisk (WiseFlow) Robert Pettersen
Fakultet for naturvitenskap og teknologi EKSAMENSOPPGAVE Eksamen i: Dato: 20.02.2017 Klokkeslett: 09:00 13:00 INF-1100 Innføring i programmering og datamaskiners virkemåte Sted: Teorifagbygget, Hus 3,
DetaljerHøgskolen i Gjøvik Avdeling for informatikk og medieteknikk. Eksamen. Objekt-orientert programmering
Høgskolen i Gjøvik Avdeling for informatikk og medieteknikk Eksamen EMNENAVN: EMNENUMMER: Objekt-orientert programmering IMT1082 EKSAMENSDATO: 4. juni 2010 KLASSE(R): 09HBIND*, 09HBPUA, 09HBDRA, 09HBISA,
DetaljerPrøveeksamen i INF1000. Ole Christian og Arne. 23. november 2004
Prøveeksamen i INF1000 Ole Christian og Arne 23. november 2004 Oppgave 1 Er dette lovlige deklarasjoner (når de foretas inni en metode)? JA NEI int i; int k = i; int i, j = 4; int k = j; double[] x = new
DetaljerAdministrivia INF 3110/ INF /02/2005 1
Administrivia Arild Fines Studentassistent for INF5110 Tok INF5110 våren 2004 Ingen tradisjonelle gruppetimer Veiledning over epost og/eller ved treffetid arild.fines@broadpark.no 03/02/2005 1 Lex/Flex
DetaljerOppgave 1. INF1000 Uke 13. Oppgave 2. Oppgave 3. Er dette lovlige deklarasjoner (når de foretas inni en metode)? JA NEI
Oppgave 1 INF1000 Uke 13 Gjennomgang av prøveeksamen fra høsten 2004 Er dette lovlige deklarasjoner (når de foretas inni en metode)? JA NEI int i; int k = i; int i, j = 4; int k = j; double[] x = new double[1];
DetaljerDagens tema. Dynamisk allokering Signaturer Definisjon av typer og nye typenavn Typekonvertering Pekere, vektorer og lister Dokumentasjon
Dagens tema Dagens tema Dynamisk allokering Signaturer Definisjon av typer og nye typenavn Typekonvertering Pekere, vektorer og lister Dokumentasjon Verdt å huske på! Husk! Nøkkelen til å forstå C er å
DetaljerHva er verdien til variabelen j etter at følgende kode er utført? int i, j; i = 5; j = 10; while ( i < j ) { i = i + 2; j = j - 1; }
Hva er verdien til variabelen j etter at følgende kode er utført? int i, j; i = 5; j = 10; while ( i < j ) { i = i + 2; j = j - 1; Hva skrives ut på skjermen når følgende kode utføres? int [] tallene =
DetaljerProgrammeringsspråket C
Programmeringsspråket C Programmeringsspråket C Implementasjon av Unix ved AT&Ts laboratorium i Palo Alto 1960 75. Navnet kommer fra BCPL B C. Opphavsmannnen heter Dennis Ritchie. ANSI-standard i 1988;
DetaljerINF1000: Forelesning 11. Oppgave 2. Oppgave 1. Husk å melde deg på prøveeksamen i INF1000! Ole Christian Lingjærde 7.november 2006
Husk å melde deg på prøveeksamen i INF1000! INF1000: Forelesning 11 Ole Christian Lingjærde 7.november 2006 Frist påmelding: 16. november Arrangementet er torsdag 23. november kl 1420 og omfatter: Oppgaven
DetaljerKONTINUASJONSEKSAMEN
Høgskolen i Gjøvik KONTINUASJONSEKSAMEN FAGNAVN: FAGNUMMER: Grunnleggende datakunnskap og programmering L 182 A EKSAMENSDATO: 17. august 1999 KLASSE: 98HINDA / 98HINDB / 98HINEA 98HDMUA / 98HDMUB / 98HINGA
DetaljerDen siste dagen. Pensumoversikt Hovedtanker i kurset Selvmodifiserende kode Overflyt Veien videre... Eksamen
Den siste dagen Pensumoversikt Hovedtanker i kurset Selvmodifiserende kode Overflyt Veien videre... Eksamen En oppsummering Oppsummering Pensum Læreboken til og med kapittel 7, kompendiet, forelesningene
DetaljerPrimena računara u fizičkoj hemiji. Profesor: Miloš Mojović Asistent: Aleksandar Ignjatović
Primena računara u fizičkoj hemiji Profesor: Miloš Mojović Asistent: Aleksandar Ignjatović Literatura i ispit: Literatura: 1. Predavanja 2. Internet 3. Knjige Ocenjivanje 1. aktivnost u toku predavanja
DetaljerUNIVERSITETET I OSLO
OPPGAVEN BLIR GJENNOMGÅTT PÅ FORELESNINGEN 24/10. DU BØR FORBEREDE DEG TIL FORELESNINGEN VED Å SETTE AV MINST TRE-FIRE TIMER TIL Å PRØVE Å LØSE OPPGAVEN PÅ EGENHÅND. UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige
DetaljerOversikt. Introduksjon Kildekode Kompilering Hello world Hello world med argumenter. 1 C programmering. 2 Funksjoner. 3 Datatyper. 4 Pekere og arrays
Oversikt C programmering 1 C programmering Introduksjon Kildekode Kompilering Hello world Hello world med argumenter 2 Funksjoner 3 Datatyper 4 Pekere og arrays 5 Kontrollstrukturer Lars Vidar Magnusson
DetaljerHØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL
HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: Varighet: Fagnummer: Fagnavn: Klasse(r): Studiepoeng: Faglærer(e): Hjelpemidler: Oppgavesettet består av:
DetaljerMatematičke metode u kemiji Numeričke metode u kemiji
Matematičke metode u kemiji Numeričke metode u kemiji Mnogi na matematiku svedivi kemijski problemi nisu egzaktno rješivi. Stoga se u kemiji puno koriste numeričke metode. 1 Metoda najmanjih kvadrata Jedna
DetaljerSignaturer. Dagens tema. En vanlig feil int-funksjon. Dette kan noen ganger gi rare feilmeldinger: INF1070 INF1070 INF1070 INF1070
Dagens tema Signaturer Tyekonvertering Pekere og vektorer struct-er Definisjon av nye tyenavn Lister Dag Langmyhr,Ifi,UiO: Forelesning 24. januar 25 Ark 1 av 2 Dag Langmyhr,Ifi,UiO: Forelesning 24. januar
DetaljerLøsningsforslag til eksamen i IN 147 og IN 147A
Løsningsforslag til eksamen i IN 17 og IN 17A Dag Langmyhr Øystein Gran Larsen Våren 1996 1 Oversettelse I vårt forslag har vi lagt større vekt på at oversettelsen skal vært «rett frem» og lett forståelig
DetaljerPensum Hovedtanker Selvmodifiserende Overflyt Veien videre Eksamen. Oppsummering
Oppsummering Pensum Grovt sett er alt fra forelesningene og øvingsoppgavene pensum. Detaljert oversikt finnes på kurssidene. Hovedtanker fra kurset Litt om eksamen Hvorfor har dere lært dette? Ikke mange
DetaljerGjennomgang prøveeksamen oppgave 1, 2, 4, 5, 7
Gjennomgang prøveeksamen 2014 oppgave 1, 2, 4, 5, 7 1a: Hva er verdien til tall etter at følgende kode er utført: 17 int tall = 5; tall = (tall*3) + 2; 5 15 17 1b: Anta at følgende programsetninger utføres.
DetaljerKONTINUASJONSEKSAMEN
Høgskolen i Gjøvik Avdeling for teknologi KONTINUASJONSEKSAMEN FAGNAVN: FAGKODE: Grunnleggende datakunnskap og programmering L 182 A EKSAMENSDATO: 9. august 2002 KLASSE(R): 01HIND*, 01HINE*, 01HDMU*, 01HING*
DetaljerIN 147 Program og maskinvare. Dagens tema
Dagens tema Kort repetisjon Unioner Cs preprosessor Allokering av variable Separat kompilering Programmet make Datastrukturer Matriser Dynamiske matriser Ringbuffere Oblig2 Obligatorisk oppgave nr. 2 slippes
DetaljerKondisjonstest. Algoritmer og datastrukturer. Python-oppgaver. Onsdag 6. oktober Her er noen repetisjonsoppgaver i Python.
Algoritmer og datastrukturer Kondisjonstest Python-oppgaver Onsdag 6. oktober 2004 Her er noen repetisjonsoppgaver i Python. Som alltid er den beste måten å lære å programmere på å sette seg ned og programmere
DetaljerKontinuasjonseksamensoppgave i IMT1082 Objekt-orientert programmering
Institutt for datateknologi og informatikk Kontinuasjonseksamensoppgave i IMT1082 Objekt-orientert programmering Faglig kontakt under eksamen: Frode Haug Tlf: 950 55 636 Eksamensdato: 14.august 2018 Eksamenstid
DetaljerDagens tema. Oppsummering om assemblerspråk. Programmering i C. Bakgrunn. Et minimalt eksempel med forklaring. Datatyper i C.
Dagens tema Oppsummering om assemblerspråk Programmering i C (kapittel 11 og 12 i Patt&Patel-boken) Bakgrunn Et minimalt eksempel med forklaring Datatyper i C Operatorer i C Et eksempel til med forklaring
DetaljerZADACI ZA KVALIFIKACIONI ISPIT IZ HEMIJE. 1. Napišite elektronsku konfiguraciju broma, čiji je atomski broj Z= 35.
ZADACI ZA KVALIFIKACIONI ISPIT IZ HEMIJE 1. Napišite elektronsku konfiguraciju broma, čiji je atomski broj Z= 35. 1s 2 2s 2 2p 6 3s 2 3p 6 4s 2 3d 10 4p 5 2. Utvrdite koji od navedenih parova hemijskih
DetaljerProgrammeringsspråket C
Programmeringsspråket C Programmeringsspråket C Laget til implementasjon av Unix ved AT&Ts Bell labs i Palo Alto 1969 73. Navnet kommer fra BCPL B C. Opphavsmannnen heter Dennis Ritchie. ANSI-standard
Detaljer