zadaa 4 - samo materijali i materijali · 2015-10-26 · univerzitet u sarajevu elektrotehni ki...

7
UNIVERZITET U SARAJEVU ELEKTROTEHNIČKI FAKULTET Zadaća 4 OSNOVE RAčUNARSTVA Student: Armin Dajić Grupa: (Svi studenti) Broj indeksa: 15738 Potpis: Ocjena: 2 Potpis tutora:

Upload: others

Post on 16-Jul-2020

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Zadaa 4 - Samo materijali i materijali · 2015-10-26 · UNIVERZITET U SARAJEVU ELEKTROTEHNI KI FAKULTET Zadatak 2. 2.c /* Sortiranje slova iz unesenog stringa po abecedi (Pravila

UNIVERZITET U SARAJEVU

ELEKTROTEHNIČKI FAKULTET

Zadaća 4

OSNOVE RAčUNARSTVA

Student: Armin Dajić

Grupa: (Svi studenti)

Broj indeksa: 15738

Potpis:

Ocjena:

2

Potpis tutora:

Page 2: Zadaa 4 - Samo materijali i materijali · 2015-10-26 · UNIVERZITET U SARAJEVU ELEKTROTEHNI KI FAKULTET Zadatak 2. 2.c /* Sortiranje slova iz unesenog stringa po abecedi (Pravila

UNIVERZITET U SARAJEVU

ELEKTROTEHNIČKI FAKULTET

Zadatak 1. 1.c

/* Program vrsi (de)kodiranje string-a po algoritmu rot13 */ #include <stdio.h>#include <stdlib.h> void rot13 (char *string); int main(){ int i; char string[100]; printf("Unesite string (do 100 slova):\n"); i=0; do { string[i]=getchar(); i++; } while (string[i-1]!='\n' && i<100); string[i-1]='\0'; rot13(string); return 0;} void rot13 (char *string){ int dod; while (*(string)!='\0') { if (*string>=65 && *string<=90) { if (*string+13>90) { dod=-13; } else dod=13; *string=*string+dod; } else if (*string>=97 && *string<=122) { if (*string+13>122) { dod=-13; } else dod=13; *string=*string+dod; } printf("%c",*string); string++; } printf("\n"); return 0;

Stranica 2

Page 3: Zadaa 4 - Samo materijali i materijali · 2015-10-26 · UNIVERZITET U SARAJEVU ELEKTROTEHNI KI FAKULTET Zadatak 2. 2.c /* Sortiranje slova iz unesenog stringa po abecedi (Pravila

UNIVERZITET U SARAJEVU

ELEKTROTEHNIČKI FAKULTET

}

Stranica 3

Page 4: Zadaa 4 - Samo materijali i materijali · 2015-10-26 · UNIVERZITET U SARAJEVU ELEKTROTEHNI KI FAKULTET Zadatak 2. 2.c /* Sortiranje slova iz unesenog stringa po abecedi (Pravila

UNIVERZITET U SARAJEVU

ELEKTROTEHNIČKI FAKULTET

Zadatak 2.2.c

/* Sortiranje slova iz unesenog stringa po abecedi (Pravila sortiranja navodim primjerom:) bBB?aAa --> AaaBBb? Napomena: Slova i simboli izvan engleske abecede bit ce sortirani premavrijednostima svog ASCII koda (to ukljucuje i nasa slova sa afrikatima!), i ispisanitek na kraju stringa */ #include <stdio.h>#include <stdlib.h> void string_sort(char *string); int main(){ int i; char string[100]; printf("Unesite string (do 100 slova):\n"); i=0; do { string[i]=getchar(); i++; } while (string[i-1]!='\n' && i<100); string[i-1]='\0'; string_sort(string); return 0;} void string_sort(char *string){ int i,k,broj1,broj2; char pomocno; for (i=0; *(string+i)!='\0'; i++) { for (k=i; *(string+k)!='\0'; k++) {  /* broj1 i broj2 odreduju prioritet slova: za 'A' - broj1/2=0; za 'a' -broj1/2=1; za B - broj1/2=2,... */ if (*(string+i)>=65 && *(string+i)<=90) {broj1=(*(string+i)-65)*2;} else if (*(string+i)>=97 && *(string+i)<=122) {broj1=(*(string+i)-97)*2+1;} else broj1=*(string+i)+1000;  if (*(string+k)>=65 && *(string+k)<=90) {broj2=(*(string+k)-65)*2;} else if (*(string+k)>=97 && *(string+k)<=122) {broj2=(*(string+k)-97)*2+1;} else broj2=*(string+k)+1000;  if (broj1>broj2) { pomocno=*(string+i); *(string+i)=*(string+k);

