ljstojanovic

Materijal za Racunarstvo i informatiku

Archive for the ‘Informatika III’ Category

For petlja

Posted by Ljiljana Stojanovic na 27. oktobra 2017.

Sintaksa:
                 for ( init; condition; increment )
                     {
                          statement(s);
                      }
Primer: Ispisati sve prirodne broeve manje ili jednake  10 a manje od 20.
using System;
namespace Loops
{
class Program
             {
                 static void Main(string[] args)
                     {
                     /* for loop execution */
                  for (int a = 10; a < 20; a ++)
               { Console.WriteLine(„value of a: {0}“, a);
               }
                 Console.ReadLine();
                 }
         }
}
Zadaci
1.Naći zbir prirodnih brojeva deljivih sa sedam a manjih od 100.
2.Sa tastature uneti  10 različitih beojeva. Odrediti njihov zbir.

Prikazati brojeve Fibonačijevog niza za zadato n,     npr n=10,  1,2,3,5,8,13,21,34,55,89

Advertisements

Posted in Informatika III | Leave a Comment »

Do..while petlja

Posted by Ljiljana Stojanovic na 27. oktobra 2017.

Sintaksa:
          do
               {
                     statement(s);
                } while( condition );
1.Unose se celi brojevi sve dok se ne unese 0. Ispiši koliko je brojeva uneto i kolika je njihova srednja vrednost.
using System;
namespace zbir_unetih_brojeva
{
class Program
{
public static void Main(string[] args)
{
int n=0;
int s=0;
int broj;//deklarišemo promenljivu broj koja predstavlja sve  brojeve koje ćemo uositi
do
{
Console.WriteLine(„Unesi broj, ako nema vise brojeva unesi nulu“);
broj=Convert.ToInt32(Console.ReadLine());
n=n+1; //broji koliko smo  uneli 
s=s+broj;
} while(broj!=0);
Console.WriteLine(„uneto je brojeva  {0}“, n);
Console.WriteLine(„suma svih brojeva je {000}“, s);
Console.Write(„Press any key to continue . . . „);
Console.ReadKey(true);
}
}
}
2.Napiši program kojim se od datog prirodnog broja n formira broj sa istim ciframa ali u inverznom poretku.
using System;
namespace inverzni_poredak
{
class Program
{
public static void Main(string[] args)
{
Console.WriteLine(„Unesi broj“);
int n=Convert.ToInt32(Console.ReadLine());
int inverz=0;
do{
inverz=inverz*10+n%10;
n=n/10;
} while(n!=0); //petlja radi sve dok je n različito od nule
Console.WriteLine(„inverzni poredak:  {0}“, inverz);
Console.Write(„Press any key to continue . . . „);
Console.ReadKey(true);
}
}
}
3.Za dati prirodan broj N:
a) dodati 1 poslednjoj cifri broja. Primer: 37 ->38, 49 -> 410;
b) dodati 2 prvoj cifri broja. Primer: 49 ->69, 92-> 112;
c) udvostručiti iti prvu cifru. Primer: 49->89, 89->169;
d) dodati 1 prvoj i poslednjoj cifri broja. Primer: 489->5810

Zadaci za vežbu:

Unose se  brojevi sve dok se ne unese 0. Ispisati prosek tih brojeva i koliko ih je bilo.

Zadat  je niz brojeva 1, 3, 9, 27, … Ispišite prvi član koji je veći od 1000.

Ako ispišemo sve brojeve od 1 do 282 koliko puta smo napisali cifru 2.

Odredi najmanji prirodan broj kod kojega je proizvod cifara 5040 (rešenje 25789)

 

Posted in Informatika III | Leave a Comment »

WHILE petlja

Posted by Ljiljana Stojanovic na 27. oktobra 2017.

Sintaksa:
while(condition)
                      {
                         statement(s);
                        }
