Алентина
15.10.2020 19:37

Написати програму, яка, не рахуючи функцій, складається з одного рядка коду: виклик функції test(). У цій функції потрібно зробити можливість введення цілого числа з клавіатури. Окрім того, якщо воно позитивне, то викликається функція dodatne(), тіло якої містить виведення на екран слова "Додатне", якщо число від'ємне, то викликається функція vidyemne(), її тіло містить виведення на екран слова "Від’ємне". Зрозуміло, що виклик test() повинен йти після визначення функцій. Однак чи має значення порядок визначення самих функцій? Тобто чи повинні визначатися dodatne() і vidyemne() перед test() чи можуть бути після неї? Перевірте вашу гіпотезу, помінявши визначення функцій місцями. Спробуйте пояснити результат.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
999Roman999999991
08.06.2022 07:29
Таблицы позволяют объединить однотипные данные в более-менее читабельную структуру, чего не делает словесное описание (как, например, приятней читать таблицу с датами и описанием исторических событий в таблице, чем читать словесную демагогию в учебиках). Таблицы позволяют ужать данные в размере, читателю сосредоточиться на главном. Они позволяют операторам обрабатывать её без каких-либо затруднений.

Еще пример: магазинные чеки. Не будет же машина (из-за технической сложности) или человек (из-за лени) писать на чеке: "продано столько-то столько-то того-то того-то ... пакет апельсинов весил шестьсот пядесят три грамма ... итд". На чеке будет табличка, где четко и точно будет написано то, что человек приобрел.
Вот. Так что табличные модели, несомненно, лучше словесных.
0,0(0 оценок)
Ответ:
Yarik176
16.12.2021 13:09

В задании исходный код программы введен немного неправильно, поэтому я решил его загуглить и нашел во с идентичными кодом без ответа. Код, вроде, рабочий, но я его серьезно не тестировал.

N = 1E5

a, p, s = [], [], []

def main():

       n = k = i = j = 0

       (n, k) = (int(input()), int(input()))

       p = [0] * n

       s = [0] * n

       for i in range(0, n):

               a.append(int(input()))

               if a[i] > a[j]:

                       p[i] = i

                       j = i

               else:

                       p[i] = p[j]

       

       j = n - 1

       for i in range(n - 1, -1, -1):

               if (a[i] >= a[j]):

                       s[i] = i

                       j = i

               else:

                       s[i] = s[j]

       

       m, l, r = 0, 0, k + 1

       i = l

       for j in range(r, n):

               t = a[p[i]] + a[s[j]]

               if t > m:

                       l = p[i]

                       r = s[j]

                       m = t

               i += 1;

       print(str(l + 1) + " " + str(r + 1))

if __name__ == "__main__":

       main()

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота