В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
BlackStar14
BlackStar14
22.11.2021 05:58 •  Информатика

Ученые установили, что прирост какого-либо вида живых организмов за счет рождаемости прямо пропорционален их количеству, а убыль за счет смертности прямо пропорциональна квадрату их количества. этот закон известен под названием закона мальтуса. пусть в одном хозяйстве собираются разводить карпов. прежде чем запускать мальков в пруд, решили провести расчеты. согласно закону мальтуса, изменение числа рыб за один год вычисляется по формуле δn= kn – qn^2. здесь n — число карпов в начале года, k — коэффициент прироста, q — коэффициент смертности. экспериментально установлено, что для данного вида рыб (карпы) и в данных условиях (состояние водоема, наличие корма) k = 1, q = 0,001. если первоначально в пруд запущено n0 рыб, то из закона следует, что количество карпов через год будет таким: n1 = n0 + (kn0 - qn0^2). через два года: n2 = n1 + (kn1 - qn1^2) и так далее. эта формула является моделью процесса размножения рыб в водоеме. проведите вычислительный эксперимент в таблице расчета количества рыб в пруду, поставив следующую цель: подобрать такие значения параметров k и q, при которых количество рыб за 10 лет может быть доведено до 2000. к решению добавьте графическую обработку результатов: график изменения численности рыб с течением времени. выполнить средствами excel.

Показать ответ
Ответ:
Kristinapermya
Kristinapermya
10.07.2022 04:40

ответ:Для начала в onCreate() уберите эту строку:

chatContainer.clear()

Нет смысла чистить только созданный пустой список. Дальше я бы вам советовал следующим образом. Для начала при объявлении адаптера не нужно сразу ему передавать список:

lateinit var adapter: RecyclerChatAdapter

Дальше как только ваш список заполнен вы это проверяете в цикле и инициализируете адаптер:

when {

   documentSnapshot != null -> {

       for (dc in documentSnapshot.documentChanges) {

           when (dc.type) {

               DocumentChange.Type.ADDED -> {

                   val chat = dc.document.toObject(Chat::class.java)

                   chatContainer.add(chat) // Добавление данных в Recycler

                   if(chatContainer.size == documentSnapshot.documentChanges)

                   {

                       adapter = RecyclerChatAdapter(chatContainer)

                   }

               }

           }

       }

   }

}

и дальше сеттинг адаптера как и было у вас в вашем примере. Так же второй вариант как решить вашу проблему, но не уверен что получится, можно в цикле там где вы выводите сообщение в лог обновлять адаптер:

for (i in chatContainer) {

   adapter.notifyDataSetChanged()

}

0,0(0 оценок)
Ответ:
lina16mgstar
lina16mgstar
10.07.2022 04:40

Если создать шаблон строки с автозаполнением, то можно немного у код:

import sys

num_steps = int(sys.argv[1])

fmt_template = '{}.{:>%d}' % num_steps

for x in range(1, num_steps + 1):

   print(fmt_template.format(x, '#' * x))

При num_steps = 4:

1.   #

2.  ##

3. ###

4.

Объяснение:

Все аргументы функции print, указанные через запятую, выводятся разделенные пробелом, отсюда и нестыковка.

Можно так попробовать:

for x in range(1, c+1):

   print('{0}{1}{2}'.format(x, " " * (c - x), '#' * x))

Для c = 3:

1  #

2 ##

3###

Либо заменить запятую конкатенацией (знак +):

print(str(x) + " " * (c - x) + '#' * x)

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