Sunteți pe pagina 1din 11

Ministerul Educației al Republicii Moldova

Universitatea de Stat din Moldova

Facultatea de Fizică și Inginerie

Departamentul Fizică Aplicată și Informatică


Curs: Proiectarea datelor

Lucrare de laborator nr.1

Tema:Elemente de modelare

Elaborat: Temciuc Dumitrița Verificat: Curlicovschi Alisa

Chișinău,2018
Scopul lucrării: Modelarea matematică bazată pe metoda analitică pentru
soluționarea problemelor.
Note teoretice: Modelul este un obiect material sau ideal, care înlocuieşte în procesul
de cercetare obiectul original, păstrând unele caracteristici esențiale, importante pentru
procesul de cercetare. Procesul de construire al modelului se numeşte modelare.
Descrierea unui proces sau fenomen prin intermediul noțiunilor matematice se numeşte
model matematic.Metoda de rezolvare care utilizează formulele analitice, ce permit
calculul direct al rezultatului final, fără iteratii şi rezultate intermediare se numeşte
metoda analitică de rezolvare. Solutiile obținute cu ajutorul metodei analitice sunt
numite solutii analitice.

95. Viteza lentei magnetice a unui radiou este 9,53 cm/s. Aflați frecvența și
perioada de rotație a bobinei din dreapta la începutul și la sfîrșitul ascultării, dacă
raza mică a bobinei este 2,5 cm, iar raza mare este 7 cm.
Unde:
- v=viteza lentei(m/s) - R=raza bobinei(m)
- n=frecvența(s) - T=perioada(s)

Se dă:
v =9,53 cm/s=9,53*10−2 Din relațiile legate de accelerația liniară legată
R1=2,5 cm=2,5*10−2 cu punctul material, care se rotește împrejur cu raza
R2=7cm=7*10−2 de circumferință și frecvența rotație.
n1=? T1=? Mișcarea uniformă a corpului de-a lungul
n2=? T2=? circumferinței: v =2πRn
v 1 2 πR
Rezolvare: v =2πRn, n= 2 πR , T= n = V

v 9,53∗10−2
n1= 2 πR 1 =
−1
−2
=0,61 s
2∗3,14∗2,5∗10
1 1
T1= n 1 = 0,61 =1,65 s

v 9,53∗10−2
n2= 2 πR 2 =
−1
−2
=0,22 s
2∗3,14∗7∗10

1 1
T2= n 2 = 0,22 =4,61 s
Răspuns: n1=0,61 s−1 , n2=0,22 s−1, T1=1,65 s , T2=4,61 s
Programul în C
#include <stdio.h>
#include<math.h>
Int main ()
{
float v, R1, R2,n1,T1,n2,T2;
printf ("Dati valoarea lui v cm/s\n");
scanf ("%f", &v);
printf ("Dati valoarea lui R1 cm\n");
scanf ("%f", &R1);
printf ("Dati valoarea lui R2 cm\n");
scanf ("%f", &R2);
v = (float) v * pow (10, -2);
printf ("v = %.2f ", v);

R1 = (float) R1* pow (10, -2);


printf ("R1 = %.2f ", R1);

R2= (float) R2 * pow (10, -2);


printf ("R2 = %.2f \n", R2);

printf("v=2πRn \n");
printf ("n=v/2πR\n");
printf("T=1/n=2πR/v\n");
if(R1==0){
printf("n1 nu poate fi calculat, deoarece R1 este egal cu 0\n");
}
else{
printf("n1=v/2πR1\n");
n1=v/((float)2*3.14*R1);
printf("n1=%.2f\n",n1);
}
printf("T1=1/n1\n");
T1=(float)1/n1;
printf("T1=%.2f\n",T1);
if(R2==0){
printf("n2 nu poate fi calculat, deoarece R2 este egal cu 0\n");
}else{
printf("n2=v2/2πR2\n");
n2=v/((float)2*3.14*R2);
printf("n2=%.2f\n",n2);
}
printf("T2=1/n2\n");
T2=(float)1/n2;
printf("T2=%.2f",T2);
return 0;
}

START

v, R1, R2,n1,T1,n2,T2;

v=2πRn

n1=v/((float)2*3.14*R1);

T1=(float)1/n1;

printf("n1=%.2f\n",n1);

printf("T1=%.2f\n",T1);

printf("n2=%.2f\n",n2);

printf("T2=%.2f",T2);

STOP
186. Cu ce accelerare este necesară ridicarea greutății, pentru ca greutatea ei să fie
mai mare de 2 ori. Cu ce accelerație a2 trebuie să-i dăm drumul, ca greutatea să se
micșoreze de 2 ori.
Se dă: Rezolvare:
1)P1=2P Utilizăm formula pentru greutate: P=mg
2)P2=P/2 1)P1=2mg-> 2mg=m(a1+g)->
P=mg 2g=a1+g-> a1=g
a1=?
mg mg
a2=? 2)P2= 2 → 2 =m ( g−a 2 ) →

g g
=g−a2 → a 2=
2 2
g
. Răspuns: a 1=g, a 2= 2

