2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Pascal
Сообщение20.11.2010, 20:20 
Помогите пожалуйста с задачей на Паскаль.
Дан одномерный массив удалить из массива все максимальные элементы.
я не знаю как сделать чтобы выводилa все элементы.вот что получилось:
код: [ скачать ] [ спрятать ]
Используется синтаксис Pascal
  1. Program massiv;
  2. Const n=15;
  3. Type mas =array[1..n] of integer;
  4. var
  5. a:mas;
  6. k,i,max:integer;
  7. Procedure Print(z:mas);
  8. var i:integer;
  9. Begin
  10. for i:=1 to n do
  11. write(z[i],' ');
  12. wtiteln;
  13. end.
  14. Procedure Delet(k:integer;var z:mas);
  15. var i:integer;
  16. Begin
  17. for i:=k to n-1 do
  18. z[n]:=0;
  19. z[i]:=z[i+1];
  20. end.
  21.  
  22. Begin
  23. randomize;
  24. fot i:=1 to n do
  25. a[i]:=random(99);
  26. Print(a);
  27. Max:=A[i];
  28. for i:=2 to n do
  29. if max<A[i] then max:=A[i];
  30. Delet(max,a);
  31. Print(a);
  32. end.
  33.  

 
 
 
 Re: Pascal
Сообщение20.11.2010, 21:56 
1. Заполняете массив $a[n].$
2. Находите в нем максимальный элемент.
3. Находите в нем количество максимальных элементов $k.$
4. Создаете массив $b[n-k].$
5. Заполняете его в цикле всеми элементами массива $a[n],$ кроме максимальных.

 
 
 
 Re: Pascal
Сообщение20.11.2010, 22:28 
И забудьте навсегда про тот нищастный Random. Т.е. хоть на какое-то время забудьте. Он очень полезен, очень. Но -- не в сей конкретной задачке. Вот когда необходимость в нём всплывёт -- тогда о нём и вспоминайте.

 
 
 [ Сообщений: 3 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group