Advertisement
Guest User

Untitled

a guest
Nov 20th, 2017
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.08 KB | None | 0 0
  1. % Задача број 1: На натпревар по лизгање, се натпреваруваат лизгачи репрезентативци од повеќе
  2. држави. Судиите за лизгачите чуваат информации за редниот број, висината и освоеното
  3. место во три посебни листи. Судиите имаат потреба од функција која ќе ги добие овие три
  4. листи како аргументи и истите ќе ги сортира во растечки редослед според освоеното место
  5. на лизгачите. Постои можност да повеќе лизгачи освојат исто место, така што во тој случај, се
  6. сортираат во опаѓачки редослед според висината на лизгачите . Резултантните листи треба
  7. да ги содржат сортирани лизгачите според дадените критериуми и притоа да ги содржат
  8. само оние лизгачи кои се класифицирале во првите 10 места (лизгачите кои освоиле послабо
  9. место да се отфрлат од листата).
  10.  
  11. #include <stdio.h>
  12. #include <stdlib.h>
  13.  
  14. void swap(int *a, int *b) {
  15. int temp = *a;
  16. *a=*b;
  17. *b=temp;
  18. }
  19.  
  20. void podredi(int *broj, int *visina, int *mesto, int *n) {
  21. int i,j;
  22. for (i=0;i<*n-1;i++)
  23. for (j=i+1;j<*n;j++)
  24. if (mesto[i]>mesto[j] || (mesto[i]==mesto[j] && visina[i]<visina[j])) {
  25. swap(&broj[i],&broj[j]);
  26. swap(&visina[i],&visina[j]);
  27. swap(&mesto[i],&mesto[j]);
  28. }
  29. i = *n-1;
  30. while (mesto[i]>10) i--;
  31. *n=i+1;
  32. }
  33.  
  34. int main() {
  35. int broj[]={1,2,3,4,5,6,7};
  36. int visina[]={190,182,178,179,150,201,170};
  37. int mesto[]={11,8,7,1,2,8,8};
  38. int n=7,i;
  39. podredi(broj,visina,mesto,&n);
  40. for (i=0;i<n;i++) printf("%d ",broj[i]); printf("\n");
  41. for (i=0;i<n;i++) printf("%d ",visina[i]); printf("\n");
  42. for (i=0;i<n;i++) printf("%d ",mesto[i]); printf("\n");
  43. return 0;
  44. }
  45. %Задача број 2:
  46. Да се напише функција кoја рабoти сo низи oд целoбрoјни елементи. Функцијата какo аргументи
  47. ги дoбива двете низи и дoлжините на низите. Функцијата треба ја прoмени пoмалата низа така
  48. штo на крајoт oд пoмалата низа ќе ги дoдаде елементите пд пoгплемата низа кoи се наoѓаат на 3n
  49. ппзиција (n=0,1,2,....) т.е. елементите на пoзиција 0, 3, 6, 9 .....
  50. Задачата да се реши со ппмош на покажувачи (забранетo е кпристење на средни загради).
  51. Пример:
  52. Niza1=[1,2,3,4,5,6,7,8]
  53. Niza2=[9,10,11]
  54. Niza2_promeneta=[9,10,11,1,4,7]
  55.  
  56.  
  57.  
  58. #include <stdio.h>
  59. #include <stdlib.h>
  60.  
  61. void f(int *niza1, int *d1, int *niza2, int *d2) {
  62. int i,k=0;
  63. if (*d1>*d2) {
  64. for (i=0;i<*d1;i+=3) {
  65. *(niza2+*d2+k)=*(niza1+i);
  66. k++;
  67. }
  68. *d2+=k;
  69. }
  70. else {
  71. for (i=0;i<*d2;i+=3) {
  72. *(niza1+*d1+k)=*(niza2+i);
  73. k++;
  74. }
  75. *d1+=k;
  76. }
  77.  
  78. }
  79.  
  80. int main() {
  81. int niza1[15]={1,2,3,4,5,6,7,8};
  82. int niza2[15]={9,10,11};
  83. int d1=8;
  84. int d2=3;
  85. int i;
  86. f(niza1,&d1,niza2,&d2);
  87. for (i=0;i<d1;i++)
  88. printf("%d ",niza1[i]);
  89. printf("\n");
  90. for (i=0;i<d2;i++)
  91. printf("%d ",niza2[i]);
  92. printf("\n");
  93.  
  94. return 0;
  95. }
  96.  
  97.  
  98.  
  99.  
  100. %Zadaca Broj 3 (prva zadaca od laboratoriski za nizi)
  101.  
  102. #include <stdio.h>
  103. #include <math.h>
  104.  
  105. int main()
  106. {
  107. int n[30],n2[30],d,i,max;
  108. printf("Vnesete go brojot na clenovi vo nizata \n");
  109. scanf("%d",&d);
  110.  
  111. for(i=0;i<d;i++)
  112. {
  113. scanf("%d",&n[i]);
  114. }
  115. max=n[0];
  116. for(i=1;i<d;i++)
  117. {
  118. if(n[i]>max) {max=n[i];}
  119. }
  120. printf("%d \n",max);
  121. for(i=0;i<d;i++)
  122. {
  123. n2[i]=abs(max-n[i]);
  124. }
  125. for(i=0;i<d;i++)
  126. {
  127. printf("%d",n2[i]);
  128. }
  129. return 0;
  130. }
  131.  
  132. %Zadaca Broj 4 (votra zadaca od laboratoriski za nizi)
  133.  
  134. #include <stdio.h>
  135.  
  136. void f(int *n,int d, int k)
  137. {
  138. int i,p,r;
  139. if (k>=d) printf("Greska");
  140. else
  141. {
  142. p=0;
  143. for(i=k;i<d;i++)
  144. {
  145. n[p]=n[i];
  146. p++;
  147. }
  148. }
  149. }
  150.  
  151. int main()
  152. {
  153. int niza[30],i,dolz,broj;
  154. printf("Vnesete ja dolzinata na nizata \n");
  155. scanf("%d",&dolz);
  156. printf("Vnesete do koj element da se isfrli \n");
  157. scanf("%d",&broj);
  158. printf("Vnesete ja vasata niza \n");
  159. for(i=0;i<dolz;i++)
  160. {
  161. scanf("%d",&niza[i]);
  162. }
  163. f(niza,dolz,broj);
  164. for(i=0;i<dolz-broj;i++)
  165. {
  166. printf("%d",niza[i]);
  167. }
  168.  
  169. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement