с домашним заданием. Составить блок-схему нарисовать блок-схему .. Представьте в виде блок-схемы процесс принятия федеральных законов Российской Федерации.
Вершины графа будут изображать действия, дуги - их последовательность. Принятие Федеральных Законов Российской Федерации Согласно ст. 105, 107 конституции 1993 г. принятие федеральных законов регулируется следующими положениями:
1) В принятии закона принимают участие Государственная Дума, Совет Федерации и президент.
2) Закон принимает Государственная Дума.
3) Затем закон передается в Совет Федерации, который либо одобряет закон, либо отклоняет его (налагает вето).
4) Если Совет Федерации одобрил закон, закон направляется президенту.
5) Если Совет Федерации отклонил закон, закон возвращается в Государственную Думу.
6) Если Государственная Дума соглашается изменить закон, то все действия по принятию закона повторяются с самого начала.
7)Если Государственная Дума не согласна изменить закон, она проводит по нему повторное голосование.
8) Если при повторном голосовании в Думе закон получил менее 2/3 голосов, то Государственная Дума обязана внести в закон изменения и повторить все действия по принятию закона.
9) Если при повторном голосовании в Думе закон получил не менее 2/3 голосов, он считается принятым, несмотря на вето Совета Федерации ("Государственная Дума преодолела вето Совета Федерации").
10) В этом случае принятый закон направляется президенту.
11) Президент рассматривает полученный им закон и может одобрить его или отклонить (наложить вето).
12) В случае одобрения президент подписывает и обнародует закон, после чего закон вступает в силу.
13) В случае отклонения президентом закон возвращается в Государственную Думу.
14) Если Государственная Дума согласна изменить закон, то все действия по принятию закона повторяются с самого начала.
15) Если Государственная Дума не согласна изменить закон, она проводит по нему повторное голосование.
16) Если при повторном голосовании в Думе закон получил менее 2/3 голосов, то Государственная Дума обязана внести в закон изменения и повторить все действия по принятию закона.
17) Если при повторном голосовании в Думе закон получил не менее 2/3 голосов, он направляется в Совет Федерации ("Государственная Дума преодолела вето президента").
18) В этом случае Совет Федерации также проводит повторное голосование по закону.
19) Если при повторном голосовании в Совете Федерации закон получил менее 2/3 голосов, он возвращается в Думу.
20) Если при повторном голосовании в Совете Федерации закон получил не менее 2/3 голосов (Совет Федерации преодолел вето президента), закон направляется президенту. В этом случае президент обязан подписать и обнародовать закон.
Изображение
Так как язык не указан, приведу пример на SWI-Prolog.
Код:
read_int(Int) :- read(Int), integer(Int).split_int_by_numbers(0, []) :- !.split_int_by_numbers(N, [Number|Ints]) :- Number is mod(N, 10), RestN is div(N, 10), split_int_by_numbers(RestN, Ints).test_to_div(_, []).test_to_div(N, [Number|Ints]) :- mod(N, Number) =:= 0, test_to_div(N, Ints). test(Int) :- split_int_by_numbers(Int, Numbers), test_to_div(Int, Numbers), write(Int), write(" - Yes!"), nl.test(Int) :- write(Int), write(" - No!"), nl.?- read_int(Int), test(Int).a: array [,] of integer;
begin
var n := ReadlnInteger('n = ');
var m := ReadlnInteger('m = ');
var rand := ReadlnInteger('Для ручного ввода нажмите 0');
if rand = 0 then begin
a := new integer[m, n];
for var i := 0 to m-1 do
for var j := 0 to n-1 do
a[i, j] := ReadlnInteger('a[' + i + ',' + j + '] = ');
end
else a := MatrixRandom(m, n, 1, 100);
Println(a);
var b := ArrGen(n, x -> 1);
for var i := 0 to m-1 do
for var j := 0 to n-1 do
if j mod 2 = 0 then
b[j] := b[j] * a[i, j];
b.Where((x, i)-> i mod 2 = 0).SortedDescending().Println();
end.