/* A.Definiti tipul ORAS care contine campurile: nume - sir de 20 caractere, precipitatii - real, zona - caracter(N,S,E,V) B. Scrieti functia Citire_Oras, fara parametri, acre citeste informatiile despre o structura ORAS, pe care o va returna. Se va face validarea campurilor: nume-contine doar litere, precipitatii-valoare pozitiva si zona-contine doar N,S,E,sau V. C.Definiti tabloul ORASE de MAX elemente de tip oRAS, MAX fiind o constanta predefinita D. Scrieti functia Citire_Orase, void, fara parametri, care initializeaza tabloul ORASE, considerat variabila globala, prin apelul functiei Citire_Oras E. Scrieti functia Tiparire care primeste 2 parametri, un real si un caracter si tipareste informatiile despre orasele al caror nume incepe cu o constanta, din zona egala cu caracterul si care au campul precipitatii >decat primul parametru. Functia va returna numarul de orase gasite avand caracteristicile de ami sus. F. Scrieti programul care sa apeleze functiile de la D, E. */ #include #include #include #include #define MAX 4 typedef struct { char nume[20]; float precip; char zona; }ORAS; ORAS ORASE[MAX]; //functia Citire_Oras citeste si valideaza informatiile int nume_valid(char *); int precip_valid(float); int zona_valid(char); ORAS Citire_Oras() { ORAS o; //variabila locala folosita pentru citire while (printf("nume oras : "),gets(o.nume),!nume_valid(o.nume)); while (printf("precipitatii = "),scanf("%f",&o.precip),!precip_valid(o.precip)); getchar(); //scoate codul lui Enter din bufferul de intrare while (printf("zona:N,S,E,V : "),o.zona=toupper(getche()),!zona_valid(o.zona)); putchar('\n'); return o; } int nume_valid(char *n) { int i; if (strlen(n)==0) return 0; //nume vid for (i=0;i=0; } int zona_valid(char z) { return z=='N'||z=='S'||z=='E'||z=='V'; } void Citire_Orase(void) { int i; for(i=0;i=p&&o.zona==toupper(z)) { printf("%s %f %c\n",o.nume,o.precip,o.zona); return 1; } return 0; } void main() { clrscr(); Citire_Orase(); printf("\n"); printf("orasele care indeplinesc criteriile\n", Tiparire(23,'v')); getch(); }