upr w zadaci01
DESCRIPTION
progr zadaci uvodTRANSCRIPT
-
ProgramiranjeI_sylabus.doc
Uvod u programiranje :: Workshop
http://dl.fit.ba/
1
Fakultet informacijskih tehnologija
Datum:15.10.2009.
Zadaci 1. dio
Kratke napomene za Visual STUDIO .NET (2003 / 2005 / 2008)
- u Visual Studio-u jedan program predstavlja jedan projekat
- prije otvaranja novih ili postojeih projekata morate prvo zatvoriti trenutni projekat (ako je otvoren): File Close Solution (ili File Close Project)
- novi projekat kreiramo sa opcijama File New Project
- u okviru ovog predmeta kreirat
emo samo projekte tipa Win32 Console Application da bi
detaljno izuili sintaksu C++ jezika
- prilikom kreiranja projekta tipa
Win32 Console Application
odaberite opciju Emty Project:
- mi emo trenutno koristiti samo jedan .cpp fajl po projektu (programu), ako ipak pokuate kompajlirati jedan projekat u koji ste dodali vie cpp-fajlova najvjerovatnije e se pojaviti greka jer niste povezali fajlove ili ste koristili vie main funkcija
- novi prazni cpp-fajl dodajte u va projekat naredbom Add Add New Item cpp
Tek sada moete pisati va C++ program.
Nakon to izvrite build vaeg programa, pokrenite ga na jedan dva mogua naina:
1. Debug Start Without Debugging ili Ctrl+F5. U tom sluaju ne morate dodavati naredbu system("PAUSE") na kraju programa.
2. Debug Start Debugging ili F5. U tom sluaju morate dodavati naredbu system("PAUSE") na kraju programa.
-
ProgramiranjeI_sylabus.doc
Uvod u programiranje :: Workshop
http://dl.fit.ba/
2
Fakultet informacijskih tehnologija
Ako vam se prilikom pokuaja kompajliranja javi sljedea
poruka oznaite checkbox Do not show this dialog
again i kliknite YES.
Ako vam se prilikom kompajliranja javi poruka
da imate greaka oznaite checkbox Do not
show this dialog again i kliknite NO.
Lista sintaksnih greaka koje ste napravili e vam biti prikazane u prozoru Error List:
Ovaj prozor moete aktivirati sa opcijom View Error
List.
Duplim klikom na neku od greaka iz liste bit e vam oznaen red source kda u kojem
se nalazi greka.
Zapamtite: Jedan program predstavlja jedan projekat. To znai da ete morati praviti
novi projekat za svaki novi zadatak ako elite da imate prethodne zadatke sauvane. Ako
elite da imate prethodne zadatke sauvane, moete kd starog programa kopirati u
Notepad i snimiti u svoju arhivu (Select All Copy Paste Save As). U ovom sluaju
ete koristiti samo jedan projakat.
Gdje nabaviti Visual Studio?
Visual Studio 2008 Professional sa studentskom licencom moete dobiti na Fakultetu
informacijskih tehnologija (ako ve niste dobili).
Glavne komponente razvojnog okruenja Visual Studio Professional su:
- Visual C++
- Visual Basic.NET
- Visual C#
- Visual J# (samo za Visual Studio 2003 / 2005)
- Visual Web Developer
- MS SQL Server 2005 Express
- MSDN Library za offline help
- .NET Framework SDK - Microsoft Platform Software Development Kit (potrebno za
izradu Windows aplikacija)
-
ProgramiranjeI_sylabus.doc
Uvod u programiranje :: Workshop
http://dl.fit.ba/
3
Fakultet informacijskih tehnologija
Za sve gore navedene komponente moete koristiti besplatne Express verzije sa skoro
svim opcijama kao Professional verzija.
Visual C++ Express i SDK moete preuzeti sa stranice:
http://msdn.microsoft.com/vstudio/express/visualc/download (470MB + 420 MB)
Uputstvo za runo konfigurisanje Visual C++ Express i SDK, koje je nuno vriti samo u
Express verziji, moete takoe proitati na gore datoj web-stranici.
-
ProgramiranjeI_sylabus.doc
Uvod u programiranje :: Workshop
http://dl.fit.ba/
4
Fakultet informacijskih tehnologija
Zadatak 1:
Napravite program 'Hello World' u Visual C++-u (2003/2005/2008):
a) tako to ete koristiti void main()
b) tako to ete koristiti int main()
Rjeenje se nalazi na stranici br. 8.
Pomo:
- program 'Hello World' predstavlja kratki program koji samo ispisuje neku poruku
- ako koristite void main() onda ne smijete na kraju programa dodati return 0
- ako koristite int main() onda morate na kraju programa return 0
- naredba return 0 se stavlja poslije naredbe system("PAUSE")
- sa system("pause") pozivamo DOS-ovu naredbu "PAUSE" koja e konzolni (DOS-ov)
prozor pauzirati dok ne pritisnemo neku tipku
- ako ne elimo da nam se ispisuje poruka press any key to continue onda emo
koristiti naredbu system("PAUSE > nul")
Zadatak 2:
Napravite program 'Hello World' bez koritenja system("PAUSE")
a) tako to ete koristiti void main()
b) tako to ete koristiti int main()
Kako ete ovakav program pokrenuti u vaem kompajleru?
Rjeenje se nalazi na stranici br. 8.
Zadatak 3 (nije obavezan):
ta morate izmijeniti da bi programi iz zadatka br. 2 radili i u starom kompajleru Borland C++? Prepravite kd!
Rjeenje se nalazi na stranici br. 9.
Zadatak 4:
Napravite program, slijedei navedene zahtjeve:
a) deklariite varijablu a tipa int i dodjelite joj vrijednost 10 (u jednoj liniji kda)
b) deklariite varijablu b tipa int, tako da joj ne dodijelite nikakvu vrijednost
c) uitajte neku vrijednost sa tastature u varijablu b
(za unos vrijednosti sa tastature korisite naredbu cin;
prije uitavanje vrijednost sa tasture sa naredbom cin potrebno je krajnijem korisniku
ispisati neku uputnu poruku kao npr: Pozdrav, unesite neki broj!' , koristei naredbu cout )
d) deklariite varijablu c tipa int i dodijelite joj vrijednost 15
(u dvije odvojene linije kda)
e) deklariite varijablu d tipa int i dodijelite joj vrijednost a+b+c
f) ispiite (na ekran) vrijednost varijable d
Rjeenje se nalazi na stranici br. 9.
-
ProgramiranjeI_sylabus.doc
Uvod u programiranje :: Workshop
http://dl.fit.ba/
5
Fakultet informacijskih tehnologija
Zadatak 5:
Napravite program, slijedei navedene zahtjeve:
a) deklariite varijablu a1 tipa int i dodjelite joj vrijednost 10 (u dvije odvojene linije
kda)
b) deklariite varijablu a2 tipa int i uitajte joj vrijednost sa tastature
c) deklariite varijablu a3 tipa int i uitajte joj vrijednost sa tastature
d) deklariite varijablu a4 tipa int i dodjelite joj vrijednost (a1 + a2 + a3) * 3 + 4
e) deklariite varijablu b1 tipa int i dodjelite joj vrijednost 104 22
1 aa
f) ispiite vrijednost varijable a4 i varijable b
Rjeenje se nalazi na stranici br. 10.
Zadatak 6:
Kratka napomena:
- u C++-u moete vie uzastopnih linija cout-ispisa spojiti u jedan cout-ispis, i
obrnuto, npr.:
cout
-
ProgramiranjeI_sylabus.doc
Uvod u programiranje :: Workshop
http://dl.fit.ba/
6
Fakultet informacijskih tehnologija
Zadatak 7:
Prepravite prethodni program, koristei dalje ve deklarisanu varijablu pi iz prethodnog
zadataka:
- tako da se krajnjem korisniku ispie poruka 'Vrijednost za pi je 3.14' sa ispisom u jedom redu konzolnog programa, a sa dvije cout-naredbe.
- tako da se krajnjem korisniku ispie poruka 'Vrijednost kvadrata od pi je 9.85' sa ispisom u jedom redu konzolnog programa, a sa dvije cout-naredbe.
Rjeenje se nalazi na stranici br. 10.
Zadatak 8:
Prepravite prethodni program iz zadatka 7:
a) tako da za ispis poruke 'Vrijednost za pi je 3.14' u jedom redu koristite samo
jednu cout-naredbu umjesto dvije
b) tako da za ispis poruke 'Vrijednost kvadrata od pi je 9.85' u jedom redu koristite
samo jednu cout-naredbu umjesto dvije
Rjeenje se nalazi na stranici br. 10.
Zadatak 9:
Prepravite prethodni program iz zadatka 6:
a) tako da za ispis prve poruke koja se nalazi u dva reda koristite samo jedan cout
b) tako da za ispis druge poruke koja se nalazi u dva reda koristite samo jedan cout
Rjeenje se nalazi na stranici br. 10.
Zadatak 10:
Napravite program, slijedei navedene zahtjeve:
a) deklariite varijablu poetna tipa int i dodijelite joj vrijednost 15
b) deklariite varijablu d i uitajte joj vrijednost sa tastature
c) deklariite varijablu e i dodijelite joj vrijednost pocetna * d
d) ispiite vrijednost varijabe e
e) uveajte varijablu e za 1 (drugim rijeima: nova vrijednost e neka bude jednaka staroj vrijednosti e + 1)
f) ispiite vrijednost varijable e
g) kvadrirajte varijablu e
(drugim rijeima: novo e neka bude jedno staro e * staro e)
h) ispiite vrijednost varijable e
Rjeenje se nalazi na stranici br. 10.
-
ProgramiranjeI_sylabus.doc
Uvod u programiranje :: Workshop
http://dl.fit.ba/
7
Fakultet informacijskih tehnologija
Zadatak 11:
Kratka napomena:
- umjesto endl moete koristiti i \n
- \n mora biti pod navodnicima, dok endl mora biti izvan navodnika
- slijedee dvije linije kda rade istu istvar cout
-
ProgramiranjeI_sylabus.doc
Uvod u programiranje :: Workshop
http://dl.fit.ba/
8
Fakultet informacijskih tehnologija
Rjeenja
Rjeenje zadatka br. 1:
a)
1:
2:
3:
4:
5:
6:
7:
8:
9:
#include
using namespace std;
void main()
{
cout
-
ProgramiranjeI_sylabus.doc
Uvod u programiranje :: Workshop
http://dl.fit.ba/
9
Fakultet informacijskih tehnologija
U nastavku su prikazana rjeenja sa funkcijom main ija je povratna vrijednost tipa void,
jer ne moramo koristiti naredbe return 0.
Rjeenje zadatka br. 3:
Potrebno je samo umjesto linija br. 1 i br. 2 staviti liniju #include
a)
1:
2:
3:
4:
5:
6:
#include
void main()
{
cout
-
ProgramiranjeI_sylabus.doc
Uvod u programiranje :: Workshop
http://dl.fit.ba/
10
Fakultet informacijskih tehnologija
Rjeenje zadatka br. 5:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
#include
using namespace std;
void main()
{
// a) deklariite varijablu a1 tipa int i dodjelite joj vrijednost 10 (u dvije odvojene linije kda) int a1;
a1 = 10;
// b) deklariite varijablu a2 tipa int i uitajte joj vrijednost sa tastature int a2;
cout a2;
// c) deklariite varijablu a3 tipa int i uitajte joj vrijednost sa tastature int a3;
cout a3;
// d) deklariite varijablu a4 tipa int i dodjelite joj vrijednost (a1 + a2 + a3) * 3 + 4 // nije bitno, da li emo u jednoj liniji kda ili dvije linije kda to uiniti, jer nije naglaeno int a4;
a4 = (a1 + a2 + a3) * 3 + 4;
// e) deklariite varijablu b1 tipa int i dodjelite joj vrijednost a12 + 4*a2 - 10; int b1;
b1 = a1 * a1 + 4 * a2 - 10;
// f) ispiite vrijednost varijable a4 i varijable b cout
-
ProgramiranjeI_sylabus.doc
Uvod u programiranje :: Workshop
http://dl.fit.ba/
11
Fakultet informacijskih tehnologija
Rjeenje zadatka br. 8:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
#include
using namespace std;
void main()
{
float pi = 3.14;
cout
-
ProgramiranjeI_sylabus.doc
Uvod u programiranje :: Workshop
http://dl.fit.ba/
12
Fakultet informacijskih tehnologija
Rjeenje zadatka br. 11:
Ispravljeni kd:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
#include
using namespace std;
void main() // ovjde treba void umjesto int ili treba dodati return 0
{
float pi = 3.14; // ovjde treba tacka umjesto zareza
float r = 2;
cout