op 2010-09-21

2
ELEKTROTEHNIČKI FAKULTET BANJA LUKA OSNOVI PROGRAMIRANJA (21.09.2010 - B) 1. Pretpostavimo da je dat program: #include <stdio.h> #define S(T,x,y) {T x=0; y++; {T x=y++;}} int x; static int y; void f(int n) { if (n) { S(int,x,y) f(n-1); } } int main() { extern int x,y; int i=1; for ( ; i<=3 ; i++ ) { f(i); printf("%d\n",y); } return (0); } Popuniti priloženu tablicu tako da ona prikazuje rezultat izvršavanja datog programa, tj. ispis na standardnom izlazu (jedna ćelija = jedan znak). 2. Dijagramom toka predstaviti algoritam koji ispisuje sve trocifrene proste brojeve čije su cifre u strogo rastućem redoslijedu (takvi brojevi su npr. 127, 139, 569‚ itd.). Osim toga, treba odrediti i ispisati koliko ukupno ima prostih brojeva koji zadovoljavaju postavljeni uslov. 3. Napisati program na osnovu algoritma iz prethodnog zadatka. 4. Definisati funkciju čiji je prototip: float stringToFloat(char *); koja string konvertuje u realan broj. String može da se konvertuje u realan broj ako ga čine isključivo cifre i eventualno tačka koja razdvaja niz cifara koji predstavlja cijeli dio broja i niz cifara koji predstavlja decimalni dio broja. Ako string ne može da se konvertuje u realan broj, funkcija treba da vrati vrijednost 0. Primjeri: ”123” -> 123.0 ”123.25” -> 123.25 ”12b3” -> 0 ”-123” -> -123.0 5. Napisati program koji u ulaznoj tekstualnoj datoteci, čiji je naziv argument komandne linije, pronalazi sve palindrome (palindrom je riječ koja se isto čita slijeva udesno i zdesna ulijevo, pri čemu treba ignorisati razliku velikih i malih slova, tj. palindromi su i riječi kao što su "Ana" i "Potop"). Rezultat treba ispisati na standardni izlaz i u datoteku "p.txt". Raspodjela bodova po zadacima 1 2 3 4 5 20 20 20 20 20 100 2 6 1 2

Upload: maja

Post on 04-Oct-2015

3 views

Category:

Documents


2 download

DESCRIPTION

Programiranje rok

TRANSCRIPT

ELEKTROTEHNIKI FAKULTET

ELEKTROTEHNIKI FAKULTETBANJA LUKAOSNOVI PROGRAMIRANJA (21.09.2010 - B)1. Pretpostavimo da je dat program:

#include

#define S(T,x,y) {T x=0; y++; {T x=y++;}}

int x;

static int y;

void f(int n)

{ if (n) { S(int,x,y) f(n-1); } }

int main()

{

extern int x,y;

int i=1;

for ( ; i 123.0 123.25 -> 123.25

12b3 -> 0

-123 -> -123.0

5. Napisati program koji u ulaznoj tekstualnoj datoteci, iji je naziv argument komandne linije, pronalazi sve palindrome (palindrom je rije koja se isto ita slijeva udesno i zdesna ulijevo, pri emu treba ignorisati razliku velikih i malih slova, tj. palindromi su i rijei kao to su "Ana" i "Potop"). Rezultat treba ispisati na standardni izlaz i u datoteku "p.txt".Raspodjela bodova po zadacima

12345(

2020202020100

ELEKTROTEHNIKI FAKULTET

BANJA LUKA

OSNOVI PROGRAMIRANJA (21.09.2010 - A)

1. Pretpostavimo da je dat program:

#include

#define S(T,x,y) {T x=10; y++; {T y=x++;}}

int x;

static int y;

void f(int n)

{ if (n) { S(int,x,y) f(n-1); } }

int main()

{

extern int x,y;

int i=1;

for ( ; i s=123,00 f=-12.3313 k=2 -> s=-12,33

f=123.3879 k=3 -> s=123,387

5. Napisati program koji u ulaznoj datoteci, iji je naziv argument komandne linije, pronalazi i na standardnom izlazu prikazuje najduu reenicu. Pod reenicom se podrazumijeva svaki niz znakova koji poinje velikim slovom, a zavrava nekim od znakova taka (.), upitnik (?) ili uzvinik (!). U sluaju da ima vie reenica koje ispunjavaju traeni uslov, treba ispisati sve takve reenice.Raspodjela bodova po zadacima

12345(

2020202020100