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

2“. У результаті чого можуть змінюватися значення властивос-
тей об'єктів?

Показать ответ
Ответ:
Empresssss
Empresssss
22.08.2020 08:35

--- Python 3.8.3 ---

import typing

from typing import List  

from typing import AnyStr

from typing import Tuple

from typing import Callable

from typing import Any

class FactPackLoader:

   def __init__(self, TrueCode: str = '1', FalseCode: str = '0', encoding: AnyStr = 'utf-8',):

       self._encoding = encoding

       self._trueAnswCode = TrueCode

       self._falseAnswCode = FalseCode

   def LoadPack(self, FactPackPath: AnyStr, AnswSplitter: AnyStr = ':: ') -> Tuple[AnyStr, int]:

       with open(FactPackPath, 'r', encoding=self._encoding) as data:

           RawData = data.read().split('\n')

       for FactPair in RawData:

           FactPair = tuple(FactPair.split(AnswSplitter))

           yield (FactPair[0], self._ToBool(FactPair[1]))

           

   def _ToBool(self, replyCode):

       if replyCode == self._trueAnswCode: return True

       return False  

def main():

   f = FactPackLoader()

   print('"Правда-Ложь"\nАвтор: KnowsUser1\nVersion: 0.0.1 Ya-Sdelyal')

   IsGameRunning = 'y'

   while IsGameRunning == 'y':

       lives = 3

       fp = input('Укажите имя файла, содержащего пак фактов:\n')

       facts = f.LoadPack(fp)

       for i, Q in enumerate(facts):

           print(f'Вопрос {i+1}:\n{Q[0]}')

           reply = True if input().lower() == 'да' else False

           if reply != Q[1]:

               lives -= 1

               print(f'Вы не поверите, но тот факт, что {Q[0]}, действительно является правдой!\nЖизней осталось: {lives}')

           else:

               print(f'Вы совершенно правы!')

           if lives <= 0:

               print('Вы проиграли')

               IsGameRunning = input('Попробуем ещё раз? Y/N\n').lower()

               break

       else:

           print('Поздравляем, вы успешно выполнили все задания из файла!')

           IsGameRunning = input('Сыграем ещё раз? Y/N\n').lower()

if __name__ == "__main__":

   main()

В файле с паком вопросов после каждого вопроса должен быть указан код ответа (по умолчанию - 1 - истина, 0 - ложь), отделённый от вопроса особым символом/набором символов (по умолчанию - ':: ')

Коды ответа при необходимости в изменении указываются при создании экземпляра FactPackLoader(), символ-разделитель - при вызове LoadPack().

По умолчанию в файле с заданиями пара вопрос ответ выглядит так:

//facts.txt

На самом деле солнце белого цвета :: 1

После "::" должен стоять пробел

P.S - Код main() можно и нужно рефакторить, ибо сейчас это нечто страшное.

P.S 2 Да, я часто обращаю внимание на плохой код людей, а сейчас сам его написал. Вынепонимаете, этодругое =))

P.S 3 Проверял, программа работает. Если что то сломалось, виноват сайт. На всякий случай прикреплю файл исходного кода в .txt

0,0(0 оценок)
Ответ:
dfghjkghjkl
dfghjkghjkl
21.09.2021 05:55
// PascalABC.NET 3.2, сборка 1345 от 24.11.2016
// Внимание! Если программа не работает, обновите её версию!

begin
  Writeln(' x   x^2    x^3');
  for var i:=1 to 50 do Writeln(i:3,i*i:5,i*i*i:8);
end.

Результат
 x   x^2    x^3
  1    1       1
  2    4       8
  3    9      27
  4   16      64
  5   25     125
  6   36     216
  7   49     343
  8   64     512
  9   81     729
 10  100    1000
 11  121    1331
 12  144    1728
 13  169    2197
 14  196    2744
 15  225    3375
 16  256    4096
 17  289    4913
 18  324    5832
 19  361    6859
 20  400    8000
 21  441    9261
 22  484   10648
 23  529   12167
 24  576   13824
 25  625   15625
 26  676   17576
 27  729   19683
 28  784   21952
 29  841   24389
 30  900   27000
 31  961   29791
 32 1024   32768
 33 1089   35937
 34 1156   39304
 35 1225   42875
 36 1296   46656
 37 1369   50653
 38 1444   54872
 39 1521   59319
 40 1600   64000
 41 1681   68921
 42 1764   74088
 43 1849   79507
 44 1936   85184
 45 2025   91125
 46 2116   97336
 47 2209  103823
 48 2304  110592
 49 2401  117649
 50 2500  125000
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота