Zbirka u c Zadataka Nizova Max Min

download Zbirka u c Zadataka Nizova Max Min

of 34

Transcript of Zbirka u c Zadataka Nizova Max Min

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    1/34

    Mira Nikoli

    Zbirka reenihzadataka

    izprogramskog

    jezika C

    Sadraj:

    PROGRAMI SA LINIJSKOMSTRUKTUROM

    USLOVNE NAREDBECIKLUSINIZOVIFUNKCIJEFUNKCIJE I POKAZIVAI

    MATRICESLUAJNI BROJEVI, KONVERZIJA

    BROJEVASTRINGOVIMODULIPRETRAIVANJE I SORTIRANJE

    NIZOVA - MODULI

    STRUKTURE

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    2/34

    2

    PROGRAMI SA LINIJSKOM STRUKTUROM

    1. Program za izraunavanje obima i povrsine pravougaonika ako su datestranice

    #include#include

    void main (void){float a,b,O,P;clrscr();printf("\nProgram racuna obim i povrsinu pravougaonika\n");printf("a=");scanf("%f",&a);printf("b=");scanf("%f",&b);O=2*(a+b);P=a*b;printf("Obim je \tO=%.2f\n",O);printf("Povrsina je \tP=%.2f\n",P);

    }

    2. Program za izraunavanje obima i povrsine pravouglog trougla ako sudate katete

    #include #include #include void main(void){double a,b,c,o,p ;clrscr();printf("Program racuna hipotenuzu, obim i povrsinu trougla \n");printf("Unesite duzune kateta pravouglog trougla\n\t");printf("a=");scanf("%lf",&a);printf("\tb=");scanf("%lf",&b);c=sqrt(a*a+b*b);o=a+b+c;p=a*b/2;

    printf("\nRezultati rada programa su: \n");printf("Hipotenuza je \tc=%.2f\n",c);printf("obim je \to=%.2f\n",o);printf("Povrsina je \tp=%.2f\n",p);}

    3. Program za izraunavanje obima i povrine trougla po Heronovom

    obrascu

    #include #include #include

    void main (void){

    float a,b,c,s,o,p;

    textbackground(28);textcolor(15);

    clrscr();

    printf("\n\n\tProgram racuna obim i povrsinu trougla \n");printf("\tpomocu Heronovog obrasca \n");printf("\n\nUnesite duzine stranica trougla \n\t");printf("a=");scanf("%f",&a);printf("\tb=");scanf("%f",&b);printf("\tc=");scanf("%f",&c);

    s=(a+b+c)/2;

    p=sqrt(s*(s-a)*(s-b)*(s-c));o=2*s;

    printf("\n\n\nRezultati rada programa su: \n");printf("Obim je \to=%.2f\n",o);printf("Povrsina je \tp=%.2f\n",p);printf("\n\n Program sa linijskom strukturom");}

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    3/34

    3

    4. Program za izraunavanje otpornosti bakarnog provodnika ako se znajuduina i prenik.

    #include #include #include

    void main (void){# define ROcu 1.588e-8# define PI 3.14double R,L,d,S;

    textbackground(9);textcolor(15);clrscr();

    printf("\n Duzina provodnika u [mm] je:\n\tl=");scanf("%lf",&L);printf("\n Precnik provodnika u [mm] je:\n\td=");scanf("%lf",&d);

    S=(d/1000)*(d/1000)*PI/4;R=ROcu*L/S;printf("\n\n Otpornost provodnika je %.5f [oma]",R);}

    5. Program za izraunavanje kapacitivnosti ploastog kondenzatora ako sezna povrina i rastojanje izmeu obloga.

    #include #include #include

    void main (void){# define E0 8.854e-12double c,d,s;int epsr;

    textbackground(9);textcolor(15);clrscr();

    printf("\n Povrsina kondenzatora u [mm2] je:");printf("\n\tS=");scanf("%lf",&s);printf("\n Rastojanje obloga kondenzatora u [mm] je:");printf("\n\td=");scanf("%lf",&d);printf(" Relativna dielektricna konstanta je: ");scanf("%d",&epsr);

    c=epsr*E0*s/(d*1000);

    printf("\n\n Kapacitet kondenzatora je:");/* Ovo je vrlo mala velicina *//* pa se mora pisati eksponencijalno *//* inace ce izgledati da je nula! */

    printf("\n\tC=%e",c);}

    6. Program za izraunavanje neto i bruto dohotka

    #include

    #include

    void main(void){int sati, cena, procenat;float bruto, neto;textbackground(8);textcolor(15);clrscr();

    printf("\n\nUnesite broj radnih sati: ");scanf("%d",& sati);printf("\nUnesite cenu u dinarima po satu: ");

    scanf("%d",& cena);printf("\nUnesite procenat doprinosa koji se odbija: ");scanf("%d",& procenat);

    bruto=cena*sati;neto=bruto-bruto*procenat/100;printf("\nBruto dodatak je %10.2f dinara\n",bruto);printf("Neto dodatak je %10.2f dinara\n", neto);

    }

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    4/34

    4

    7. Program za pretvaranje otpornosti vezanih u zvezdu u otpore vezane utrougao

    #include#include#include

    void main(void){int i;float Ra,Rb,Rc,Rab,Rbc,Rac;

    textbackground(12);textcolor(10);clrscr();printf("\n\t OVAJ PROGRAM PRETVARA ELEMENTE ZVEZDE U

    ELEMENTE TROUGLA\n");

    printf("\n\t UNESITE ELEMENTE ZVEZDE:\n\n\t Ra=");scanf("%f",&Ra);printf("\t Rb=");scanf("%f",&Rb);printf("\t Rc=");scanf("%f",&Rc);

    Rab=Ra+Rb+Ra*Rb/Rc;Rac=Ra+Rc+Ra*Rc/Rb;Rbc=Rb+Rc+Rb*Rc/Ra;

    printf("\n\t ELEMENTI TROUGLA SU:\n\n");printf("Ra\tRb\tRc\tRab\tRac\tRbc\n");printf("%.2f\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\n",Ra,Rb,Rc,Rab,Rac,Rbc);gotoxy(1,25);

    printf("Program sa linijskom strukturom");}

    8. Program za pretvaranje otpornosti vezanih u trougao u otpore vezane uzvezdu

    #include#include

    void main(void){float Ra,Rb,Rc,Rab,Rbc,Rac;textbackground(9);textcolor(10);clrscr();

    printf("Ovaj program pretvara elemente trougla u elemente zvezde");printf("\n\t unesite otpornosti trougla u omima \n\n\t Rab=");scanf("%f",&Rab);printf("\t Rbc=");scanf("%f",&Rbc);printf("\t Rac=");scanf("%f",&Rac);

    Ra=Rac*Rab/(Rac+Rbc+Rab);Rc=Rac*Rbc/(Rac+Rbc+Rab);Rb=Rbc*Rab/(Rac+Rbc+Rab);

    printf("\n\n\n\n");

    printf("Ra=\t%.2f\n\n", Ra);printf("Rb=\t%.2f\n\n",Rb);printf("Rc=\t%.2f\n\n",Rc);

    printf("Sve otpornosti su u Omima");

    }

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    5/34

    5

    USLOVNE NAREDBE

    9. Program za izraunavanje apsolutne vrednosti celog broja

    #include

    void main(){

    int broj,a_vred;printf("Ukucajte ceo broj?");scanf("%d",&broj);a_vred=broj;if(a_vredy)z=(x+1)/y;

    elseif(y>x)

    z=(y+1)/x;

    printf("\nDobijeno z je: z=%.2f\n", z);}

    11. Program za odredjivanje da li je karakter malo ili veliko slovo, cifra ilispecijalni karakter - if else iskaz

    #includevoid main(){

    char c;printf("Ukucajte karakter?");scanf("%c",&c);

    if(c>='a'&&c='A'&&c='0'&&cb)?(min=b,max=a):(min=a,max=b);

    printf("\n\n max=%d\tmin=%d",max,min);}

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    6/34

    6

    13.Napii program koji rauna vrednost f(x) za ucitano x.-2 x

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    7/34

    7

    15.Napii program koji reava kvadratnujednainu za ucitano a,b,c.

    #include#include#includevoid main(void){float a,b,c,x1,x2,d;textbackground (0);

    textcolor (15);clrscr ();printf("\n\nOvaj program resava kvadratnu jednacinu");printf("\n\tax^2+bx+c=0\n");printf("a=");scanf("%f",&a);printf("b=");scanf("%f",&b);printf("c=");scanf("%f",&c);d=b*b-4*a*c;if(d>0)

    {x1=(-b-sqrt(d))/(2*a);x2=(-b+sqrt(d))/(2*a);printf("n\Kvadratna jednacina ima realna i razlicitaresenja:\n");printf("n\x1=%f i x2=%f :\n",x1,x2);

    }elseif(d==0)

    {x1=b/(2*a);printf("\nResenja su realna i jednaka:");printf("\nx1=x2=%.2f",x1);

    }

    else{x1=-b/(2*a);x2=sqrt(-d)/(2*a);printf("\nResenja su konjugovano kompleksna:");printf("\nx1=%.2f+i%.2f",x1,x2);printf("\nx2=%.2f-i%.2f",x1,x2);

    }}

    CIKLUSI

    16.Program za izraunavanje faktorijela

    #include

    void main(void){int i,n;long fak=1;

    printf("Ovaj program racuna n! za ucitano n\n");printf("Ucitajte n, n

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    8/34

    8

    18. Program za odredjivanje srednje vrednosti n celih pozitivnih brojeva-while iskaz

    #includevoid main(){

    int n, brojac=0;float suma=0, x;printf("Ukupno brojeva?\n");

    scanf("%d",&n);while(brojac

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    9/34

    9

    22. Program za odredjivanje Pitagorinih brojeva manjih od 40

    a2+ b2= c2#include #include #include

    void main(void){

    int a,b,c;clrscr();

    printf("\nOvaj program odredjuje Pitagorine brojeve a,b

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    10/34

    10

    25.Program koji rauna sumu kvadrata parnih, a kubova neparnih brojevaizmedju m i n

    #include #include

    void main(void){int m,n,i;long S=0;clrscr();

    gotoxy(15,10);printf("Ovaj program racuna sumu kvadrata parnih, \n");printf("a kubova neparnih brojeva izmedju m i n\n\n");printf("Ucitajte m i n :\n\n\n");

    printf("m=");scanf("%d",&m);printf("n=");scanf("%d",&n);

    i=m-1;while (++i

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    11/34

    11

    27.Program kojii simulira kretanje dve linije zvezdica duine n

    #include#include#include

    void main(void){int n,k=1,x,y=13,z=1;

    textbackground(15);textcolor(4);clrscr();printf("\n Ovaj program simulira kretanje dve linije");printf("\n sa po n (0

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    12/34

    12

    30.Program koji uitava niz i broji neparne elemente niza

    #include#include

    void main (void){int i, a[6],br;clrscr();

    printf("\nProgram broji neparne elemente niza\n");for(i=0,br=0;i

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    13/34

    13

    /*Ucitavanje brojeva i izracunavanje srednje vrednosti*/

    suma=0;for(i=0;i

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    14/34

    14

    36.Program koji uitava niiz a duzine 2n, pa od njega formira dva niza, b i c,duzine n, tako da elementi b budu 2,4,,6..., 2n-ti element a, a elementi cpretposlednji (2n-1), 2n-3..., 1. element a

    #include#include#include

    void main(void)

    {int n,i,a[100],b[50],c[50];

    clrscr();

    printf("\n\nProgram pravi nizove b i c od niza a");printf("\n\nUcitajte duzinu nizova b i c ");scanf("%d",&n);

    printf("\n\nUcitaj niz a koji je dugacak %d elemenata \n",2*n);for(i=0;i

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    15/34

    15

    38.Program koji uitava niz a i proverava da li je on monotono rastui

    #include#include#define MAX_NIZ 30

    void main(void){

    enum bool{FALSE,TRUE};

    int m,i,q,a[MAX_NIZ];

    for(i=0;i

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    16/34

    16

    40. Program za sortiranje jednodimenzionalnih nizova realnih brojeva odnajmanjeg do najveeg

    #include

    void main(){

    int n,i,j;float priv, x[100];

    do{printf("Koliko brojeva za sortiranje?[

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    17/34

    17

    42. Program rauna sumu kvadrata brojeva od 3 do 18 umanjenu za sumukvadrata brojeva od 9 do 10

    #include #include #include

    void main(void){

    double Sk();clrscr();

    printf("Ovaj program racuna sumu kvadrata brojeva od 3 do 18\n");printf("umanjenu za sumu kvadrata brojeva od 9 do 10\n");delay(3000);gotoxy(5,10);printf(" Suma=%lf \n",Sk(3,18)-Sk(9,10));gotoxy(5,50);printf("Program sa pozivom funkcije");}

    double Sk(int m, int n){double y;for(y=0;m

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    18/34

    18

    44.Program za tampanje Armstrongovih trocifrenih brojeva

    /*PROGRAM STAMPA SVE TROCIFRENE ARMSTRONGOVEBROJEVE*/

    /* abc=a*a*a+b*b*b+c*c*c */

    #include#include#include

    void main(void){

    int a,b,c,i,m; /*definisanje promenljivih*/int kub();

    textbackground(20);textcolor(15);clrscr();printf("\nPROGRAM STAMPA SVE TROCIFRENE ARMSTRONGOVE

    BROJEVE\n");printf("\tabc=a*a*a+b*b*b+c*c*c\n\n");

    for(m=100; m

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    19/34

    19

    46. Napisati program koji od unetog niza realnih brojeva A (maksimalneduine 15 elemenata) generie novi niz B iji su elementi sortirani urastuem poretku.Ispisati nizove A i B.

    #include #include

    void zameni (double *a,double *b){

    double temp;temp=*a;*a=*b;*b=temp;

    }

    int main(){

    double A[15],B[15];int i,j,dim;

    printf("\nUnesite dimenziju niza : ");scanf("%i",&dim);

    printf("\nUnesite clanove niza : ");

    for (i=0;i

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    20/34

    20

    48.Napisati program koji rauna novani iznos kojim raspolae ulagaposle n godina ako je godinja kamata p%godinje

    #include #include

    void main(void){int n;

    double p,s,iznos();

    textbackground(0);textcolor(15);clrscr();

    gotoxy(5,3);printf("\nOvaj program racuna vrednost novcanog uloga posle n godina

    \n");printf("\tuz godisnju kamatu od p%\n\n");

    printf("pocetna suma je dinara ");

    scanf("%lf",&s);printf("godisnja kamata je ");scanf("%lf",&p);printf("broj godina je ");scanf("%d",&n);

    gotoxy(5,10);printf("\nUstedjevina posle %d godina uz %4.2lf kamate\n",n,p);printf("\tiznosi %8.2lf dinara\n",iznos(n,p,s));

    gotoxy(5,50);printf("Program sa funkcijom");}

    double iznos(int n, double p, double s){if (n!=0)

    return ((1+p/100)*iznos(n-1,p,s));else return(s);

    }

    49.Napisati program koji ispisuje lanove Fibonaijevog niza pri emukoristi rekurzivnu funkciju

    #include #include #include

    long fib(int);

    void main(void){int n,i;

    textbackground(6);textcolor (20);clrscr();

    do{clrscr();printf("\nProgram za racunanje Fibonacijevog niza:");printf("\n\tn=");scanf("%d",&n);

    }while(n23);

    printf("\n\n");for (i=1;i

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    21/34

    21

    FUNKCIJE I POKAZIVAI

    50.Napisati program koji rauna sumu kvadrata i kubova brojeva oduitanog m do n korienjem jedinstvene funkcije kvadrat_kub

    #include #include void main(void){int m,n;long p,q;void kvadrat_kub();textbackground(0);textcolor(15);clrscr();

    gotoxy(5,5);printf("Za ucitano m i n ovaj program racuna \n");printf("p=mm+(m+1)(m+1)+...+nn i q=mmm+(m+1)(m+1)(m+1)+...+nnn\n\n");printf("Ucitajte m i n :\n\n\n");printf("m=");

    scanf("%d",&m);printf("n=");scanf("%d",&n);

    gotoxy(5,15);kvadrat_kub(m,n,&p,&q);printf("\nOd broja %d do broja %d \n",m,n);printf("suma kvadrata iznosi p=%ld, a kubova q=%ld \n",p,q);gotoxy(5,50);printf("Program sa funkcijama i pokazivacima");}

    void kvadrat_kub(int m, int n, long *kv, long *kub)

    { int i;*kv=*kub=0;for (i=m;i

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    22/34

    22

    MATRICE

    52.Program za skalarno mnoenje matrica

    #includevoid main(){

    int vrsta,kol;float scalar;static float matrica[3][5]={

    {7.0,16.83,55.131,13.1,12.91},{15.0,10.9,42.99,0.0,7.7},{-2.2,1.1,2.2,4.4,9.9}

    };printf("Originalna matrica:\n");for(vrsta=0;vrsta

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    23/34

    23

    54. Program za sabiranje matrica koji koristi funkcije, znatno elegantniji!

    #include#include

    void main (void){int i,j,a[10][10],b[10][10],c[10][10];

    long ucitmat(); /* ova funkcija ucitava matricu*/void stampmat(); /* ova funkcija stampa matricu*/

    textbackground(0);textcolor(15);clrscr();

    printf("\nOvaj program ucitava i sabira dve matrice i stampa ih\n");

    printf("\n\n Unesite vrednosti prve matrice:\n\n");ucitmat(2,3,'a',a);printf("Unesite vrednosti druge matrice:\n\n");ucitmat(2,3,'b',b);

    clrscr();printf("\n Matrica A ima elemente:\n");stampmat(2,3,'a',a);printf("\n Matrica B ima elemente:\n");stampmat(2,3,'b',b);

    for(i=1;i

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    24/34

    24

    55.Program za raunanje srednjih vrednosti vrsta poznate matrice

    #include#include#include

    void main (void){static float a[3][4]={

    {1.0,2.0,3.0,4.0},{11.5,22.4,33.3,44.2} ,{10.1,20.2,30.3,40.4}};

    int i,j;float sredina();

    textbackground(0);textcolor(15);clrscr();printf("\n\n\nOvaj program racuna srednju vrednost vrste matrice\n\n\n");printf("Elementi matrice a su:\n\n");

    for(i=0;i

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    25/34

    25

    57. Napisati program koji od unetog niza A (maksimalne duine 15elemenata) generie kvadratnu matricu M iji su elementi reda vrednostiiz niza A pomnoeni brojem reda. Ispisati matricu u tabelarnom formatu.

    #include #include

    int main(){

    double A[15],M[15][15];int i,j,dim;

    clrscr();printf("\nUnesite dimenziju niza : ");scanf("%i",&dim);

    printf("\nUnesite clanove niza : ");

    for (i=0;i

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    26/34

    26

    59. Napisati program za unos matrice M[3x4], a zatim sortirati kolonematrice u rastuem poretku po vrednosti zbira elemenata kolona.

    #include void zameni (int &A, int &B){

    int temp=A;A=B;B=temp;

    }

    void main(){

    int i,j,k,M[3][4],suma[4]={0,0,0,0};for (i=0;i

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    27/34

    27

    61. Napisati program upotrebom funkcija za unos, obradu i prikaz, koji erealizovati unos nekog celog broja x i osnove m (dozvoljene vrednosti od2 do 9). Izvriti konverziju u novi brojni sistem sa osnovom m i prikazatikonvertovani broj.

    #include int broj,osnova,i=0,rez[20];

    void unos()

    {printf ("Unesite Broj za konverziju: ");scanf ("%i",&broj);printf ("Unesite osnovu konverzije: (2-9) ");while (1){

    scanf ("%i",&osnova);if (osnova>1 && osnova0);

    }

    void prikaz(){

    printf ("\nBroj %i (10) = ",broj);for (--i;i>=0;i--)printf ("%i",rez[i]);

    printf (" (%i)\n",osnova);}void main(){

    unos();obrada();prikaz();

    }

    STRINGOVI

    62. Napisati program koji e konvertovati i prikazati na ekranu ASCIIkaraktere.

    #include #include void main(){

    char c;int i;clrscr();printf("\nTablica ASCII kodova\n\n");for (c=' ';c

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    28/34

    28

    64. Napisati program koji e uitati string i ispisati koliko puta se odredjenikarakter pojavljuje u tom stringu

    #include #include #include

    int broj_slovox(char x, char s[]); /*prototip funkcije*/

    void main(void){

    char x,str[25]; /*String je niz karaktera*/

    clrscr();printf("\nProgram broji pojavljivanje nekog slova u stringu\n");

    printf("\nUnesite string: \n");gets(str);printf("\nUnesite slovo: ");scanf("%c",&x);

    printf("Slovo '%c' se u stringu pojavljuje %d puta",x,broj_slovox(x,str));

    }

    int broj_slovox(char x, char s[]){

    int k,i,br=0;k=strlen(s);for (i=0;i

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    29/34

    29

    MODULI

    66. Napisati modul koji sadri funkcije za uitavanje i ispis niza i matrice

    #include#include

    long ucitniz(); /* ova funkcija ucitava niz*/

    void stampniz(); /* ova funkcija stampa niz*/long ucitmat(); /* ova funkcija ucitava matricu*/void stampmat(); /* ova funkcija stampa matricu*/

    long ucitniz(int m, char ime, int x[]){int i;for(i=0;i

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    30/34

    30

    68.Napisati program sa prethodinim modulom koji uitava dve matrice A iB, od 2x3 elemenata, pa ih sabira dajui elemente matrice C, a ondatampa sve 3 matrice.

    #include#include#include"pomocni.h" /*obrati paznju: pisu se navodnici ", ne !*/

    void main (void){int i,j,a[10][10],b[10][10],c[10][10];

    textbackground(0);textcolor(15);clrscr();

    printf("\nOvaj program ucitava i sabira dve matrice i stampa ih\n");printf("\n\n Unesite vrednosti prve matrice:\n\n");ucitmat(2,3,'a',a);printf("Unesite vrednosti druge matrice:\n\n");ucitmat(2,3,'b',b);

    clrscr();

    printf("\n Matrica A ima elemente:\n");stampmat(2,3,'a',a);printf("\n Matrica B ima elemente:\n");stampmat(2,3,'b',b);

    for(i=1;i

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    31/34

    31

    void selection_sort(char rast,int n,int x[]) /*rast='r' rastuci*/{ /*rast='o' opadajuci*/int i,j,pom;for(i=0;i0;i--){

    provera=1;for(j=1;ja[j])) ||((rast=='o')&&(a[j-1]

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    32/34

    32

    71. Napisati program sa prethodinim modulom koji sortira niz metodomselection sort

    #include #include #include "pomocni.h"#include "sort.h"void main (void)

    {int a[50];

    textbackground(0);textcolor(15);clrscr();

    gotoxy(5,5);printf("Ovaj program sortira niz od 5 elemenata \n");ucitniz(5,'a',a);selection_sort('r',5,a); /* 'r'-rastuci, 'o'-opadajuci poredak*/gotoxy(1,20);stampniz(5,'a',a);

    gotoxy(5,50);printf("Program za sortiranje niza - selection sort");}

    72. Napisati program sa prethodinim modulom koji sortira niz metodom

    neposrednog umetanja

    #include #include #include "pomocni.h"#include "sort.h"

    void main (void){int a[50];textbackground(0);textcolor(15);clrscr();gotoxy(5,5);printf("Ovaj program sortira niz od 5 elemenata \n");ucitniz(5,'a',a);

    /* 'r'-rastuci, 'o'-opadajuci poredak*/neposredno_umetanje('o',5,a);gotoxy(1,20);stampniz(5,'a',a);gotoxy(5,50);printf("Program za sortiranje niza - neposredno umetanje ");}

    73. Napisati program sa prethodinim modulom koji sortira niz metodombubble sort

    #include #include #include "pomocni.h"#include "sort.h"void main (void){int a[50];textbackground(0);textcolor(15);clrscr();gotoxy(5,5);printf("Ovaj program sortira niz od 5 elemenata \n");

    ucitniz(5,'a',a);bubble_sort('r',5,a); /* 'r'-rastuci, 'o'-opadajuci poredak*/gotoxy(1,20);stampniz(5,'a',a);gotoxy(5,50);printf("Program za sortiranje niza - bubble sort ");}

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    33/34

    33

    STRUKTURE

    74.Program koji obavlja raunske opreracije sa kompleksnim brojevima(k.b. je definisan kao struktura)

    #include#include#include

    typedef struct{int re;int im;

    }Tkompleks;Tkompleks ucitaj(Tkompleks z1);Tkompleks saberi(Tkompleks z1, Tkompleks z2);Tkompleks oduzmi(Tkompleks z1, Tkompleks z2);Tkompleks mnozi(Tkompleks z1, Tkompleks z2);

    void main(void)

    {Tkompleks z1,z2,rez;

    clrscr();printf("\n\t Operacije sa kompleksnim brojevima \n");

    z1=ucitaj(z1);z2=ucitaj(z2);

    printf("Zbir dva kompleksna broja je \n");rez=saberi(z1,z2);printf("\n\t

    (%d+%di)+(%d+%di)=%d+%di",z1.re,z1.im,z2.re,z2.im,rez.

    re,rez.im);

    printf("\n\nRazlika dva kompleksna broja je \n");rez=oduzmi(z1,z2);printf("\n\t (%d+%di)-

    (%d+%di)=%d+%di",z1.re,z1.im,z2.re,z2.im,rez.re,rez.im);

    printf("\n\nProizvod dva kompleksna broja je \n");rez=mnozi(z1,z2);

    printf("\n\t(%d+i%d)*(%d+%di)=%d+%di",z1.re,z1.im,z2.re,z2.im,rez.re,rez.im);

    gotoxy(5,50);printf("\nProgram sa strukturama");}

    Tkompleks ucitaj (Tkompleks C){

    printf("\n Re(z)=");

    scanf("%d", &C.re);printf("\n Im(z)=");scanf("%d", &C.im);return C;

    }

    Tkompleks saberi(Tkompleks z1,Tkompleks z2){

    Tkompleks rez;rez.re=z1.re+z2.re;rez.im=z1.im+z2.im;return rez;

    }

    Tkompleks oduzmi (Tkompleks z1,Tkompleks z2){

    Tkompleks rez;rez.re=z1.re-z2.re;rez.im=z1.im-z2.im;return rez;

    }

    Tkompleks mnozi (Tkompleks z1,Tkompleks z2){

    Tkompleks rez;rez.re=z1.re*z2.re-z1.im*z2.im;

    rez.im=z1.re*z2.im+z1.im*z2.re;return rez;

    }

  • 7/25/2019 Zbirka u c Zadataka Nizova Max Min

    34/34

    34

    75. Program koji uitava i tampa niz slogova za koarkae

    #include #include

    struct licnost{char ime[20]; unsigned visina; unsigned br_kos;

    };

    void ucitaj(struct licnost*osoba){

    printf("\nunesite ime osobe "); gets(osoba ->ime);printf("unesite visinu osobe "); scanf("%u",& osoba ->visina);printf("unesite broj koseva "); scanf("%u",& osoba ->br_kos);while(getchar()!='\n'); /*ocisti se ono sto ostaje

    iza poslednjeg ulaznog podatka za scanf*/}

    void main(void){int n,i;

    struct licnost osoba[8];clrscr();printf("unesite broj osoba