APLICATII FUNCTII VOID FARA PARAMETRI, TABLOURI
1. Sa se ruleze pas cu pas primul
program exemplu de la Functii - note de curs.
Dupa rulare, sa se introduca in comentariu cele trei linii de prototipuri.
Ce se observa la o noua compilare ?
Sa se modifice programul pentru a se mai afisa o prima si o ultima
linie de '~', la fel ca liniile interioare .
2. Sa se ruleze al doilea programul
exemplu de la Functii - note de curs.
Sa se modifice programul, astfel incat sa se poata calcula expresia
pentru triplete diferite, pana in momentul cand m si n sunt simultan 0.
3. Sa se defineasca functia calcul, void fara parametri, care calculeaza si afiseaza valoarea expresiei xm+n/(x+m+n)m-n, x, m, n fiind variabile globale. Folosind functia calcul sa se scrie programul care afiseaza valoarea expresiei de mai sus pentru x luand toate valorile intregilor dintre n si m, inclusiv. Intregii m,n se citesc de la tastatura, astfel incat sa fie pozitivi si m>n.
4. Sa se ruleze programul exemplu
de la Tablouri - note de curs. Sa se adauge
prelucrarile:
-modificarea elementelor tabloului initial la patratul lor
-afisarea tabloului dupa modificare.
Sa se tranforme programul intr-unul interactiv, fiecare prelucrare
executandu-se la o comanda corespunzatoare ( citirea la comanda 'C' sau
'c', s.a.m.d. ). Vezi instructiunea switch
si rezolvarea problemei urmatoare.
5. Sa se scrie un program interactiv care prelucreaza un tablou de
max N intregi ( N - cta predefinita ), prin urmatoarele comenzi - optiunile
marcate cu ? trebuie adaugate:
I - initializeaza tabloul, prin citirea dimensiunii sale
si apoi a elementelor
V ? initializeaza tabloul, prin citirea elementelor pana
la introducerea lui CTRL/Z sau a numarului maxim de elemente
A ? initializeaza tabloul, fiecare element fiind egal cu
indicele sau
B ? initializeaza tabloul astfel: primele doua elemente cu
0, 1, iar urmatoarele ca suma anterioarelor doua ( numerele Fibonacci )
L - listeaza elementele tabloului
O - listeaza elementele tabloului ordonate crescator ( in
tablou elementele trebuie sa ramana in ordinea introducerii )
D ? analog cu O, dar in ordine descrescatoare
C - cauta o valoare in tablou, afisand indicele in cazul
gasirii
M ? cauta o valoare in tablou, pe care o sterge in cazul
gasirii - dimensiunea tabloului va scadea astfel cu o unitate ( nr_elem,
nu N!!!); stergerea se realizeaza prin mutarea cu o pozitie inspre indicii
mici, a tuturor elementelor de tablou urmatoare celui care se sterge; o
alta varianta este de a copia ultimul element peste cel care se sterge
P - afiseaza maximul, suma, produsul, media aritmetica si
cea geometrica
X - terminare.
| #include <stdio.h>
#include <conio.h> #include <ctype.h> #include <math.h> //pentru functia pow #define N 10
int tablou[N], copie[N], nr_elem; /* tablou va contine
nr_elem de prelucrat, copie salveaza tablou inainte de ordonare */
void citire_optiune(void){ /* fara validare */
void citire_numar_elem(void){ /* cu validare */
void citire_elem(void){
void init(void){
void list(void){ /* se listeaza elem din tablou */
void salv(void){ /* se salveaza tablou in copie */
void refac(void){ /* se reface tablou din copie */
void ordonare(void){ /* se ordoneaza elem din tablou prin
metoda bubblesort*/
void list_ord(void){ /* se face ordonarea elem din tablou,
dupa listare,
void prel(void){
void cauta(void){
void main(void){
|
6. Sa se scrie un program care citeste coeficientii unui polinom
de x, cu gradul maxim N ( N este o constanta predefinita), calculand apoi
valoarea sa in puncte x citite, pana la introducerea pentru x a valorii
0. Sa se afiseze si valoarea obtinuta prin apelarea functiei de biblioteca
poly.
Sa se modifice programul astfel incat sa citeasca ciclic polinoame,
pe care sa le evalueze.
| #include <stdio.h>
#include <conio.h> #include <math.h> #define N 10 double coeficient[N+1],x,val;//numarul de coeficienti e cu 1
mai mare decat gradul
void citire_grad(void){ /* cu validare */
void citire_coef(void){
void list_polin(void){ /* se listeaza polinomul */
void eval(void){
void main(void){
|