Primer: Štampaj  prirodne brojeve veće ili jednake 10 a manje od 20.
using System;
namespace Loops
{
class Program
{
static void Main(string[] args)
{ /* local variable definition */objašnjenje//
int a = 10;
/* while loop execution */ objašnjenje//
while (a < 20)
{
Console.WriteLine(„value of a: {0}“, a);
// formatiranje stringa **
a++; //uvećava a za 1
}
Console.ReadLine();
} } }
Tutorial
2. Napisati program za izračunavaje n-tog stepena celog broja a koristeći while ciklus.
3.Napisati sve brojeve deljive sa 4, manje od 100.
4.Odrediti zbir cifara prirodnog broja n.
using System;
namespace zbir_cifara
{     class Program
 {         public static void Main(string[] args)
     {             Console.WriteLine(„Unesi broj“);
       int n=Convert.ToInt32(Console.ReadLine());
       int s=0;
       while (n!=0)
                    {
                      s=s+n%10;
                      n=n/10;
                    }
                     Console.WriteLine(„zbir cifara je: {0000}“,s);
                       Console.Write(„Press any key to continue . . . „);
                        Console.ReadKey(true);
     }     } }
5.Unesi ceo broj i pretvori ga u binarni.

Zadaci za vežbu:

Ispisati prirodne brojeve od10 do 6 unazad.

Suma prirodnih brojeva od 3 do 18

Suma neparnih prirodnih brojeva od 1 do 15

Suma prirodnih brojeva od a do b.

Suma prirodnih brojeva od 1 do n koji su djeljivi sa 3.

Proizvod prirodnih brojeva od 3 do 8.

Prebrojati neparne od 1 do n.

Prebrojati brojeve djeljive sa 7 u intervalu od k do n.

Izračunati aritmetičku sredinu brojeva djeljivih sa 3 u intervalu od a do b.

 

Posted in Informatika III | Leave a Comment »

Naredba visestrukog grananja-switch

Posted by Ljiljana Stojanovic na 27. oktobra 2017.

Sintaksa switch naredbe:

switch(expression)

{

case constant-expression  :      statement(s);      break; /* optional */

case constant-expression  :      statement(s);      break; /* optional */

/* you can have any number of case statements */

default : /* Optional */

statement(s);

}

1.Napisati algoritam i program koji će na osnovu izabranog rednog broja planete od sunca  iz liste štampati njen naziv.

namespace zad
{
class Program
{
public static void Main(string[] args)
{
Console.WriteLine(„unesi broj“);

int x=Convert.ToInt32(Console.ReadLine());

switch (x)
{
case 1: Console.WriteLine(„merkur“); break;
case 2: Console.WriteLine(„venera“); break;
case 3: Console.WriteLine(„zemlja“); break;

case 4: Console.WriteLine(„mars“); break;

case 5: Console.WriteLine(„jupitern“); break;

case 6: Console.WriteLine(„uran“); break;

default: Console.WriteLine(„Uneti redni broj nije broj planeta sunčevog sistema!“); break;
}

Console.Write(„Press any key to continue . . . „);
Console.ReadKey(true);
}
}
}

2.unetu numeričku ocenu učenika (od 1 do 5), ispisati njeno značenje (5 – „Odličan“, 4 – „Vrlo dobar“, 3 – „Dobar“, 2 – „Dovoljan“ i 1 – „Nedovoljan“).

3.Unosi se rednibroj dana u nedelji. Proveriti da li je u pitanju radni dan ili vikend.

4.Napisati program u kojem treba uneti cenu proizvoda, količinu kupljenog proizvoda, kao i način plaćanja (1-gotovina 2-kredit 3-čekovi). Izračunati ukupan iznos za plaćanje (ako se uzima na kredit tada se iznos uvećava za 6%, a za gotovinu se iznos umanjuje za 5%). Kao rezultat ispisati koliki iznos treba platiti.

5. Napisati program u kojem treba uneti dva cela broja i indikator operacije (1-sabiranje 2-oduzimanje 3-množenje i 4-deljenje), a rezultat ispisati u sledećem obliku:

Zbir brojeva je X (ako izaberete 1), Razlika brojeva je X (ako izaberete 2) …

 

 

 

Posted in Informatika III | Leave a Comment »

Tipovi podataka u C#

Posted by Ljiljana Stojanovic na 16. oktobra 2017.

Rešenje zadatka sa bloka:

*Uneti broj . Za negativan broj ispisati njegovu recipročnu vrednost, a za pozitivan ispisati zbir njegvog kvadrata i korena.

