Есть ответ 👍

Напишите программу по выдаче рандомных чисел, содержащих от 1 до 5 знаков, состоящих из чисел от 1 до 12, так чтобы: за цифрой 1 могли следовать только цифры 4, 5, 7, 9, 10 за цифрой 2 - только 5, 6, 8, 10, 11 за цифрой 3 - только 6, 7, 9, 11, 12 за цифрой 4 - только 1, 7, 8, 10, 12 за цифрой 5 - только 1, 2, 8, 9, 11 за цифрой 6 - только 2, 3, 9, 10, 12 за цифрой 7 - только 1, 3, 4, 10, 11 за цифрой 8 - только 2, 4, 5, 11, 12 за цифрой 9 - только 1, 3, 5, 6, 12 за 10 - только 1, 2, 4, 6, 7 за 11 - только 2, 3, 5, 7, 8 за 12 - только 3, 4, 6, 8, 9 примерные результаты программы: 1473, 21106, 112, 82

143
373
Посмотреть ответы 2

Ответы на вопрос:

berdyugin
4,7(63 оценок)

{вам следовало бы более точно описать, что вам нужно. непонятно, что это за условие со следованием. в примере 21106 за цифрой 2 следует 11, но за 11 не следует ничего из перечисленного. ну или в нем 10 следует за 1, но тогда зачем условия следования для 10..12? + ничего не сказано про случайное распределение этих чисел. так-то программа, которая все время выводит "1", тоже подходит под эти условия } const   r: array[1..12,1..5] of integer = (   (4,5,7,9,10),    //1   (5,6,8,10,11),  //2   (6,7,9,11,12),  //3   (1,7,8,10,12),  //4   (1,2,8,9,11),    //5   (2,3,9,10,12),  //6   (1,3,4,10,11),  //7   (2,4,5,11,12),  //8   (1,3,5,6,12),    //9   (1,2,4,6,7),      //10   (2,3,5,7,8),      //11   (3,4,6,8,9)        //12   ); var i,k: integer;   begin   k : = 1 + random(12);   for i : = 1 to 1 + random(3) do       begin       write(k);       k : = r[k,1 + random(5)];       end; end.

Const pi=3.14; var r1,r2: real; begin write('введите внешний радиус кольца: '); readln(r1); write('введите внутренний радиус кольца: '); readln(r2); writeln('s=',pi*(r1*r1-r2*r2): 6); end. писал по формуле s=пи*(r-r)

Популярно: Информатика