lugowskayatania2017
?>

Объясните само решение.не надо писать программу. определить есть ли в массиве хотя бы одна тройка соседних чисел, в которой средний элемент больше своих "соседей", т. е. предшествующего и последующего. в случае положительного ответа определить номера элементов первой из таких троек.

Информатика

Ответы

info22

в цикле от второго до предпоследнего элемента смотрятся текущий элемент и его соседи. если текущий элемент больше своих соседей, то в память записывается номер текущего элемента и цикл завершается (потавить переменную в true, а в усовии выполнения цикла потставить ещё проверку значения этой перевенной),  первый элемент тройки - то число в памяти-1, второй элемент - само число, а третий элемент - число в памяти+1. если при завершение цикла не было найдено таких троек(та перменная равна false), то значит таких троек нет.

 

псевдокод

 

[n] - n-ый элемент массива(перед [ пишется название массива)(нумерация элементов начинается с нуля)

 

размер массива - n

 

массив м;

целое число (intenger) а : = 0;

логическа единица(boolean) b : = false;

целое число i : = 1;

 

пока(i< n-1 и b=false)

начало

  если(m[i]> m[i-1] и m[i]> m[i+1])

  начало

    a : = i;

    b : = true;

  конец

  i : = i+1;

конец

 

если (b = false) то таких троек нет

иначе то a-1 - превый элемент тройки, a - второй, a+1 - третий.

 

yaudo47
Const  n = 10; var  a: array [1..n, 1..n] of integer;           i, j, min, max, result: integer; begin      for i : = 1 to n do    for j : = 1 to n do      readln(a[i, j]);       min : = a[1, 1]; max : = a[1, 1];   for i : = 1 to n do    for j : = 1 to n do    begin      if a[i, j] > max then        max : = a[i, j];       if a[i, j] < min then        min : = a[i, j];     end;   result : = sqr(min) * sqr(max);   writeln(result);     end.
sn009
Var  a,b,p,n,x,i: integer; begin writeln('сколько примеров будешь решать: '); readln(n); for i: =1 to n do   begin   a: =random(10)+1;   b: =random(10)+1;   write('сколько будет ',a,'+',b,'=');   readln(x);   if x=a+b then     begin     p: =p+1;     writeln('правильно');     end     else writeln('неверно');   end; writeln('число правильных ответов: ',p); if p=n then writeln('отлично, ты превосходно знаешь арифметику'); if (p< n) and (p/n> 0.75) then writeln('хорошо, ты неплохо знаешь арифметику'); if (p/n< =0.75) and (p/n> 0.5) then writeln('удовлетворительно, ты средне знаешь арифметику'); if (p/n< =0.5) and (p> 0) then writeln('плохо, ты не знаешь арифметику'); if p=0 then writeln('отвратительно, ты абслютно не знаешь арифметику'); end.можно сделать, чтобы не только на сложение, а на все 4 действия.

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

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

Объясните само решение.не надо писать программу. определить есть ли в массиве хотя бы одна тройка соседних чисел, в которой средний элемент больше своих "соседей", т. е. предшествующего и последующего. в случае положительного ответа определить номера элементов первой из таких троек.
Ваше имя (никнейм)*
Email*
Комментарий*

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

kristal1
Andrei-Shchukin
rublevaoe392
kit036
Batrakova-Anna
zdl2008
modos201276
uzunanna19922488
info7
Станислав Валерий1696
manager9
kostmax1971
admiralbany
ivnivas2008
membuksdk