Stranica 4

Page 5: Zadaa 4 - Samo materijali i materijali · 2015-10-26 · UNIVERZITET U SARAJEVU ELEKTROTEHNI KI FAKULTET Zadatak 2. 2.c /* Sortiranje slova iz unesenog stringa po abecedi (Pravila

UNIVERZITET U SARAJEVU

ELEKTROTEHNIČKI FAKULTET

*(string+k)=pomocno; } } } for (i=0; *(string+i)!='\0'; i++) { printf("%c",*(string+i)); } printf("\n"); return 0;}

Stranica 5

Page 6: Zadaa 4 - Samo materijali i materijali · 2015-10-26 · UNIVERZITET U SARAJEVU ELEKTROTEHNI KI FAKULTET Zadatak 2. 2.c /* Sortiranje slova iz unesenog stringa po abecedi (Pravila

UNIVERZITET U SARAJEVU

ELEKTROTEHNIČKI FAKULTET

Zadatak 3.3.c

/* Program unesenu rijec prevodi na "satrovacki" Napomena: Suglasnikom smatram svako slovo/simbol koje nije samoglasnik i nije NULLznak Pretpostavka: Unesena rijec nema slova razlicite velicine (program radi i u tomslucaju - ali za NPR: "Sarajevo", ispisuje "rajevoSa" Program radi iskljucivo prema pravilima navedenim u tekstu */ #include <stdio.h>#include <stdlib.h> void satrovacki(char *string); int main(){ int i; char string[100]; printf("Unesite rijec (do 100 slova):\n"); i=0; do { string[i++]=getchar(); } while (string[i-1]!='\n' && i<100); string[i-1]='\0'; satrovacki(string); return 0;} void satrovacki(char *string){ int i,k,p; char niz1[100],niz2[100]; i=0; k=0;  /* Petlja - trazi prvu sekvencu suglasnik samoglasnik, a dotad sva slova ubacuje uarray niz1, koji predstavlja prvi slog */ while ( *string!='\0' &&  ( (*string==65 || *string==97 || *string==79 || *string==111 || *string *string==73 || *string==105 || *string==85 || *string==117 || *string=='\0') || (*(string+1)!=65 && *(string+1)!=97 && *(string+1)!=79 && *(string+1) *(string+1)!=73 && *(string+1)!=105 && *(string+1)!=85 && *(string+1 ) ) { niz1[i++]=*string++; }  if (*string!='\0')

Stranica 6

Page 7: Zadaa 4 - Samo materijali i materijali · 2015-10-26 · UNIVERZITET U SARAJEVU ELEKTROTEHNI KI FAKULTET Zadatak 2. 2.c /* Sortiranje slova iz unesenog stringa po abecedi (Pravila

UNIVERZITET U SARAJEVU

ELEKTROTEHNIČKI FAKULTET

{ niz1[i++]=*string++; niz1[i++]=*string++; /* Ubacuje sekvencu suglasnik samoglasnik u prvi slog */  if ( /* Ako su sljedeca 2 slova suglasnici, prvo takoder ulazi u prvi slog */ (*string!=65 && *string!=97 && *string!=79 && *string!=111 && *string!=69&& *string!=101 && /* Slovo je suglasnik */ *string!=73 && *string!=105 && *string!=85 && *string!=117 && *string!='\0') && (*(string+1)!=65 && *(string+1)!=97 && *(string+1)!=79 && *(string+1)!=111 *(string+1)!=73 && *(string+1)!=105 && *(string+1)!=85 && *(string+1)!=117 && *(string+1)!='\0') ) niz1[i++]=*string++;  while (*string!='\0') niz2[k++]=*string++; /* Formira string od ostatka slovaiz rijeci */ }  niz1[i]='\0'; niz2[k]='\0';  /* Ispis ostatka rijeci */ for (p=0; p<k; p++) { printf("%c",niz2[p]); }  /* Ispis pocetnog sloga (na kraju) */ for (p=0; p<i; p++) { printf("%c",niz1[p]); }  printf("\n"); return 0;}

Stranica 7