Sunteți pe pagina 1din 6

Laborator 6

1.OPERATORI RELATIONALI Acestia permit stabilirea unei relatii de ordine intre variabile. Operatorii relationali intalniti in limbajul C sunt urmatorii: < mai mic strict > mai mare strict <= mai mic sau egal >= mai mare sau egal = = egal cu ! = diferit de In urma utilizarii operatorilor relationali intr-un program va fi generata valoarea 1 daca functia care se evalueaza este adevarata si valoarea 0 in caz contrar. Exemplu: Se dau doua constante 15 si 30. Dorim sa verificam daca acestea sunt mai mici decat 21. Rezolvare: #include<stdio.h> #include<conio.h> main() { int num=15; printf("\n num=15 este mai mic ca 21? %d",num<21); num=30; printf("\n num=30 este mai mic ca 21? %d",num<21); getche(); } Exercitiu1:Sa se realizeze un program care sa realizeze comparatia intre doua numere arbitrar alese si numarul intreg 25. Rezolvare: #include<stdio.h> #include<conio.h> main() { int num1,num2; printf("\n Introduceti primul numar:"); scanf("%d",&num1); printf("\n num1 este mai mic ca 50? %d",num1<50); printf("\n Introduceti al doilea numar:"); scanf("%d",&num2); printf("\n num2 este mai mic ca 50? %d",num2<50); getche(); } Exercitiu2: Sa se realizeze un program care sa compare doua numere i (de tip intreg) si j (de tip float) iar in urma acestei comparatii sa se afiseze valoarea 2 daca expresia este adevarata si valoarea 1 daca aceasta este falsa.

-1-

#include<stdio.h> #include<conio.h> main() { int i; float j; printf("Introduceti valoarea lui i:"); scanf("%d",&i); printf("Introduceti valoarea lui j:"); scanf("%f",&j); printf("\ni=%d j=%.2f %d",i,j,(j>i)+1); getche(); }

2.OPERATORI DE EGALITATE
Acestia sunt: = = egal; != diferit. Exemplu: 1.Se dau doua numere arbitrare a si b. Sa se realizeze un program care sa afiseze valoarea 1 daca b este egal cu patratul lui a si zero in caz contrar. Rezolvare : #include<stdio.h> #include<conio.h> main() { int a,b; printf("Introduceti numarul a:"); scanf("%d",&a); printf("Introduceti numarul b:"); scanf("%d",&b); printf("\na=%d b=%d %d ",a,b,b= =a*a); getche(); } 2. Se dau doua numere arbitrare a si b. Sa se realizeze un program care sa afiseze valoarea 1 daca b este diferit de patratul lui a si zero in caz contrar. Rezolvare : #include<stdio.h> #include<conio.h> main() { int a,b; printf("Introduceti numarul a:"); scanf("%d",&a); printf("Introduceti numarul b:"); scanf("%d",&b); printf("\na=%d b=%d %d ",a,b,b!=a*a); getche(); }

-2-

3.OPERATORI LOGICI SI EXPRESII LOGICE


Operatorii logici sunt: && || ! si logic sau logic negatia

Expresiile logice sunt de forma: expr1 && expr2 rezultatul este adevarat daca ambele expresii sunt adevarate (adica daca ambele sunt diferite de 0) expr1 || expr2 rezultatul este adevarat daca cel putin una din expresii este adevarata (adica cel putin o expresie este diferita de 0) !expr daca expresia este adevarata rezultatul este fals Exercitii : 1. Sa se scrie un program care citeste un numar si afiseaza 1 daca numarul respectiv apartine intervalului [-1000,1000] si zero in caz contrar. Rezolvare: #include<stdio.h> #include<conio.h> main() { float a; printf("Introduceti un numar:"); scanf("%f",&a); printf("\na=%.2f %d",a,a>=-1000 && a<=1000); getche(); } 2. Sa se scrie un program care citeste doua numere si afiseaza 1 daca numerele apartin intervalelor [-1000,1000] , respectiv [-700,500] si zero in caz contrar. #include<stdio.h> #include<conio.h> main() { float a,b; printf("Introduceti un numar a="); scanf("%f",&a); printf("Introduceti un numar b="); scanf("%f",&b); printf("\na=%.2f %d",a,a>=-1000 && a<=1000); printf("\nb=%.2f %d",b,8>=-700 && a<=500); getche(); } -3-

3.Se dau doua polinoame : p(x)=4x**2-7x+9 si f(x)=5x**2-6. Sa se realizeze un program care sa permita introducerea valorii x si calculul polinoamelor p(x) si f(x). In cazul in care rezultatul celor doua polinoame apartine intervalului [0,100] sa se permita afisarea valorii 1 . #include<stdio.h> #include<conio.h> #include<math.h> main() { int x,p,f; printf("Introduceti o valoare pt x="); scanf("%d",&x); printf("Se dau polinoamele p(x)=4x**2-7x+9 si f(x)=5x**2-6"); p=4*pow(x,2.0)-7*x+9; f=5*pow(x,2.0)-6; printf("\np=%d",p); printf("\nf=%d",f); printf("\np=%d f=%d %d ",p,f,p>=0 && p<=100 && f>=0 && f<=100); getche(); } 4. Se dau doua polinoame : p(x)=6x**3-7x+2 si f(x)=9x**2-2. Sa se realizeze un program care sa permita introducerea valorii x si calculul polinoamelor p(x) si f(x). De asemenea sa se evalueze cele doua polinoame si sa se afiseze valoarea 1 daca polinomul p este diferit de f sau daca p si f sunt pozitive. #include<stdio.h> #include<conio.h> #include<math.h> main() { int x,p,f; printf("Introduceti o valoare pt x="); scanf("%d",&x); printf("Se dau polinoamele p(x)=6x**3-7x+2 si f(x)=9x**2-2"); p=6*pow(x,3.0)-7*x+2; f=9*pow(x,2.0)-2; printf("\np=%d",p); printf("\nf=%d",f); printf("\np=%d f=%d %d ",p,f,p!=f || p>0 && f>0); getche(); }

5. Alctuii programul ce calculeaz sistemul de ecuaii:

Rezolvare: #include<math.h> -4-

#include<conio.h> #include<stdio.h> main() { float a,b,t,y; clrscr(); printf("introduceti variabilele"); scanf("%f%f%f",&a,&b,&t); if(t>=1&&t<=2) y=a*pow(t,2)+log(t); else if(t<1) y=1; else y=exp(a*t)*cos(b*t); printf("%f",y); } 6. Se consider 3 numere intregi. S se alcatuiasc un program care s determine numrul maximal. Rezolvare: #include<math.h> #include<conio.h> #include<stdio.h> main() { int a,b,c,max; clrscr(); printf("intr. variabilele"); scanf("%i%i%i",&a,&b,&c); if (b<a>c) max=a; else if(b>a) max=b; else if(a<c) max=c; printf("max=%i",max); }

7. S se afieze programul ce calculeaz numarul z care este egal cu: z=(a+d;c+f;4d+b)+min(a,c,f). Rezolvare: #include <stdio.h> #include <conio.h> #include <math.h>

-5-

void main() { float a,b,c,d,f,min,max; clrscr(); printf("introduceti variabilele a,b,c,d,f:\n"); scanf("%f%f%f%f%f",&a,&b,&c,&d,&f); max=a+d; if (c+f>max) max=c+f; if (4*d+b>max) max=4*d+b; min=a; if (c<min) min=c; if (f<min) min=f; printf("z=max(a+d,c+f,4*d+b)+min(a,c,f)=%.1f",a+d,c+f,4*d+b,max+min); getch(); }

-6-