Напишите программу по выдаче рандомной комбинации букв, соответствующую следующим требованиям:
- Результат должен состоять из 8 символов (букв)
- За буквой A могут стоять только буквы D, E, G, I, J
За буквой B только E, F, H, J, K
За буквой C только F, G, I, K, L
За буквой D только A, G, H, J, L
За буквой E только A, B, H, I, K
За буквой F только B, C, I, J, L
За буквой G только A, C, D, J, K
За буквой H только B, D, E, K, L
За буквой I только A, C, E, F, L
За буквой J только A, B, D, F, G
За буквой K только B, C, E, G, H
За буквой L только C, D, F, H, I

Английские обозначения букв по желанию можно заменить на русские аналоги (A=А, B=Б, C=В, D=Г, E=Д, F=Е, G=Ж, H=З, I=И, J=К, K=Л, L=М) ​

Ответы

Ответ дал: petyaGavrikov
0

const ar:array['A'..'L'] of string[5]=

('DEGIJ','EFHJK','FGIKL','AGHJL','ABHIK','BCIJL',

'ACDJK','BDEKL','ACEFL','ABDFG','BCEGH','CDFHI');

var s:string; c: char; i:integer;

begin

randomize;

s:=chr(random(13)+65);

for i:=2 to 8 do

begin

repeat

c:=chr(random(13)+65);

until pos(c,ar[s[i-1]])>0;

s:=s+c;

end;

writeln(s);

end.

Пример:

KCFJBKGA

Ответ дал: ClarisVerbis
0
Добрый вечер, помогите, пожалуйста, по возможности. https://znanija.com/task/31913808
Вас заинтересует