a = list(map(int, input().split()))
s=0
if len(a)<3:
pass
else:
for i in range(1,len(a)-1):
if a[i] > a[i-1] and a[i]>a[i+1]:
s+=1
print(s)
Ввод/вывод:
test 1
>>> 1 3 2 4 2
>>> 2
test 2
>>> 1 2
>>> 0
test 3
>>> 1 5 2 6 3 8 4 9 2 10 1
>>> 5
Объяснение:
У вас была ошибка в проверке элементов, вы искали кол-во элементов, которые меньше обоих своих соседей, вместо тех, которые больше, как просили в задании. Так же, при длине последовательности меньше трёх программа выводила 0 два раза - в начале, где вы проверяли длину последовательности, и в конце переменную s, которая тоже в таком случае равна нулю.
1
//Вводим a,b,c
Console.WriteLine(hello);
if(a == b || a==c || b==c){
Console.WriteLine("Треугольник равнобедренный");
}else{
Console.WriteLine("Треугольник НЕ равнобедренный");
}
2
int x1,x2,x3,x4;
int x;
//Вводим число x
x1 = (x - (x % 1000)) / 1000;
x2 = ((x - (x % 100)) - (x - (x % 1000))) / 100;
x3 = ((x - (x % 10)) - (x - (x % 100))) / 10;
x4 = x % 10;
if((x1 == 6) || (x1 == 9) || (x2 == 6) || (x2 == 9) || (x3 == 6) || (x3 == 9) || (x4 == 6) || (x4 == 9)){
Console.WriteLine("Входит");
}else{
Console.WriteLine("не входит");
}
3
float x,y,z;
// Вводим x,y,z
if(x >= 0,5 && x<=5,1) Console.WriteLine(x, " Входит");
if(y >= 0,5 && y<=5,1) Console.WriteLine(y, " Входит");
if(z >= 0,5 && z<=5,1) Console.WriteLine(z, " Входит");
4 задания к сожалению не понял
Поделитесь своими знаниями, ответьте на вопрос:
Найти все целые двузначные числа, удовлетворяющие условию: остаток отделения на 5 равен 3. Цикл for, PascalABC
var i: integer;
begin
for i:=10 to 99 do
if i mod 5 = 3 then
writeln(i);
end.