Pentru această problemă folosim legea a 2-a a lui Newton. Astfel legea a 2-a a miscării arată că
accelerația unui obiect depinde de două variabile: forta efectivă care acționeaza asupra
obiectului si masa acestuia. Acceleratia unui obiect depinde direct proportional de forta efectivă
care-i este aplicată și invers proportional de masa lui. In timpul cînd forța efectivă creste,
acceleratia creste. Invers, in timp ce masa creste acceleratia scade.
În concluzie legea 2 a lui Newton explică comportamentul obiectelor asupra căruia actioneaza
forțele neechilibrate.  Legea enuntă că fortele neechilibrate provoaca acceleratie obiectelor,
direct proportională cu forta efectiva si invers proportională cu masa. 

Programul în C
#include <stdio.h>

#include <math.h>

int main (){

float P1,P2,P,m,a1,a2;

const float g=9.8;

printf("Dati valoare lui m \n");

scanf("%f",&m);

printf("m=%.2f\n",m);

if (m==0)
printf("Pentru aceasta valoare problema nu are solutie\n");

else

P1=2.0*(m*g);

printf("P1=%.2f",P1);

printf("=> 2mg=m(a1+g)=>2g=a1+g=>\n");

a1=g;

printf("a1=%.2f\n",a1);

P2=(m*g)/2.0;

printf("P2=%.2f\n",P2);

printf("m(g-a2)=>g/2=g-a2=>\n");

a2=g/2.0;

printf("a2=g/2=%.2f",a2);

return 0;

START

v, R1, R2,n1,T1,n2,T2;

P1=2.0*(m*g);
a1=g
P2=(m*g)/2.0;
a2=g/2.0;

printf("a1=%.2f\n",a1);

printf("a2=g/2=%.2f",a2);

STOP
Șirul lui Fibonacci
Fibonacci a reusit sa identifice un sir:„0, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144,...” Acest sir are la baza o
formula simpla:

Primele două cifre aparținând șirului sunt 0 si 1, iar al treilea element se obține adunandu-le pe primele
doua: 0+1=1. Al patrulea numar se obtine din adunarea celui de-al treilea cu al doilea (2+1=3). Cel de-al
cincilea se obtine din adunarea celui de-al patrulea cu cel de-al treilea (3+2=5) si tot asa, pană la infinit

Șiruri numerice
Este dat un șir din cel mult 100 numere.
1) se cere să se ordoneze elementele în ordine crescătoare
2) se cere să se determine elementul cu valoare maximă din șir și numărul de repetări printr-o singură
parcurgere a șirului.
Programul în C++
#include <iostream>

#include <cmath>

#include <ctime>

#include <cstdlib>

using namespace std;

int main()

int s[99];

int aux;

srand((unsigned)time(0));

for (int i=0;i<=99;i++)

s[i]=rand() % 200+1 ; }

for(int i=0;i<=99;i++)

{ for(int i=0;i<=99;i++)

if(s[i]>s[i+1])

aux=s[i+1];

s[i+1]=s[i];

s[i]=aux;

cout<<"1)Sirul ordonat crescator este:\n";

for(int i=0;i<=99;i++)

{if(i%20==0)

cout<<endl;

else

cout<<s[i]<<",";}

int max;

for (int i=0;i<=99;i++)


{

if (s[i]>max)

max=s[i];

cout<<"\n2)Numarul maxim: "<<max<<endl;

int cant;

for(int i=0;i<=99;i++)

if(s[i]==max)

cant++;

cout<<"Numarul maxim apare de "<<cant<<" ori";

return 0;

Buburuza
Buburuza urcă în timpul zilei pe un stâlp 5 m, iar noaptea coboară 3 m. Ascensiunea începe
dimineața. Înălțimea stâlpului e de 15 m. Când va ajunge buburuza în varf ?
În condiția punctului precedent ascensiunea începe dimineața de la înălțimea de 6 m.
În conditia punctului precedent ascensiunea începe seara.

Programul C++
#include <iostream>
#include <cmath>
#include <string>
using namespace std;
int main()
{
float b=0,c=0,h;
float t;
string cond;

cout<<"Introduceti inaltimea
stalpului: "<<endl;
cin>>h;
cout<<"Introduceti conditia: D-
ascensiune dimineata, S-ascensiune seara:
"<<endl;
cin>>cond;
if (cond=="D"||cond=="d")
goto dimineata;
else (cond=="S"||cond=="s");
goto seara;

dimineata:
while( b!=h||b<=h)
{
b+=5;
if ( b>=h)
{
c+=0.5;
break;
}
else {
b-=3;
}
c++;
}
cout<<"Buburuza ajunge in "<<c<<" zile."<<endl;
goto exit;
seara:
c=0;
b=0;
do
{
b-=3;
if ( b>=h)
{
c--;
break;
}
else {
b+=5;
}
c++;
}
while( b!=h||b<=h);
cout<<"Buburuza ajunge in "<<c<<" zile."<<endl;

exit:
return 0;
}
Concluzie:
În această lucrare de laborator am realizat modelarea matematică a
problemelor cu ajutorul metodei analitice. Am reprezentat problema
fizic, sub forma unui algoritm și a schemei bloc.Am creat modelul
matematic al problemei,am prezentat un algoritm descris intr-o formă
acceptabilă. Pentru o altă reprezentare a problemelor am ales limbajele
de programare C și C++, care permit efectuarea calcului imediat și cu
success dacă nu sunt prezente erori de calcul sau de programare.

S-ar putea să vă placă și