Probleme rezolvate 6
  1. Alocare
  2. Pointeri la functii
  3. Cadouri
  4. Arbitraj

Alocare

Sa se calculeze produsul a doua matrice, acestea fiind alocate dinamic.


Rez

Codul problemei 1


Pointeri la functii

Sa se scrie un program care primeste in linia de comanda numele unei functii si parametrii(u) si va returna valoarea acelei functii.


Rez

Codul problemei 2


Cadouri

Trebuie sa determinam, intr-un grup de prieteni care isi fac reciproc cadouri, cit a primit/dat fiecare persoana in parte.

Fiecare persoana are un buget alocat pentru cadouri. Acest buget il imparte in mod egal la numarul de prieteni pe care ii are.

In orice grup de prieteni, unele persoane fac cadouri in valoare mai mare ca altele.

Se da un grup de prieteni, cantitatea de bani pe care fiecare persoana o chetuieste pe cadouri, si o lista cu prieteni carora le face cadouri. Programul trebuie sa determine cantitatea de bani cu care iese in plus sau in minus fiecare persoana.

Datele de intrare :

Avem maxim 20 de persoane in grup, nici un nume nu este mai mare de 12 caractere lungime. Cantitatea de bani este un numar intreg mai mic ca 2000.

Pentru fiecare persoana, trebuie afisat numele acesteia impreuna cu pierderea/cistigul realizat. Cantitatea de bani necheltuita este adunata la valoarea cadourilor primite.

Input :

5
dave laura owen vick amr
dave 200 3 laura owen vick
owen 500 1 dave
amr 150 2 vick owen
laura 0 2 amr vick
vick 0 0
3
liz steve dave
liz 30 1 steve
steve 55 2 liz dave
dave 0 2 steve liz

Output :

dave 302
laura 66
owen -359
vick 141
amr -150

liz -3
steve -24
dave 27

Rez

Codul problemei 3


Arbitraj

Utilizarea calculatoarelor in sectorul financiar s-a dovedit de un real folos pentru firmele care actioneaza in acest domeniu, desi la inceput acestea au fost atrase mai mult de aspectul comercializarii echipamentelor, speculind fluctuatiile de pret pe diferite piete.

Arbitrajul reprezinta transformarea unei valute in alta (prin vinzare-cumparare) in speranata de a cistiga din micile diferente care exista intre ratele de schimb ale citorva valute.De exemplu, daca 1$ cumpara 0.7 lire sterline, o lira sterlina cumpara 9.5 FF si 1 FF cumpara 0.16 $, atunci un speculator poate incepe cu un dolar si va cistiga (1x0.7x9.5x0.16=1.064) 0.064 $.

Programul va determina daca exista o secventa de schimburi valutare poate aduce un profit.

Pentru a reusi, o secventa de schioburi trebuie sa inceapa si sa se termine in aceeasi moneda.

La intrare se citeste o matrice de schimburi. Dimensiunile matricii sunt intre 2 si 20.

Elementele de pe diagonala principala lipsesc (ele au valoarea 1.0). Prima linie a matricii contine ratele de schimb ale monedei tarii 1 si celelalte n-1 tari.

Pentru aceasta matrice trebuie sa determinati dace exista vreo secventa de schimb care sa conduca la un cistig mai mare de 1%, si in caz afirmativ sa se afiseze secventa de lungime minima (minimalitatea se considera din punct de vedere lexicografic).

Orice secventa de succes trebuie sa contina cel mult n tranzactii. Secventa 1 2 1 reprezinta un numar de 2 conversii.

Daca nu exista vreo secventa care sa resoecte aceste conditii se va afisa un mesaj de atentionare.

Input :

3
4
3.1    0.0023    0.35
0.21   0.00353   8.13 
200    180.559   10.339
2.11   0.089     0.06111

Output :

1 2 4 1

Rez

Codul problemei 4


Previous |