namespace zadatak
{
class Program
{
public static void Main(string[] args)
{
Console.WriteLine(„unesi broj“);

int x=Convert.ToInt32(Console.ReadLine());
if (x<0)
{
Console.WriteLine(1.0/x);  //drugi nacin Console.Write(1/(double)x);
}
else
{
double zbir=Math.Sqrt(x)+Math.Pow(x,2);
Console.WriteLine(zbir);
Console.WriteLine(zbir.ToString(„F“));//ovaj red ispisuje isto sto i prthodni samo na dve decimale zaokruzeno
}
Console.Write(„pritisni bilo koji taster….“);
Console.ReadKey(true);
}
}
}

TIPOVI PODATAKA U C#

*VREDNOSNI TIPOVI

*REFERENTNI TIPOVI

Promenljive vrednosnog tipa u okviru svog memorijskog prostora čuvaju vrednost te promenljive, dok promenljive referentnog tipa čuvaju adresu (referencu) memorijskog prostora na koji pokazuju.

VREDNOSNI tipovi:

-numerički (int, uint, long, ulong, double, float…)

-znakovni char

-logički bool, Boolean

-enumeracije enum

-strukture struct

REFERENTNI tipovi:

-stringovi

-nizovi (svih vrsta)

-klase

Između nekih tipova su moguće konverzije. Konverzija podataka mogu biti IMPLICITNE i EKSPLICITNE. Implicitne su automatske i kod njih nije potrebno navoditi dodatne komande. Eksplicitna konverzija se vrši ili kastovanjem (cast* – u zagradi ispred promenljive ili itraza navedemo tip npr (double)x) ili konverzionim metodama. Svi tipovi u c# se mogu konvertovati u string.

*U programerskom smislu – konvertovanje jedne vrednosti podataka u drugu.

NUMERIČKI TIPOVI

Što se tiče celobrojnih tipova najčešće su u upotrebi 32 bitni označeni (int), neoznačeni (uint) i 64 bitni long i ulong.

Podrazumevani realni tip je double. Ako želite da koristite tip float iza konstante se naodi slovo f ili F.

double a=10.5;    podrazumeva se da je konstanta 10.5 double

float b=10.5F;    bez F bi bila prijavljena greška , jer bi se konstanta posmatrala kao double

int i=12;

Bilo koji celobrojni tip se može dodeliti realnoj promenljivoj, jer se vrši implicitna konverzija. Obrnuto ne važi, mora se navesti kast operator:

 a=i;   ali ne i i=a; ispravno je i=(int)a;

pr:

using System;
namespace TypeConversionApplication 
{
   class ExplicitConversion 
   {
      static void Main(string[] args) 
      {
         double d = 5673.74; 
         int i;
         
         // cast double to int.
         i = (int)d;
         Console.WriteLine(i);
         Console.ReadKey();
      }
   }
}

Sledeći primer pokazuje kako se različiti tipovi konvertuju u string:

using System;
namespace TypeConversionApplication 
{
   class StringConversion
   {
      static void Main(string[] args)
      {
         int i = 75;
         float f = 53.005f;
         double d = 2345.7652;
         bool b = true;

         Console.WriteLine(i.ToString());
         Console.WriteLine(f.ToString());
         Console.WriteLine(d.ToString());
         Console.WriteLine(b.ToString());
         Console.ReadKey();
            
      }
   }
}

nakon izvršenja videćemo sledeće:

75
53.005
2345.7652
True
Zaključujemo:svaki tip se može prevesti u string;

int x=2;
Console.Writeline(1/x);   //stampace ceo deo od  1/2, dakle 0.
Cosole.Writeline(1/(double)x)  /x kastovano u realan broj , pa ce biti ispisano 0.5

primer:
 double x=4.67532;
 Console.Write(x.ToString("N2"));
ispisuje vrednost broja x kao 4.67 u numerickom formatu na dve decimale, "N3" na 3 decimale i td...dakle odseca deo broja

primer:
 double x=4.67532;
 Console.Write(x.ToString("N"));
ispisuje 4.68, dakle u standardnom numerickom formatu zaokruzeno na dve decimale.
"N0"  zaokruzuje na ceo broj, pa ce biti ispisano 5....
"F" zaokruzuje na dve decimale, pa ce biti ispisano 4.68...
primer:
 double x=4.67572;
 Console.Write((int)x); //ispisuje 4
