14
Zadatak 1. Ispisivanje niza slučajnih brojeva. Broj brojeva upisujemo u Edit1. (n). Brojevi se generišu klikom na dugme GENERIŠI. Svi generisani brojevi, sem što su ispisani u Memo1 komponenti, ostaju zapamćeni u nizu a (u memoriji) u za to predviđenim memorijskim lokacijama na adresi a(a[1],a[2],a[3]…). Pri aktivaciji aplikacije treba izbrisati tekst iz Memo1. To se postiže metodom Clear. Brisanje sadržaja u Memo1 komponenti (događaj na formu onActivate): procedure TForm1.FormActivate(Sender: TObject); begin Memo1.Clear; Edit1.Clear; end; Generisanje slučajnih brojeva sa definisanjem niza: procedure TForm1.Button1Click(Sender: TObject); ); (Dugme GENERISI) var a: array[1..100] of integer; - definiše se niza od max 100 celobrojnih članova i,n:integer; - n je broj elemenata niza, i brojač (indeks elemenata niza) begin n:=StrToInt(edit1.text); randomize; for i:=1 to n do begin a[i]:=random(100); - generisanje slučajnog broja Memo1.Lines.Add(inttostr(a[i])); - u svaku liniju Memo komponente se dodaje po jedan end; element niza a[i], metodom Add end;

