SHARE
TWEET

zad do kolosa

a guest Dec 8th, 2019 76 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /* Zdefiniowana jest struktura struct moja{ double wart; int ind;}; Napisz funkcję której wartością będzie lista o elementach struktury moja, gdzie pole wart wynosi Acos(Bpi/i), pole ind wynosi i, gdzie i numeruje kolejne elementy listy oraz i=1, 2, …, n
  2. 2.  Napisz funkcję bezargumentową której wartością będzie lista o elementach ww struktury. Funkcja ta ma wywołać funkcję z zadania 1, pytając się użytkownika o podanie odpowiednich informacji.
  3. 3.  Napisz funkcję która obliczy iloczyn skalarny dwu wektorów o tej samej długości poprzez listę zdefiniowaną w zadaniu 1.
  4. 4.  Napisz funkcję która zmodyfikuje listę, w ten sposób ze jeśli pole wart jest mniejsza niż xmin, to 1. Przed tym elementem 2. Po tym elemencie wstawi do listy element o wart=xmin oraz ind=-1;
  5. 5.  Napisz funkcję która wyświetli wyżej zdefiniowaną listę podając wartość oraz położenie  struktury moja w liście.
  6. 6.  W głównym segmencie, zademonstruj działanie wszystkich funkcji. */
  7.  
  8. #include<iostream>
  9. #include<list>
  10. #include <cmath>
  11. #include <vector>
  12. #include <algorithm>
  13.  
  14.  
  15. using namespace std;//std to worek (stanardowa przestrzen nazw) zawierajacy wszystkie podstawwe funkcje np cout, cin
  16.  
  17. struct moja{
  18. double wart;
  19. int ind;
  20. };
  21.  
  22. list<moja> funkcja(int A, int B, int n){
  23.     list<moja> zad;
  24.     moja temp;
  25.  
  26.     for(int i=0; i<n;i++){
  27. temp.ind = i;
  28. temp.wart =A*cos((B*M_PI)/i);
  29. zad.push_back(temp);
  30. }
  31.  
  32.     return zad;
  33. }
  34.  
  35. list<moja> funkcja2(){
  36.     int A, B, n;
  37.     cout<<"podaj A"<<endl;
  38.     cin>>A;
  39.     cout<<"podaj B"<<endl;
  40.     cin>>B;
  41.     cout<<"podaj n"<<endl;
  42.     cin>>n;
  43.  
  44. return funkcja(A,B,n);
  45. }
  46.  
  47. double skal (list<moja>&list1, list<moja>&list2){
  48. list<moja> l1= list1;
  49. list<moja> l2= list2;
  50. double s=0;
  51. while(l1.empty()==0){
  52.     list<moja>::iterator it1=l1.end();
  53.     list<moja>::iterator it2=l2.end();
  54.     s=s+(it1->wart*it2->wart);
  55.     l1.pop_back();
  56.     l2.pop_back();
  57.  
  58. }
  59.  
  60. cout<<s;
  61.  
  62. return s;
  63. }
  64.  
  65. /*void funkcja41(list<moja>& zad){
  66.     moja temp;
  67. int i;
  68. double mini;
  69.     mini=temp.wart.begin();
  70.     for(it=temp.wart.begin(); it!=zad.wart.end(); it++){
  71.     if(*mini>(*it)){
  72.         *mini=(*it);
  73.     }
  74. }
  75. }*/
  76.  
  77. int main(){
  78.    int A,B,n;
  79.     list<moja> list1=funkcja2();
  80.     list<moja> list2=funkcja2();
  81.     //moja temp;
  82.     skal(list1, list2);
  83.  
  84.  
  85. /*   //  funkcja(A,B,n);
  86.     funkcja2();
  87.  
  88.     list<moja>::iterator it;
  89.  
  90.     for(it=zad.begin(); it!=zad.end(); it++){
  91.        for(int i =0; i<n;i++){
  92.         cout<<temp.wart[i]<<endl;
  93.        }
  94.     }
  95. */
  96.  
  97. return 0;
  98. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Not a member of Pastebin yet?
Sign Up, it unlocks many cool features!
 
Top