Extras din proiect
Proiectele voastre trebuie sa respecte urmatoarea structura:
1. Enunt;
2. Pseudocod;
3. Set valori numerice ce verifica corectitudinea pseudocodului;
4. Codificare in C;
5. Rezultatele codificarii(capturi ecran);
6. Modul de retinere al algoritmului.
-7
-1 Enunţ: Să se scrie programul pentru calcularea mediei geometrice a elementelor pozitive dintr-un vector de dimensiune n.
Pseudocod:
REAL a[20], p=1, mg;
INTREG n, i, j=0;
CITESTE (n);
DO-FOR i=1, i<=n, i=i+1
CITESTE (a[i]);
ENDDO;
DO-FOR i=1,i<n,i++
IF a[i]>=0 THEN {p=p*a[i]; j++; }
ENDIF;
ENDDO;
SCRIE(„numarul elementelor pozitive”, j)
//mg=exp(log(p)/(j));
mg=pow(p, (float)1/j);
SCRIE (“media geometrica este ”);
SCRIE (mg);
Set de valori: fie n=4, a=(4 -1 5 6), calculăm produsele termenilor pozitivi p=120; şi extragem radicalul de ordin 4: mg=4,93.
Codificare în C:
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
void main(){
clrscr();
float a[100],p=1,mg ;
int i,n, j=0;
printf("vectorul are n=");
scanf("%i", &n);
for(i=1;i<=n;i++) {
printf("a[%i]=", i);
scanf("%f", &a[i]);
if(a[i]>=0) {p=p*a[i]; j++;}
}
printf("produsul elementelor pozitive din vector sunt %f n", p);
printf("nr elemente pozitive %i", j);
//mg=(log(p)/(j));
mg=pow(p,(float)1/j);
printf("media este %f", mg);
getch();
}
Rezultatul codificării:
Mod de reţinere al algoritmului:
*am citit n şi componentele vectorului a[100];
*într-o variabila trebuie să memorez produsul numerelor pozitive din vector şi numărul lor;
*folosind funcţia mg=pow(p,(float)1/j) din math.h voi determina media geometrica a numerelor pozitive din vector;
*în final, afişez această medie;
-2 Enunţ: să se calculeze următoarele expresii: e1=(a+b)*(c-a); e2=(a+b)-(c-a); sqrt(e1*e2); e23; cu toate numerele din mulţimea numerelor reale.
PSEUDOCOD:
REAL a,b,c,e1,e2,e3,e4;
SCRIE („a=”, „b=”, „c=”);
CITESTE(a,b,c);
e1=(a+b)*(c-a);
SCRIE (e1);
e2=(a+b)/(c-a);
SCRIE (e2);
IF ((e1*e2)>=0) THEN{
e3=sqrt(e1*e2) ; Scrie(e3);}
ENDIF
e4=pow(e2,3);
SCRIE (e4);
Set de valori numerice: de exemplu a=3, b=2, c=1, e1 va fi -10 iar e2=2,5 după efectuarea calculelor. Nu se intră în blocul de IF deoarece nu este respectată condiţia; e4=-15,6.
Codificare în C:
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
void main(){
clrscr();
float e1,e2,a,b,c, e3,e4;
printf("a=");
scanf("%f", &a);
printf("b=");
scanf("%f", &b);
printf("c=");
scanf("%f", &c);
e1=(a+b)*(c-a);
e2=(a+b)/(c-a);
if ((e1*e2)>=0) {
e3=sqrt(e1*e2) ;
printf("radical din %f", e3);
}
e4=pow(e2,3);
printf(" e1= %f e2=%f n", e1,e2);
printf("e2 la puterea 100 %f", e4);
getch();
}
Rezultatul codificării:
Mod de reţinere al algoritmului:
*am citit numerele ce mă vor ajuta în calculul expresiei;
*am efectuat operaţiile matematice, cu obs că la extragerea radicalului de ordin 2, produsul e1*e2>0;
-3 Enunţ: să se realizeze programul care citeşte coordonatele unui punct şi stabileşte în ce cadran se află.
Pseudocod:
REAL a,b;
SCRIE (“introduceţi coordonatele punctului A (a,b)”);
CITESTE (a,b);
IF(a>0 && b>0) THEN SCRIE(“A se afla in cadranul I”);
ENDIF
IF(a>0 && b<0) THEN SCRIE(“A se afla in cadranul IV”);
ENDIF
IF(a<0 && b>0) THEN SCRIE(“A se afla in cadranul II”);
ENDIF
IF(a<0 && b<0) THEN SCRIE(“A se afla in cadranul III”);
ENDIF
IF(a==b==0) THEN SCRIE(“A este origine sistemului de axe”);
ENDIF
Set de valori numerice: dacă A(a=2,b=2) atunci se intră pe prima ramură de IF deoarece condiţia este verificată, prin urmare răspunsul este A se află în cadranul I.
Codificare in C:
include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
void main(){
clrscr();
float a,b;
printf("a=");
scanf("%f", &a);
printf("b=");
scanf("%f", &b);
if (a>0 && b>0) printf("punctul se regaseste in cadranul I");
if (a>0 && b<0) printf("punctul se regaseste in cadranul IV");
if (a<0 && b>0) printf("punctul se regaseste in cadranul II");
if (a<0 && b<0) printf("punctul se regaseste in cadranul III");
if (a==b==0) printf("punctul este originea sistemului");
getch();
Preview document
Conținut arhivă zip
- diverse
- 1.BAK
- 1.cpp
- 2.BAK
- 2.CPP
- 3.BAK
- 3.CPP
- 4.BAK
- 4.CPP
- 5.BAK
- 5.CPP
- 6.BAK
- 6.CPP
- 6PRIM.BAK
- 6PRIM.CPP
- 6PRIM.EXE
- 6PRIM.OBJ
- 7.BAK
- 7.CPP
- 7.EXE
- 7.OBJ
- matrice
- MATRICE1.CPP
- MATRICE2.CPP
- MATRICE3.CPP
- MATRICE4.CPP
- MATRICE5.CPP
- vectori
- 1-VECT_MAX.CPP
- 1-VECT~1.EXE
- 1-VECT~1.OBJ
- 10.CPP
- 11.CPP
- 2-SUMA_V.CPP
- 2-SUMA_V.EXE
- 2-SUMA_V.OBJ
- 3-SUMA_RAN_impar.CPP
- 3-SUMA~1.EXE
- 3-SUMA~1.OBJ
- 4-POLINOM.CPP
- 5-Caut_val_vec.CPP
- 6-PRIMA_AP_vect.CPP
- 7-CAUTAR.CPP
- 8.CPP
- 9.CPP
- Proiect Bazele Programarii.doc