Console.Writwriteline(x.ToString( "0.0"); //ispisuje 4.6
Console.Writwriteline(x.ToString( "00.0"); //ispisuje 04.6

Posted in Informatika III | Leave a Comment »

VI BLOK-Delphi

Posted by Ljiljana Stojanovic na 23. novembra 2016.

FOR NAREDBA

ZADATAK1: Sastavi aplikaciju koja računa proizvod prvih n prirodnih brojeva.

ZADATAK 2: Sastavi aplikaciju koja će izračunati zbir recipročnih vrednosti brojeva u intervalu od m do n.

ZADATAK 3. Sastavi aplikaciju koja će ispisati sve parne brojeve u intervalu od 1 do n

ZADATAK 4. Sastavi aplikaciju koja će prebrojati koliko ima brojeva deljivih sa 3  u intervalu od 1 do n

Zadaci za vežbu: Kreirati aplikaciju za:

1)izračunavanje zbira brojeva u intervalu od n do m.

2) izračunavanje sume parnih brojeva u intervalu od n do m.

3) izračunavanje sume (zbira) kvadrata brojeva od 1 do m.

4)izračunavanje i sumu korena brojeva od n do m.

5) izračunavanje faktorijela unetog broja n (n!).

 

Primer 1.Sastaviti aplikaciju koja  će računati  zbir prvih n prirodnih brojeva.

npr. za uneto n=3 računa se s=1+2+3

image38

Procedure…

Var n,s,i:integer;

BEGIN

n:=strtoint(edit1.text)

S:=0; {S uzima vrednost nula. To je početna vrednost koja se upisuje u memorijsku lokaciju na adresi s, da bi donji izraz S:=S+i imao smisla u prvom koraku kada je i=1}

FOR i:=1 TO n DO

S:=S+i; {Na staru vrednost promenljive s dodaje se trenutna vrednost kontrolne promenljive i }

edit2.text:=inttostr(s);

END.

 

 

Zadaci za vežbu(razni zadaci):

  1. Promenljivoj max dodeliti vrednost većeg od dva uneta broja.
  2. Promenljivoj max dodeliti vrednost većeg od tri uneta broja.
  3. Od tri uneta imena štampati ono koje je prvo po abecedom redosledu.

poredak

procedure TForm1.Button1Click(Sender: TObject);
var a,b,c,prvo:string;
begin
a:=Edit1.Text;
b:=Edit2.Text;
c:=Edit3.Text;
prvo:=a;
if b<prvo then prvo:=b;
if c<prvo then prvo:=c;
Edit4.Text:=prvo;
end;

  1. Uneti dužine tri duži. Ako je od njih moguće napraviti trougao, štampati njegovu površinu, u suprotnom štampati da je nemoguće napravi trougao.

trougao

procedure TForm1.Button1Click(Sender: TObject);
var a,b,c:integer;
s,p:real;

begin
a:=StrToInt(Edit1.Text);
b:=StrToInt(Edit2.Text);
c:=StrToInt(Edit3.Text);

if (a<(b+c))and (a> abs(b-c))  then   begin
s:=(a+b+c)/2;
p:=sqrt(s*(s-a)*(s-b)*(s-c)) ;
Edit4.Text:=’povrsina je’+FloatToStr(p);   end

else
Edit4.Text:=’ne moze se formirati trougao’;

end;

  1. Kreiraj aplikaciju koja testira da li je unet broj paran
  2. Kreiraj aplikaciju koja testira da li je unet broj deljiv sa 5
  3. Kreiraj aplikaciju koja testira da li je unet broj negativan
  4. Dat je trocifren broj.Odrediti najveću cifru.

najveca

procedure TForm1.Button1Click(Sender: TObject);
var a,b,c,max,x:integer;
begin
x:=StrToInt(Edit1.Text);
a:=x div 100;
b:=(x mod 100)div 10;
c:=x mod 10;
max:=a;
if b>max then max:=b;
if c>max then max:=c;
Edit4.Text:=IntToStr(max);
end;

  1. Dat je trocifren broj. Odrediti zbir cifara datog broja.
  2. Dat je trocifren broj. Napisati isti broj ali u inverznom poretku.

