Avshirokova51
?>

Вам дан массив а длины н вы можете удалить некоторые элементы из него при этом после всех удалений элементы должны стоять строго возрастаюшем порядке выведите максимальную возможную длину массива после всех удалений

Информатика

Ответы

verich
//PascalABC.NET 3.3,сборка 1611 от 06.01.2018

//Внимание! Если программа не работает, обновите версию!

begin

  var mas:=ArrRandom(20,-99,99);

  var A:=mas.OrderByDescending(t->t).ToArray;

  var st:=new Stack<integer>; A.ForEach(t->st.Push(t)); st.Println;

   st.Where(t->t < 15).Println;

   st.Where(t->t < -20).Println;

   Println('Длина после двух удалений =',st.Where(t->t < -20).Count);

   end.
Вам дан массив а длины н вы можете удалить некоторые элементы из него при этом после всех удалений э
DudukinSerega2507834

Розгалужений процес вміщує декілька шляхів. Вибір того чи іншого шляху залежить від виконання деяких умов. У багатьох випадках виникає потреба в зміні послідовного порядку операторів, що стає можливим завдяки операторам управління. До них в першу чергу відносяться IF та CASE.

Оператор IF реалізує операцію умовного переходу (операцію розгалуження на два напрямки).

Загальний вигляд:

If умовний вираз then…else…;

В умовному виразі задається умова розгалуження. При виконанні оператора IF цей вираз обчислюється з отриманням логічного результату. Якщо результат True, то виконується простий або складний оператор після слова Then. Якщо результат False, то виконується оператор після Else.

Наприклад:

If A<7.2 then Y:=5*A else Y:=5/A;

Частину оператора Else … можна не вживати:

If X>0 then K:=K+1;

Це означає, що у випадку, коли число Х більше нуля, буде виконано оператор K:=K+1. Якщо така умова для конкретного числа хибна, то змінення К не відбувається, а управління передається на оператор, який в програмі записано після оператора If.

Складений оператор Begin…End суттєво розширює можливості If:

If X>0 then begin

K:=K+1;

R:=a;

End

Else begin

L:=L+1;

Q:=A;

End;

У складному операторі записують будь-яку кількість операторів. Вони виконуються “як одне ціле”. Тут можуть бути “свої” If, цикли, тощо.

Зверніть увагу на те, що після оператора, який стоїть перед Else, не ставиться крапка з комою.

Оператор Case забезпечує розгалуження на декілька напрямків.

Загальний вигляд:

Case індекс вибору of список вибору;

Else…; End;

де індекс вибору – проста змінна цілого, символічного, перелічуваного або логічного типу;

список вибору – сукупність простих або складних операторів, перед кожним з яких стоїть константа вибору, тип якої співпадає з типом індексу вибору.

Після слова Else може стояти простий або складний оператор (ця конструкція може бути відсутня).

Приклад:

Case Kit of

1: Y:=sin(x);

2: Y:=cos(x);

3: Y:=sin(x)+cos(x);

Else Y:=0;

End; {case}

Змінна Kit (цілого типу) повинна бути визначеною до виконання оператора Case. Якщо Kit дорівнює 1, обчислюється функція Y:=sin(x), якщо вона дорівнює 2, то : Y:=cos(x). У тому випадку, коли Kit відрізняється від 1, 2 або 3, буде виконано оператор Y:=0.

У списку вибору можна вживати складний оператор Вegin… End.

Приклад: скласти програму обчислення функції

Програма:

Var X, Y, Z, F : Real;

Begin

Write(‘Введіть Y, Z :’);

ReadLn(Y,Z);

Write(‘Введіть X :’);

ReadLn(X);

IF (X>=Y) THEN F:=SQR(X)+EXP(Z)/COS(Y)

ELSE F:=SIN(X)+COS(Z);

WriteLn(‘Значення F=’,F);

End.

yanermarina87

Листинг 1:

program sum_cubes;

(c) NaaMan}

 function func(x: real): real;

 begin

   Result := 3*x*x + 3*sin(x);

 end;

 const

   start = 0.0;

   finish = 5.0;

   step = 0.7;

 var

   sum, i: real;

   n: integer;

begin

 sum := 0;

 n := 0;

 i := start;

 while i <= finish do begin

   var y: real;

   y := func(i);

   writeln(i,'   ', y:8:3);

   if y > 0 then begin

     sum := sum + power(y,3);

     n := n + 1;

   end;

   i := i + step;

 end;

 writeln( 'Sum = ', sum:10:3, '   Count = ', n);

end.

Листинг 2:

program arr_sum_cou;

(c) NaaMan}

var

 sum, n: integer;

begin

 sum := 0;

 n := 0;

 var a := ArrRandomInteger(100, -40, 40);

 foreach var i in a do

   if i < 0 then

     sum := sum + i

   else

     n := n + 1;

 writeln('Array: ', a);

 writeln( 'Sum = ', sum, '   Count = ', n);

end.

Листинг 3:

program arr_sum_cou;

(c) NaaMan}

var F: boolean;

begin

 F := True;

 var A := ArrRandomInteger(10, 1, 10);

 var B := ArrRandomInteger(10, 1, 10);

 writeln(A);

 writeln(B);

 for var i := 0 to 9 do

   if A[i] = B[i] then begin

     writeln('Item = ', i, '   Value = ', A[i]);

     F := False;

   end;

   if F then

     writeln('Совпадений нет.');

end.


Очень, Очень ! У меня осталось всего 5 часов до сдачи! 1. Рассчитать сумму кубов всех положительных
Очень, Очень ! У меня осталось всего 5 часов до сдачи! 1. Рассчитать сумму кубов всех положительных
Очень, Очень ! У меня осталось всего 5 часов до сдачи! 1. Рассчитать сумму кубов всех положительных

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

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

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

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

faberlic0168
Алексеевич620
leeka152522
ivanpetrovichru1801
Ольга
andreyshulgin835
saljagindima
Ivan1568
Александровна1244
Pilotmi247074
taa19707470
Игоревна Худанов1150
shilinmikhaillg
Панков1101
vladusha47713