Школоло / Говнокод #27 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
  53. 53
  54. 54
  55. 55
program Project1;

{$APPTYPE CONSOLE}

uses
  SysUtils;
type
  Деньга = record
    Достоинство:integer;
    Количество:integer;
  end;

var
  Лопатник: array of Деньга;

procedure ПоложитьНаЛопату(Купюра:Integer);
var
  I: Integer;
  УжеПоложили:Boolean;
begin
  if Купюра=0 then
    Exit;
  УжеПоложили:=False;
  for I := low(Лопатник) to High(Лопатник) do
    if Лопатник[i].Достоинство=Купюра then
      begin
        inc(Лопатник[i].Количество);
        УжеПоложили:=True;
      end;
  if not(УжеПоложили) then
    begin
      SetLength(Лопатник,Length(Лопатник)+1);
      Лопатник[High(Лопатник)].Достоинство:=Купюра;
      Лопатник[High(Лопатник)].Количество:=1;
    end;
end;

var
  Купюра:integer;
  i:integer;
  ВсегоНаЛопате:integer;
begin
  repeat
    Readln(Купюра);
    ПоложитьНаЛопату(Купюра);
  until Купюра=0;
  ВсегоНаЛопате:=0;
  for I := low(Лопатник) to High(Лопатник) do
    begin
      WriteLn(Format('Cost = %d Count - %d',[Лопатник[i].Достоинство,Лопатник[i].Количество]));
      inc(ВсегоНаЛопате,Лопатник[i].Достоинство*Лопатник[i].Количество);
    end;
  WriteLn(Format('All money - %d',[ВсегоНаЛопате]));
  ReadLn;
end.

Вообще-то это Delphi, но его в списке не было ;)
Задача была такая:
пользователь вводит достоинства купюры в произвольном порядке, ввод прекращ

guest guest, (Updated )

Комментарии (30, +30)