22.06.2015, 20:59 | #1 (ссылка) |
Эксперт
Регистрация: 08.09.2009
Сообщений: 10,716
Репутация: 960
|
Нужна помощь в написании программы
Хочу написать программу которая сгенерировала все возможные комбинации автомобильного номера вида а000аа. Вроде сначала казалось легко, а как-только начинал писать - кошмар. Паскалем со школы не пользовался. Кое как с горем попалам разобрался с цифрами
Код:
uses crt; var a,b,c :integer; x: text; begin a:=0; b:=0; c:=0; assign(x,'list.txt'); rewrite(x); repeat c:=c+1; if c=10 then begin c:=0; b:=b+1; end; if b=10 then begin c:=0; b:=0; a:=a+1; end; writeln(x,a,b,c); until (a=9) and (b=9) and (c=9); close(x); end. Может кто подскажет. |
25.06.2015, 14:21 | #3 (ссылка) |
Новичок
Регистрация: 21.11.2009
Сообщений: 486
Репутация: 47
|
Гризлик, вот примерно, как генерировать буквенную часть номера:
Код:
uses crt; const sym1: array [1..12] of char=('A','B','E','K','M','H','O','P','C','T','Y','X'); sym2: array [1..12] of char=('A','B','E','K','M','H','O','P','C','T','Y','X'); var i,j: byte; x: text; begin Assign(x,'list.txt'); Rewrite(x); for i:=1 to 12 do for j:=1 to 12 do begin Writeln(x,sym1[i],sym2[j]); end; Close(x); Readln; end. |
25.06.2015, 16:20 | #4 (ссылка) |
Эксперт
Регистрация: 08.09.2009
Сообщений: 10,716
Репутация: 960
|
Это вроде немножко не то. Там они в хаотичном порядке идут. Хотя может и не до конца разобрался с настройками.
sheff-09, Вот Спасибо! Правда сначала понять не мог как эти две части соеденить Но потом немного модифицировал первую часть и в итоге получилось Код:
uses crt; const sym1: array [1..12] of char=('A','B','E','K','M','H','O','P','C','T','U','X'); sym2: array [1..12] of char=('A','B','E','K','M','H','O','P','C','T','U','X'); sym3: array [1..12] of char=('A','B','E','K','M','H','O','P','C','T','U','X'); var a: integer; i,j,f: byte; x: text; begin Assign(x,'list.txt'); Rewrite(x); for i:=1 to 12 do for j:=1 to 12 do begin for f:=1 to 12 do begin for a:=0 to 999 do if (a < 10) then writeln(x,sym1[i],'00',a,sym2[j],sym3[f]) else if (a < 100) then writeln(x,sym1[i],'0',a,sym2[j],sym3[f]) else if (a < 1000) then writeln(x,sym1[i],a,sym2[j],sym3[f]); end; end; Close(x); Readln; end. Спасибо! Последний раз редактировалось Гризлик; 25.06.2015 в 17:04. |
25.06.2015, 16:51 | #5 (ссылка) |
Эксперт
Регистрация: 08.09.2009
Сообщений: 10,716
Репутация: 960
|
Скажите я правильно считаю что количество всех доступных комбинаций должно быть 3 в 12 степени умноженое на 999. Т.е. 530909559 комбинаций???
Потому-что меня смущает размер выходного файла. Всего 13,5 Мб. Что-то я считал что должно быть около 4Гб. |
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Нужна помощь по настройке программы Connectify. | Jek_Nopas | Интернет и сети | 0 | 19.01.2014 23:58 |
нужна помощь в написании программы в двух видах на Pascal | dimuk | Программирование | 0 | 29.11.2011 21:41 |
Нужна помощь! На компьютере не открываются программы!!! | Валерия9205 | Windows 7 | 6 | 02.11.2011 02:32 |
Всем привет. Прошу Вас, дорогие программисты, помочь в написании программы в Паскале. | timur_03 | Программирование | 0 | 04.05.2011 17:12 |
Ремонт Хард диска (Нужна помощь в выборе программы) | ewso | Железо | 3 | 17.02.2011 18:25 |