inverz

procedure TForm1.Button1Click(Sender: TObject);
var a,b,c,x,y:integer;
begin
x:=StrToInt(Edit1.Text);
a:=x div 100;
b:=(x mod 100)div 10;
c:=x mod 10;
y:=c*100+b*10+a;
Edit2.Text:=IntToStr(y);
end;

Zadatak:Na formu staviti jednu kontejnersku komonentu po izboru  i na nju tri RadioButton dugmeta. Klikom na dugme uz odgovarajući izbor prikazati rezultat.

memo1

procedure TForm1.Button1Click(Sender: TObject);
var s:string; n,i,k,p:integer;
begin
if RadioButton1.Checked then
begin
s:=Memo1.Text;
n:=Length(s);
Edit1.Text:=IntToSTr(n);
end;

if RadioButton2.Checked then
begin
s:=Memo1.Text;
n:=Length(s);
k:=0;
for  i:=1 to n do
if s[i]=’a’ then k:=k+1 ;
Edit1.Text:=IntToStr(k);
end;
if RadioButton3.Checked then
begin
s:=Memo1.Text;
n:=Length(s);
p:=0;
for  i:=1  to  n do
if s[i]=’  ‘ then p:=p+1 ;
Edit1.Text:=IntToStr(p);

end;
end;  {kraj procedure}

Posted in Informatika III | Leave a Comment »

V BLOK

Posted by Ljiljana Stojanovic na 23. novembra 2016.

V blok vežbi

RadioGoup kmponeta

Zadatak 1 (naredba CASE): Napisati program koji na osnovu unetog rednog broja planete, zavisno od udaljenosti od Sunca (1-Merkur, 2-Venera, 3-Zemlja, 4-Mars, 5-Jupiter, 6-Saturn, 7-Uran, 8-Neptun, 9-Pluton), ispisuje ime te planete

planete

procedure TForm1.Button1Click(Sender: TObject);
var x:integer;
begin
x:=StrToInt(Edit1.Text);
case x of
1: Edit2.Text:=’Merkur’;
2: Edit2.Text:=’Venera’;
3: Edit2.Text:=’Zemlja’;
4: Edit2.Text:=’Mars’;
5: Edit2.Text:=’Jupiter’;
6: Edit2.Text:=’Saturn’;
7: Edit2.Text:=’Uran’;
8: Edit2.Text:=’Neptun’;

end;
end;

Zadatak2. (naredba CASE) Napisati program koji na osnovu zadatog broja meseca ispisuje njegov naziv planete.

meseci

procedure TForm1.RadioGroup1Click(Sender: TObject);
begin
case RadioGroup1.ItemIndex of
0: Edit1.Text:=’januar’;
1: Edit1.Text:=’februar’;
2: Edit1.Text:=’mart’;
3: Edit1.Text:=’april’;
4: Edit1.Text:=’maj’;
5: Edit1.Text:=’jun’;
6: Edit1.Text:=’jul’;
7: Edit1.Text:=’avgust’;
8: Edit1.Text:=’septembar’;
9: Edit1.Text:=’oktobar’;
10: Edit1.Text:=’novembar’;
11: Edit1.Text:=’decembar’;
end;
end;

Zadatak3. (naredba Case)Napisati program koji na osnovu ocene od 1 do 5, određuje opisnu ocenu koja može biti ‘nedovoljan’, ‘dovoljan’, ‘dobar’, ‘vrlo dobar’ ili ‘odličan’.

Zadatak 4 : Napisati program u kojem se kao ulazna vrednost unosi rimski broj kao veliko slovo (I, V, X, L, C, D, M), a zatim se kao izlazni rezultat ispisuje njegova dekadna vrednost.

rimski

procedure TForm1.Button1Click(Sender: TObject);
begin
case RadioGroup1.ItemIndex of
0: Edit1.Text:=’1′;
1: Edit1.Text:=’5′;
2: Edit1.Text:=’10’;
3: Edit1.Text:=’50’;
4: Edit1.Text:=’100′;
5: Edit1.Text:=’500′;
6: Edit1.Text:=’1000′;

