1. Список говнокодов пользователя Horror89

    Всего: 1

  2. Си / Говнокод #7668

    +135

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    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
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    97. 97
    98. 98
    const int volume=100;
    int index=0;
    struct memo
    {   int nach;
    	int size;
    	char name[1];
    }raboch[volume];
    void main()
    {	setlocale(LC_ALL, "rus");
    	int switc=0;
    	int i,r;
    	int p=1;
    	int tekadr=0;
    	int ID=0;
    	int razmer;
    	int zap;
    	int paz;
    	int realproc=0;
    	int vhod=0;
    	int tekad;
    	char c[1024];
    	for(i=1023;i>=0;i--) { c[i]='0';}
    	for(i=99;i>=0;i--) { raboch[i].name[0]=' ';}
    		while(p>0) {
    					cout<<"Выберите действие: 1-Выделить память 2-Очистить 3-Дефрагментировать 4-состояние памяти 5-содежимое памяти 6-выход \n";
    					cin>>r;
    					int k=1;
    					switch(r)
    						{
                            case 1:
    							cout<<"Введите имя процесса:";
    							cin>>raboch[ID].name;
    							cout<<"Введите размер выделяемой памяти в байтах:";
    							cin>>raboch[ID].size;
    							razmer=raboch[ID].size;
    							raboch[ID].nach=tekadr;
    							for(i=tekadr; razmer>0;razmer--) {c[i]=raboch[ID].name[0]; i++; }
    							tekadr+=raboch[ID].size;
    							ID++;
    							realproc=ID;
    							break;;
    						case 2:
                                cout<<"Введите ID убиваемого процесса:";
    							cin>>zap;
    							razmer=raboch[zap].size;
    							for(i=raboch[zap].nach;razmer>0;razmer--) { c[i]='0'; i++;}
    							raboch[zap].name[0]='0';
    							raboch[zap].size=0;
    							tekadr=raboch[zap].nach;
    							realproc--;
    							ID--;
    							index=realproc;
    							break;;
    						case 3:
    					        zap=1;
    							paz=0;
    							   for(i=0;i<=102;i++)
    							     {
    									 if(c[i]!='0')
    									  {  
    									  }
    									 else
    								      {   tekad=i;
    											while(k>0)
    											{
    												  zap++;
    												  if(c[raboch[zap].nach]!='0')
    												   {  paz=raboch[zap].size;
    														for(vhod=raboch[zap].nach;paz>0;paz--) {c[tekad]=c[vhod]; c[vhod]='0'; tekad++; vhod++; }
    														int num;
    														for(num=0;num<100;num++) { if(raboch[num].name[0]=='0') { paz=num; num=100;} else{} }
    															if (raboch[zap].name[0]!=' ') { realproc--;
    																							tekadr=tekad;
    																							raboch[paz].size=raboch[zap].size;
    																							raboch[zap].size=0;
    																							raboch[zap].nach=0;
    																							raboch[paz].name[0]=raboch[zap].name[0];
    																							raboch[zap].name[0]=' ';}
    														else {}	 }
    												  if (raboch[zap].name[0]==' ') { if (realproc>=0) {k=1;} else { k=0;} }
    												  else  { }  }}}   
    							break;;
    						case 4:
    					      for(zap=ID-1;zap>=0;zap--)
    								{cout<<"Имя блока:";cout<<raboch[zap].name;cout<<"\n";
    									cout<<"Размер блока:";cout<<raboch[zap].size;cout<<"\n";
    									cout<<"Начальный адресс:";cout<<raboch[zap].nach;cout<<"\n";}
    							break;;
    						case 5:
    					        cout<<"Введите начальный адресс памяти:";
    							cin>>zap;
    							cout<<"Введите конечный адресс памяти:";
    							cin>>paz;
    							for(i=zap;paz!=i;i++) {cout<<c[i];}
    							cout<<"\n";
    							break;;
    						case 6: p=0;
    								continue;}}}

    Лаба по моделированию работы с памятью. Растягиваем буфер в голове))))

    Horror89, 26 Августа 2011

    Комментарии (10)