-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathservice.h
More file actions
114 lines (85 loc) · 2.26 KB
/
service.h
File metadata and controls
114 lines (85 loc) · 2.26 KB
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
#ifndef LAB2_4_SERVICE_H
#define LAB2_4_SERVICE_H
#define MAX_LEN_CHAR 20
#include "string.h"
#include <ctype.h>
typedef struct {
int cantitate;
char *name;
char *producer;
}Materie;
typedef struct {
Materie* materii;
long length,capacity;
}List;
void destroyMaterie(Materie* m);
List create();
/*
* Dealoca memoria atribuita unei liste
*/
void destroy(List* lista);
/*
* Creaza o materie be baza campurilor
* @param nume: nume-adresa la care se afla numele materiei
* @param producator: adresa la care se afla numele producatorului
* @param cantitatea materiei
*/
Materie createMaterie(char *nume, char *producator, int cantitate);
/*
* Cauta o materie prima in lista
* @param m: materia care se vrea a fi cautata
* @param lista: lista in care se cauta
*/
int findMaterie(List lista, Materie m);
/*
* Returneaza lungimea listei
* Lista-oarecare
*/
long getLength(List list);
/*
* Afiseaza lista de materii
* @param list: Lista oarecare
*
*/
void printMaterii(List list);
/*
* Adauga o materie in lista
* @param m: materia care se vrea a fi adaugata
* @param lista: lista in care se adauga
*/
void add(List* list, Materie materie);
/*
* Actualizeaza o materie din lista
* @param index: pozitia dmateriei
* @param m: materia care se vrea a fi actualizata
* @param lista: lista in care se adauga
*/
int update(List* list, int index, Materie materie);
/*
* Sterge o materie din lista, la indexul dat
* @param index: pozitia materiei in lista
* @param lista: lista din care se sterge
*/
void delete(List* list, int index);
/*
* Returneaza lista sortata crescator sau descrescator
*@param: list: o lista oarecare
*
*/
List sorteaza(List list,int (*f)(Materie m1, Materie m2));
/*
* Filteaza lista dupa o litera de inceput si o cantitate minima
* @list : lista de materii prime
* @b: caracterul dupa care se filtreaza
* @minQuantity: cantitatea minima de la care se vor afisa
*
*/
List filter(List list, char b, int minQuantity);
/*
* Valideaza o materie
* pre:materie orice Materie
*/
int validate(Materie materie);
int cantitateMaiMica(Materie m1, Materie m2);
int cantitateMaiMare(Materie m1, Materie m2);
#endif //LAB2_4_SERVICE_H