Компютърно моделиране и информационни технологии · 6 клас · урок 8 от 9

Създаване на герой и промяна на състоянието му

В компютърните игри героят има състояние: име, точки живот, монети, позиция и други. В програмата всяко от тях се пази в променлива, например health = 100 и coins = 0. Когато нещо се случи в играта, променяме стойностите с присвояване: health = health - 30 при удар или coins = coins + 5 при намерена монета. С условен оператор проверяваме състоянието, например дали героят още е жив.

Работен лист за печат

Какво да запомним

  • Състоянието на героя се пази в променливи: name, health, coins, x, y.
  • Промяна: health = health - 25 или кратко health -= 25.
  • coins += 5 увеличава монетите с 5.
  • if health <= 0: проверява дали играта е свършила.
  • Цикъл може да повтаря ходовете на героя.

Пример

health = 100; coins = 0. Героят е ударен (health = health - 30) и намира монета (coins = coins + 5). Сега health е 70, а coins е 5.

Проверете се: 15 въпроса

Натиснете въпроса, за да видите верния отговор и обяснението.

  1. Герой в игра има health = 100. Колко е health след два пъти health = health - 25?
    • 75
    • 50
    • 25
    • 0

    Отговор: 50

    100 − 25 = 75, после 75 − 25 = 50.

  2. Как се записва, че героят има 3 живота?
    • lives = 3
    • lives == 3
    • 3 = lives
    • print(lives 3)

    Отговор: lives = 3

    Присвояването записва стойността 3 в променливата lives.

  3. coins = 0. Каква е стойността след coins = coins + 5?
    • 0
    • 5
    • 10
    • coins5

    Отговор: 5

    Към старата стойност 0 се добавя 5.

  4. x = 0. Героят прави 4 крачки: for i in range(4): x = x + 10. Колко е x?
    • 10
    • 14
    • 30
    • 40

    Отговор: 40

    Цикълът се изпълнява 4 пъти и всеки път добавя 10: 4 · 10 = 40.

  5. lives = 3. Героят губи два пъти по един живот. Какво дава lives > 0?
    • False
    • True
    • 0
    • грешка

    Отговор: True

    След загубата lives е 1, а 1 > 0 е вярно, затова изразът е True.

  6. Къде програмата пази името или точките на героя?
    • В принтера
    • В браузъра
    • В променлива
    • В коментар

    Отговор: В променлива

    Всяко свойство на героя се пази в променлива.

  7. Как се записва, че героят започва с 0 монети?
    • coins == 0
    • 0 = coins
    • coins: 0
    • coins = 0

    Отговор: coins = 0

    С един знак = присвояваме стойност; == е сравнение.

  8. health = 80. Колко е health след health -= 20?
    • 60
    • 100
    • 20
    • 80

    Отговор: 60

    health -= 20 е съкратено от health = health - 20: 80 - 20 = 60.

  9. Как се записва кратко coins = coins + 5?
    • coins =+ 5
    • coins += 5
    • coins + 5
    • coins ++ 5

    Отговор: coins += 5

    += добавя стойността към променливата.

  10. name = "Рицар". Какво извежда print("Герой: " + name)?
    • Герой: name
    • name
    • Герой: Рицар
    • Рицар

    Отговор: Герой: Рицар

    Двата низа се слепват и се извежда текстът с името.

  11. x = 50. Героят прави три пъти x = x - 10. Колко е x накрая?
    • 40
    • 30
    • 10
    • 20

    Отговор: 20

    50 - 10 - 10 - 10 = 20.

  12. health = 10. Какво извежда: if health <= 0: print("Край") else: print("Жив")?
    • Жив
    • Край
    • 10
    • Нищо

    Отговор: Жив

    10 <= 0 е невярно, затова се изпълнява else.

  13. coins = 0; for i in range(4): coins += 3. Колко са монетите накрая?
    • 7
    • 12
    • 3
    • 4

    Отговор: 12

    Цикълът се повтаря 4 пъти по +3: 4 · 3 = 12.

  14. health = 100. Героят е ударен 3 пъти по 40. Какво дава health > 0?
    • True
    • 40
    • False
    • Грешка

    Отговор: False

    100 - 3 · 40 = −20, а −20 > 0 е невярно.

  15. level = 1; xp = 250; if xp >= 200: level = level + 1. Колко е level?
    • 1
    • 250
    • 201
    • 2

    Отговор: 2

    250 >= 200 е вярно, затова level става 2.