PascalABC.NET
function IsPrime(number:integer):boolean;
begin
if number = 1 then IsPrime := True
else begin
for var i:= 2 to trunc(sqrt(number)) do begin
if number mod i = 0 then IsPrime := False
else IsPrime := True;
end;
end;
end;
begin
var numbers := Range(0, ReadInteger());
numbers.Println;
numbers.Where(p -> IsPrime(p)).count.Println;
numbers.Where(p -> (p mod 3 = 0) and (p mod 2 <> 0)).Count.Println;
end.
Возможно можно сделать ещё проще, но проверять число на я придумал только самостоятельно реализованной функцией, по этому многабукаф
Поделитесь своими знаниями, ответьте на вопрос:
Срешением хотя бы одной из них, прошу: 1)найти все элементы линейного массива вещественных чисел b(25), которые делятся на 6.2)в линейном массиве целых чисел a(n) заменить все элементы, больше третьего и меньше шестого, на разность между третьим и шестым.3)найти и выдать на печать все элементы линейного массива целых чисел с(n), которые меньше среднего арифметического элементов массива и их номера.4)удалить наибольший элемент массива d(15 массив заполняется случайным образом положительными и отрицательными числами
если числа изначально в 10 системе:
array = list(map(int, input().split())); res = 0; res1 = 0 #ввод и переменные
for i in array:
if len(bin(i)[2:]) == 4: res += i; res1 += 1 #пробегаемся по массиву и смотрим подходит ли элемент в двоичном представлении
try:
print(res / res1) #если не было подходящих будет деление на 0, поэтому я использовал try except
except: print(0) #ну если все же подходящих не было выводим 0
если уже в 2:
array = list(map(int, input().split())); res = 0; res1 = 0
for i in array:
if len(str(i)) == 4: res += i; res1 += 1
try:
print(res / res1)
except: print(0)
Вроде бы как-то так