end;

end;

Zadatak5. (naredba Case) Napisati program u kojem treba uneti cenu proizvoda, količinu kupljenog proizvoda, kao i način plaćanja (1-gotovina 2-kredit 3-čekovi). Izračunati ukupan iznos za plaćanje (ako se uzima na kredit tada se iznos uvećava za 6%, a za gotovinu se iznos umanjuje za 5%). Kao rezultat ispisati koliki iznos treba platiti.

procedure TForm1.Button1Click(Sender: TObject);
var kol,cena,suma:real;
begin
kol:=StrToFloat(Edit2.Text);
cena:=StrToFloat(Edit1.Text);

case RadioGroup1.ItemIndex of
0:  begin
suma:=kol*cena*0.95;
Edit3.Text:=FloatToStr(suma);
end;
1:  begin
suma:=kol*cena*1.06;
Edit3.Text:=FloatToStr(suma);end;
2:  begin
suma:=kol*cena;
Edit3.Text:=FloatToStr(suma);
end;
end;

end;

kupovina

Zadatak6 Napisati program u kojem treba uneti dva cela broja, u RadioGroup komonenti izabrati operaciju(+,-,*,/), a rezultat ispisati u Edit komonenti.

kalkulator

procedure TForm1.RadioGroup1Click(Sender: TObject);
var x,y,z:real;
begin
x:=StrToInt(Edit1.Text);
y:=STrToInt(Edit2.Text);
case RadioGroup1.ItemIndex of
0: begin z:=x+y;  Edit3.Text:= FloatToStr(z); end;
1: begin z:=x-y;  Edit3.Text:= FloatToStr(z); end;
2: begin z:=x*y;  Edit3.Text:= FloatToStr(z); end;
3: begin z:=x/y;  Edit3.Text:= FloatToStr(z); end;
end;
end;

Posted in Informatika III | Leave a Comment »

Tacno vreme-timer komponenta

Posted by Ljiljana Stojanovic na 9. novembra 2016.

Zadatak: prikazati tacno vreme koristeci timer komponentu.

vreme

Na formu postaviti timer komponentu. Ona je nevizuelna, dakle, ne vidi se u toku izvrsenja fome…..

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Label1.Caption:=TimetoStr(Time);
end;

Posted in Informatika III | Leave a Comment »

Kvadrat koji menja boju-timer komponenta

Posted by Ljiljana Stojanovic na 9. novembra 2016.

Zadatak: na formu postaviti timer, button i shape komponente. Obezbediti da  klikom na dugme radi kvadrat menja boje(naizmenicno crvena i bela).

forma1

procedure TForm1.Button1Click(Sender: TObject);
begin
Timer2.Enabled:=true;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
if Shape1.Brush.Color = clRed then Shape1.Brush.Color:= clWhite else Shape1.Brush.Color:= clRed;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Timer1.Enabled:=false;
end;

Domaci zadatak: Uraditi zadatak koji simulira rad semafora.

Posted in Informatika III | Leave a Comment »

delphi-kretanje auta-timer komponenta

Posted by Ljiljana Stojanovic na 9. novembra 2016.

Zadatak: na formu postaviti timer, image, button(2)komponente/ Obezbediti da se klikom na dugme kreni, auto pokrece, a klikom na dugme stani zaustavlja.

Forma treba da izgleda ovako:

forma

 

zadatak

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Image1.Left:= Image1.Left-1;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Timer1.Enabled:=true;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Timer1.Enabled:=false;
end;

Posted in Informatika III | Leave a Comment »

 
Mrzm smglsnk

Jelena Pavlović

Računarstvo i informatika

Sonja Vlahović-Nikolić, Gimnazija "Svetozar Marković" Niš

Časovi računarstva

materijali za učenike gimnazije u Vrbasu

Učimo informatiku 2

--- seniori ---

Informatika

Word, Excel, Moodle i još ...

Blog Jaka Šifra | IT Blog Srbija

Materijal za Racunarstvo i informatiku

Vežbe i testovi iz računarstva i informatike i matematike

Zorica Beguš, profesor matematike i računarstva i informatike u Šabačkoj gimnaziji

Наталија Прерадов

гимназија "20. октобар" Бачка Паланка