ТигранКалмыкова
?>

РЕБЯТААсколько раз повторится тело цикла в процессе выполнения фрагмента программы?​

Информатика

Ответы

severbykova

1)

 

var
a, b: integer;
begin
writeln('Введите a, b: '); readln(a, b);
if(b mod a = 0) then writeln('Является делителем')
else writeln('Не является делителем');
end.

 

2)

 

var
x, y, tmp: real;
begin
repeat
writeln('Введите x, y: '); readln(x, y);
until(x <> y);
if(x > y) then begin
tmp := y;
y := (x + y) / 2;
x := 2*(x * tmp);
writeln('Большее - X = ', x, ' Меньшее - Y = ', y);
end else begin
tmp := x;
x := (x + y) / 2;
y := 2*(tmp * y);
writeln('Большее - Y = ', y, ' Меньшее - X = ', x);
end;
end.

 

Artak96993298

//Обьявляем дополнительные переменные и главный массив, а также два дополнительных - они будут "половинками".

var

 a, b, c: array [1..100] of longint;

 i, min, n, j, t: longint;

begin

 //Читаем количество элементов в нашем массиве.

 readln(n);

 

 //Читаем массив.

 for i := 1 to n do read(a[i]);

 

 //Заполняем первую "половинку".

 for i := 1 to n div 2 do b[i] := a[i];

 

 //Заполняем вторую "половинку". Но раз это уже вторая "половинка" главного массива, то и

 //цикл теперь должен начинаться со второй части массива, а заканчиваться уже в его конце.

 for i := n div 2 + 1 to n do c[i - n div 2] := a[i];

 

 //Теперь отсортируем первую "половинку" методом выбора. Идея этого метода

 //основывается на том, что мы ищем минимальный среди неотсортированных элемент,

 //а затем аем его с тем, который стоит сразу после отсортированных.

 for i := 1 to (n - 1) div 2 do

 begin

   min := i;

   for j := i + 1 to n div 2 do

     if b[min] > b[j] then

       min := j;

   if min <> i then begin

     t := b[i];

     b[i] := b[min];

     b[min] := t;

   end;

 end;

 

 //Затем вторую точно также, только стоит обратить внимание на сравнения.

 //Так как надо отсортировать по убыванию, то теперь сравнение перед "swap"-ом

 //будет другим.

 for i := 1 to (n - 1) div 2 do

 begin

   min := i;

   for j := i + 1 to n div 2 do

     if c[min] < c[j] then

       min := j;

   if min <> i then begin

     t := c[i];

     c[i] := c[min];

     c[min] := t;

   end;

 end;

 

 //А теперь по очереди выводим готовые "половинки", не забывая ставить

 //пробел после вывода каждого элемента.

 for i := 1 to n div 2 do write(b[i], ' ');

 for i := 1 to n - n div 2 do write(c[i], ' ');

end.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

РЕБЯТААсколько раз повторится тело цикла в процессе выполнения фрагмента программы?​
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

aci2003
RozaAsadullina
annakuznetsova841
Жуков219
Voronin-Albertovich
Дмитрий-Олейникова
mishamedbrat
vettime625
betepah
Ofelya1308
sn009
e-s-i-k
antoska391
tigran87-87
ganzashop