Zadatak 1. Ispisivanje niza slučajnih brojeva. · 2020. 5. 17. · DOMAĆI ZADATAK: Za vežbanje kod kuće uradite sledeće zadatke: 1. Napravi aplikaciju u delphi-ju koji će učitati

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

  • Zadatak 1. Ispisivanje niza slučajnih brojeva.

    Broj brojeva upisujemo u Edit1. (n).

    Brojevi se generišu klikom na dugme GENERIŠI. Svi generisani brojevi, sem što su ispisani u Memo1 komponenti, ostaju zapamćeni u nizu a (u memoriji) u za to predviđenim memorijskim lokacijama na adresi a(a[1],a[2],a[3]…).

    Pri aktivaciji aplikacije treba izbrisati tekst iz Memo1. To se postiže metodom Clear.

    Brisanje sadržaja u Memo1 komponenti (događaj na formu onActivate):

    procedure TForm1.FormActivate(Sender: TObject); begin Memo1.Clear; Edit1.Clear; end;

    Generisanje slučajnih brojeva sa definisanjem niza:

    procedure TForm1.Button1Click(Sender: TObject); ); (Dugme GENERISI) var a: array[1..100] of integer; - definiše se niza od max 100 celobrojnih članova i,n:integer; - n je broj elemenata niza, i brojač (indeks elemenata niza) begin n:=StrToInt(edit1.text); randomize; for i:=1 to n do begin a[i]:=random(100); - generisanje slučajnog broja Memo1.Lines.Add(inttostr(a[i])); - u svaku liniju Memo komponente se dodaje po jedan end; element niza a[i], metodom Add end;

  • Brisanje sadržaja iz Edit1 I Memo1: procedure TForm1.Button2Click(Sender: TObject); (Dugme IZBRISI) begin Memo1.Clear; Edit1.Clear; end;

    Izgled aplikacije:

    Primer korišćena svojstva Text:

    Zadatak 2: Napraviti aplikaciju koja prikazuje neparne brojeve do 100.

  • procedure TForm1.Button1Click(Sender: TObject); (Dugme PRIKAZI NEPARNE BROJEVE) var i,k:integer; s,t:string; begin s:=’ ’; - inicijalizacija stringa s (prazan string) i:=1; - prvi neparan broj while i

  • Izgled aplikacije:

    Procedure:

    procedure TForm1.FormCreate(Sender: TObject); - pri aktivaciji se brišu memo i edit.

    begin

    Memo1.Clear; - za brisanje koristi se metoda Clear

    Edit1.Clear;

    end;

    procedure TForm1.Button1Click(Sender: TObject); (Dugme UNOS NIZA)

    var a:array[1..100] of integer; - deklarisnje niza a celobrojnog tipa

    i,n: integer; - n je broj elemenata niza, i brojač (indeks elemenata niza)

    begin

    n:=StrToInt(Edit1.Text); - unos broja elemenata niza u Edit1

    for i:=1 to n do - unos elemenata niza preko InputBax-a

    a[i]:=StrToInt(InputBox('Unos niza','Unesi ' + IntToStr(i) + ' elemenata niza', ' ')); - a[i] je element niza, i indeks

    for i:=1 to n do - prikaz elemenata niza u Memo komponenti

    Memo1.Lines.Add(IntToStr(a[i])); - u svaku liniju Memo komponente se dodaje po jedan

    element niza a[i], metodom Add

    end;

    procedure TForm1.Button2Click(Sender: TObject); (Dugme NOVO)

    begin

    Memo1.Clear; - za brisanje koristi se metoda Clear

    Edit1.Clear;

    end;

  • Zadatak 4: Napraviti aplikaciju koja omogućava unos i prikaz n (ne više od 100) elemenata niza i sabiranje elemenat niza.

    Procedure:

    procedure TForm1.FormCreate(Sender: TObject); - pri aktivaciji se brišu memo i editi.

    begin

    Memo1.Clear; - za brisanje koristi se metoda Clear

    Edit1.Clear;

    Edit2.Clear;

    end;

    procedure TForm1.Button1Click(Sender: TObject); (Dugme UNOS NIZA)

    var a:array[1..100] of integer;

    i,n,S: integer;

    begin

    n:=StrToInt(Edit1.Text); - unos broja elemenata niza u Edit1

    S:=0; - suma je uvek pre pocetka sumiranja jednaka nuli

    for i:=1 to n do

    begin

    a[i]:=StrToInt(InputBox('Unos niza','Unesi ' + IntToStr(i) + ' elemenata niza', ' '));

    S:=S+a[i]; - suma je prethodna suma plus novi element niza

    end;

    for i:=1 to n do

    Memo1.Lines.Add(IntToStr(a[i]));

    Edit2.Text:=IntToStr(S);

    end;

    procedure TForm1.Button2Click(Sender: TObject); (Dugme NOVO)

    begin

    Memo1.Clear;

    Edit1.Clear;

    Edit2.Clear;

    end;

  • DOMAĆI ZADATAK:

    Za vežbanje kod kuće uradite sledeće zadatke:

    1. Napravi aplikaciju u delphi-ju koji će učitati niz od 20 elemenata i izračunati aritmetičku sredinu niza.

    2. Napravi aplikaciju u delphi-ju koji će učitati niz od n elemenata. Izračunati proizvod pozitivnih elemenata (većih od

    nule).

    3. Unosi se niz od 20 elemenata. Napravi aplikaciju u delphi-ju koji računa zbir 5-og, 16-og i 18-og elementa.

    4. Napravi aplikaciju u delphi-ju koji će ispisati sve brojeve do 500 koji su deljivi sa 3.

    5. Napravi aplikaciju u delphi-ju koji će ispisati sve trocifrene parne brojeve.

    Zadatak 1: Napravi aplikaciju u delphi-ju koji će učitati niz od 20 elemenata i izračunati

    aritmetičku sredinu niza.

    Procedure:

    procedure TForm1.FormCreate(Sender: TObject); - pri aktivaciji se brišu memo i editi.

    begin

    Memo1.Clear; - za brisanje koristi se metoda Clear

    Edit1.Clear;

    Edit2.Clear;

    end;

    procedure TForm1.Button1Click(Sender: TObject); (Dugme UNESI NIZ)

    var a:array[1..100] of integer;

    i,n,S: integer;

    SV:real; - aritmetička sredina niza (srednja vrednost)

    begin

    n:=StrToInt(Edit1.Text); - unos broja elemenata niza u Edit1

    S:=0; - suma je uvek pre pocetka sumiranja jednaka nuli

  • for i:=1 to n do

    begin

    a[i]:=StrToInt(InputBox('Unos niza','Unesi ' + IntToStr(i) + ' elemenata niza', ' '));

    S:=S+a[i]; - suma je prethodna suma plus novi element niz

    end;

    for i:=1 to n do

    Memo1.Lines.Add(IntToStr(a[i]));

    SV:=S/n; - aritmetička sredina niza

    Edit2.Text:=IntToStr(SV);

    end;

    procedure TForm1.Button2Click(Sender: TObject); (Dugme NOVO)

    begin

    Memo1.Clear;

    Edit1.Clear;

    Edit2.Clear;

    end;

    Može i ovako:

    Deklarisanje globalnih promenljivih:

    Lokalne promenljive se deklarišu u proceduri i važe samo u okviru te procedure. Ako želimo da

    imamo promenljive koje se koriste u svim procedurama, onda su to globalne promenljive i one

    mogu da se koriste u svim procedurama.

    U ovom slučaju potrebno je da definišemo globalne promenljive koje će važiti i koristiti se u

    svim procedurama. To se radi na isti način kao i definisanje lokalnih promenljivih sam u delu

    iznad svih procedura izmađu var i implementation.

  • Deklarisanje promenljivih i procedure:

    var

    Form1: TForm1;

    a:array[1..100] of integer; - deklarisanje niza kao globalne promenljive

    i,n,S: integer; - deklarisanje globalnih promenljivih

    SV:real;

    implementation

    {$R *.dfm}

    procedure TForm1.FormActivate(Sender: TObject);

    begin

    Memo1.Clear;

    Edit1.Clear;

    Edit2.Clear;

    end;

  • procedure TForm1.Button1Click(Sender: TObject); (Dugme UNESI NIZ)

    begin

    n:=StrToInt(Edit1.Text);

    S:=0;

    for i:=1 to n do

    begin

    a[i]:=StrToInt(InputBox('Unos niza','Unesi ' + IntToStr(i) + ' elemenata niza', ' '));

    S:=S+a[i];

    end;

    for i:=1 to n do

    Memo1.Lines.Add(IntToStr(a[i]));

    end;

    procedure TForm1.Button2Click(Sender: TObject); (Dugme NOVO) begin

    Memo1.Clear;

    Edit1.Clear;

    Edit2.Clear;

    end;

    procedure TForm1.Button3Click(Sender: TObject); (Dugme IZRACUNAJ)

    begin

    SV:=S/n; - računanje aritmetičke sredine niza.

    Edit2.Text:=FloatToStr(SV);

    end;

    Zadatak 2. Napravi aplikaciju u delphi-ju koji će učitati niz od n elemenata. Izračunati proizvod

    pozitivnih elemenata (većih od nule).

  • Deklarisanje promenljivih i procedure:

    var

    Form1: TForm1;

    a:array[1..100] of integer; - deklarisanje niza kao globalne promenljive

    i,n,P: integer; - deklarisanje globalnih promenljivih. P je proizvod

    implementation

    {$R *.dfm}

    procedure TForm1.FormActivate(Sender: TObject);

    begin

    Memo1.Clear;

    Edit1.Clear;

    Edit2.Clear;

    end;

    procedure TForm1.Button1Click(Sender: TObject); (Dugme UNESI NIZ)

    begin

    n:=StrToInt(Edit1.Text);

    P:=1; - P je uvek na početku 1.

    for i:=1 to n do

    begin

    a[i]:=StrToInt(InputBox('Unos niza','Unesi ' + IntToStr(i) + ' elemenata niza', ' '));

    if a[i]>0 then

    P:=P*a[i]; - računanje proizvoda. Proizvod je prethodni proizvod puta tekući element niza.

    end;

    for i:=1 to n do

    Memo1.Lines.Add(IntToStr(a[i]));

    end;

    procedure TForm1.Button2Click(Sender: TObject); (Dugme NOVO)

    begin

    Memo1.Clear;

    Edit1.Clear;

    Edit2.Clear;

    end;

    procedure TForm1.Button3Click(Sender: TObject); (Dugme IZRACUNAJ)

    begin

    Edit2.Text:=FloatToStr(P); - prikaz proizvoda P

    end;

  • Zadatak 3. Unosi se niz od 20 elemenata. Napravi aplikaciju u delphi-ju koji računa zbir 5-og,

    16-og i 18-og elementa.

    Deklarisanje promenljivih i procedure:

    var

    Form1: TForm1;

    a:array[1..100] of integer; - deklarisanje niza kao globalne promenljive

    i,n,S: integer; - deklarisanje globalnih promenljivih. P je proizvod

    implementation

    {$R *.dfm}

    procedure TForm1.FormActivate(Sender: TObject);

    begin

    Memo1.Clear;

    Edit1.Clear;

    Edit2.Clear;

    end;

    procedure TForm1.Button1Click(Sender: TObject); (Dugme UNESI NIZ)

    begin

    n:=StrToInt(Edit1.Text);

    for i:=1 to n do

    begin

    a[i]:=StrToInt(InputBox('Unos niza','Unesi ' + IntToStr(i) + ' elemenata niza', ' '));

    end;

    for i:=1 to n do

    Memo1.Lines.Add(IntToStr(a[i]));

    end;

  • procedure TForm1.Button2Click(Sender: TObject); (Dugme NOVO)

    begin

    Memo1.Clear;

    Edit1.Clear;

    Edit2.Clear;

    end;

    procedure TForm1.Button3Click(Sender: TObject); (Dugme IZRACUNAJ) begin

    S:= a[5] + a[15] +a[18]; - suma elemenata

    Edit2.Text:=FloatToStr(P);

    end;

    Zadatak 4. Napravi aplikaciju u delphi-ju koji će ispisati sve brojeve do 500 i sve brojeve od 1

    do 500 koji su deljivi sa 3.

    Procedure:

    procedure TForm1.FormActivate(Sender: TObject);

    begin

    Memo1.Clear;

    Memo2.Clear;

    end;

    procedure TForm1.Button1Click(Sender: TObject);

    var a:array[1..500] of integer;

    i: integer;

    begin

    for i:=1 to 500 do

    begin

    a[i]:=i;

    Memo1.Lines.Add(IntToStr(a[i])); - prvi niz

    end;

  • for i:=1 to 500 do

    begin

    if a[i] mod 3 = 0 then

    begin

    Memo2.Lines.Add(IntToStr(a[i])); - drugi niz

    end;

    end;

    end;

    procedure TForm1.Button2Click(Sender: TObject);

    begin

    Memo1.Clear;

    Memo2.Clear;

    end;

    Zadatak 5. Napravi aplikaciju u delphi-ju koji će ispisati sve trocifrene parne brojeve.

    Procedure:

    procedure TForm1.FormActivate(Sender: TObject);

    begin

    Memo1.Clear;

    Memo2.Clear;

    end;

    procedure TForm1.Button1Click(Sender: TObject);

    var a:array[1..900] of integer;

    i: integer;

    begin

    for i:=100 to 999 do

    begin

    a[i]:=i;

    Memo1.Lines.Add(IntToStr(a[i])); - prvi niz

    end;

  • for i:=100 to 999 do

    begin

    if a[i] mod 2 = 0 then

    begin

    Memo2.Lines.Add(IntToStr(a[i])); - drugi niz

    end;

    end;

    end;

    procedure TForm1.Button2Click(Sender: TObject);

    begin

    Memo1.Clear;

    Memo2.Clear;

    end;