Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <fstream.h>
- using namespace std;
- const unsigned NMAX=100;
- typedef unsigned adresa;
- struct nod {float info;
- adresa urm;};
- nod lista[NMAX+1];
- int nr_el, liber[NMAX];
- fstream f("lista r.txt",ios::in);
- int este_plina()
- {return nr_el == NMAX;}
- int init(adresa &prim)
- {prim=NULL; nr_el=0;
- for (adresa p=1;p<=NMAX; p++) liber[p]=1;}
- adresa aloc_mem()
- {adresa p;
- for(p=1; !liber[p]; p++);
- liber[p]=0;nr_el++;
- return p;}
- int adaug_inainte_prim(adresa &prim, float x)
- {adresa p; p=aloc_mem();
- lista[p].info=x; lista[p].urm=prim; prim=p;}
- int creare(adresa &prim)
- {float x; init(prim);
- while(f>>x && !este_plina()) adaug_inainte_prim(prim,x);}
- float R(adresa prim)
- {int s=1; float r=lista[prim].info; adresa p=lista[prim].urm;
- while (p!=NULL)
- if(s) {r+=lista[p].info; s=0; p=lista[p].urm;}
- else {r=(r*lista[p].info)/(r+lista[p].info);
- s=1; p=lista[p].urm;}
- return r;}
- int main()
- {adresa prim; creare(prim); f.close();
- cout<<"rezistenta echivalenta= "<<R(prim);}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement