Advertisement
Guest User

kpp1

a guest
Mar 24th, 2019
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.63 KB | None | 0 0
  1. #include <iostream>
  2. #include <ctime>
  3. #include <iomanip>
  4. using namespace std;
  5. //Funkcja rekurencyjna:
  6. int ciag(int n){
  7. int f=0;
  8. if(n==0){
  9. f=1;
  10. }
  11. if(n==1){
  12. f=2;
  13. }
  14. if(n==2){
  15. f=0;
  16. }
  17. if(n>2){
  18. f=ciag(n-3)*ciag(n-2)-ciag(n-1);
  19. }
  20. return f;
  21. }
  22. //Tworzenie macierzy:
  23. double** tab(int n){
  24. double **tab=new double*[n];
  25. for(int i=0;i<n;i++){
  26. tab[i]=new double[n];
  27. for(int j=0;j<n;j++){
  28. tab[i][j]=0;
  29. }
  30. }
  31. return tab;
  32. }
  33. //Wypisanie macierzy:
  34. void wypisz(double **a,int n){
  35. for(int i=0;i<n;i++){
  36. for(int j=0;j<n;j++){
  37. cout<<setw(3)<<a[i][j];
  38. }
  39. cout<<endl;
  40. }
  41. }
  42. //Losowe zwiększanie elementów macierzy:
  43. double **zwiekszaj(double **a,int n,int p){
  44. for(int i=0;i<p;i++){
  45. int k=rand()%n;
  46. int l=rand()%n;
  47. if(k==l){
  48. a[k][l]+=10;
  49. }
  50. else{
  51. a[k][l]++;
  52. }
  53. }
  54. return a;
  55. }
  56. //Zamiana wierszy macierzy:
  57. double **zamien(double **a,int n,int o,int p){
  58. double *h=new double[n];
  59. for(int i=0;i<n;i++){
  60. h[i]=a[o][i];
  61. a[o][i]=a[p][i];
  62. a[p][i]=h[i];
  63. }
  64. delete[] h;
  65. return a;
  66. }
  67. //Czyszczenie pamięci:
  68. void clr(double **a,int n){
  69. for(int i=0;i<n;i++){
  70. delete[] a[i];
  71. }
  72. delete[] a;
  73. }
  74. int main(){
  75. srand(time(0));
  76. int n;
  77. //F. rek.
  78. cout<<"Funkcja rekurencyjna: \n";
  79. for(int i=0;i<11;i++){
  80. cout<<"Ciąg F("<<setw(2)<<i<<") = "<<ciag(i)<<endl;
  81. }
  82. //Kreski :v
  83. for(int i=0;i<50;i++){
  84. cout<<"-";
  85. }
  86. //Tablice 2w:
  87. cout<<endl;
  88. cout<<"Podaj rozmiar macierzy kwadratowej: ";
  89. cin>>n;
  90. double **mac=tab(n);
  91. wypisz(mac,n);
  92. cout<<endl;
  93. zwiekszaj(mac,n,50);
  94. wypisz(mac,n);
  95. cout<<endl;
  96. zamien(mac,n,2,4);
  97. wypisz(mac,n);
  98. clr(mac,n);
  99. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement