М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
zzxxccv1
zzxxccv1
12.11.2022 08:10 •  Информатика

Паскаль, составьте программу вычисления в массиве b(n) минимального среди положительных элементов и его номера

👇
Ответ:
loza83olesya
loza83olesya
12.11.2022
Const N=10;
var a: array [0..N] of integer;
    i, m: integer;
begin
     for i := 0 to N do
         a[i] := random(1000) - 500; { Надо же что-то в массив закинуть =) }
     for i := 0 to N do
         if ((a[i] > 0) and (a[i] > a[m])) then
            m := i;
     writeln('[', m, '] => ', a[m]);
end.
4,6(40 оценок)
Открыть все ответы
Ответ:
nselt
nselt
12.11.2022

def solve(n):

 d = 0

 while not (n&1):

   d += 1

   n //= 2

 a = [2]*d

 a[-1] *= n

 if d == 1:

   print("prime")

   return

 for x in range(3, int(n**.5)+1, 2):

   if not (n%x):

     b = a[:]

     b[-1] //= x

     b[-2] *= x

     print("many")

     print(" ".join(map(str, a)))

     print(" ".join(map(str, b)))

     return

 print("single")

 print(" ".join(map(str, a)))

from sys import stdin

for line in stdin:

 print("=== " + line.strip() + " ===")

 solve(int(line))

Дайте плз 5 звёзд, мне очень не хватает "Лучших ответов"

4,8(62 оценок)
Ответ:
omarova4
omarova4
12.11.2022

Примечание:

Использовался ЯП Python, версия 3.8.10.

Решение состоит из двух частей: функция которая составляет словарь простых делителей и их степени, и основной код, который отвечает за вызов этой функции и генерацию строки вывода.

В функции prime_factorization использовался достаточно оптимальный алгоритм факторизации.

Код и примеры работы есть в виде скринов.

Исходный код:

def prime_factorization(n):

   d = 2

   divisors = {}

   while n > 1:

       if n % d == 0:

           divisors[d] = divisors.get(d, 0) + 1

           n //= d

       elif d*d > n:

           d = n

       else:

           d += 1

   return divisors

if __name__ == '__main__':

   n = int(input())

   factors = prime_factorization(n)

   s = ' * '.join([f'{k}^{v}' for k, v in sorted(factors.items())])

   print(s)


, на ПИТОНЕ Разложение на простые Требуется разложить целое число N на простые множители с учётом их
, на ПИТОНЕ Разложение на простые Требуется разложить целое число N на простые множители с учётом их
4,8(83 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