Documente Academic
Documente Profesional
Documente Cultură
7 1/2
expr_1_3
Exemplu: Afişarea tuturor posibilităţilor de a obţine 100 de lei utilizând monede de 10, 20 şi 50 de lei.
Considerăm următoarele variabile a – numărul de monede de 10 lei; b – numărul de monede de 20 lei, c – numărul de monede
de 50 lei. Intervalul de valori pentru fiecare variabilă este: a = 0 ÷ 10; b = 0 ÷ 5; c = 0 ÷ 2; În consecinţă, pe baza celor
prezentate mai sus, putem scrie următoarea secvenţă de program:
…
for(a=0;a<=10;a++)
for(b=0;b<=5;b++)
for(c=0;c<=2;c++)
if( a*10 + b*20 + c*50 == 100)
printf(“\n %2d*10+%2d*20+%2d*50 = 100”,a,b,c);
...
Program exemplu nr. 1: Produsul elem. strict pozitive ale unei matrice dreptunghiulare Amxn.
#include <stdio.h>
#include <conio.h>
main (void)
{int m,n,i,j; double a[10][10], p=1;
printf(“\n Introduceti nr. de linii si de coloane, m si n:”); scanf(“%d %d”,&m,&n);
for(i=0 ; i < m ; i++)
for(j=0 ; j < n ; j++)
{ printf(“\n a[%d][%d]=”,i,j); scanf(“%lf”,&a[i][j]); } // citirea elem. matricei
for(i=0 ; i < m ; i++)
{ for(j=0 ; j < n ; j++)
printf(“ %8.3lf ”,a[i][j]); // afişarea elem. matricei
printf(“\n”);
}
for(i=0 ; i < m ; i++)
for(j=0 ; j < n ; j++)
if(a[i][j]>0) p *= a[i][j]; // calculul produsului elem. strict pozitive
printf(“\n \n Produsul elementelor strict pozitive este: p = %10.3lf”,p);
getch(); }
Şef lucrări Morariu-Gligor Radu PUC – Laborator nr. 7 2/2
#include<stdio.h>
#include<conio.h>
main(void)
{ int i, j, n, t[25]; long int s = 0;
printf("\n Introduceti numarul de termeni: n ="); scanf("%d",&n);
for( i=1 ; i <= n ; i++)
{ t[i] = 0;
for(j = 1 ; j <= i ; j++)
t[i] += j;
s += t[i];
}
printf("\n Suma totala este: s = %3d",s);
getch();
}
Teme propuse:
1. Să se scrie un program pentru calculul numărului de elemente pare dintr-o matrice dreptunghiulară.
2. Să se scrie un program pentru calculul sumei elementelor situate pe şi sub diagonala secundară dintr-o matrice
pătratică.
3. Să se calculeze suma:
x1 x3 x5
sin( x) ...
1! 3! 5!
şi să se verifice diferenţa dintre valoarea funcţiei sin(x) şi valoarea obţinută prin calculul sumei pentru 10, 20 sau 30 de termeni
luaţi în considerare.
Varianta I : pentru fiecare termen se calculează (2*i-1) !
Varianta II : fiecare termen se exprimă în funcţie de termenul anterior după relaţia:
x2
Ti Ti1
(2 i 1) (2 i)
4. Să se calculeze suma:
x2 x4
cos( x) 1 ...
2! 4!
şi să se verifice diferenţa dintre valoarea funcţiei cos(x) şi valoarea obţinută prin calculul sumei pentru 10, 20 sau 30 de termeni
luaţi în considerare.
1 1 1 n 1 1
5. Se consideră dezvoltarea: Sn 1 ... 1 . Se cere să se determine şi să se afişeze n, Tn, Sn
2! 3! 4! n!
pentru care un număr de “n” termeni luaţi în considerare.
6. Se consideră un număr de « n » puncte în plan, de coordonate x şi y. Se cere să se determine distanţa maximă dintre
două puncte precum şi punctele respective.
7. Să se calculeze suma S = 1 + 11 + 111 + 1111 + …. luând în considerare primii “n” termeni ai sumei (2 variante).
8. Se consideră două matrice A(mxn) şi B(nxp). Să se scrie un program care realizează înmulţirea celor două matrice,
n
astfel: C(mxp) = A(mxn) x B(nxp), cij a
k 1
ik bkj .
Succes!!!