Tinkercad СРОЧНОООО найдіть помилку в коді завдання було зробити кнопку рестарту гри (кнопка не працює) фото схеми нижче?

Информатика | студенческий

Tinkercad СРОЧНОООО найдіть помилку в коді завдання було зробити кнопку рестарту гри (кнопка не працює) фото схеми нижче.

Відповіді від GPT не потрібні.

КОД : #define BUTTON_RESTART 13

#define LED_RED 11

#define LED_GREEN 9

#define LED_BLUE 7

#define LED_YELLOW 5

#define LED_CORRECT 4

#define LED_WRONG 2

#define BUTTON_RED 12

#define BUTTON_GREEN 10

#define BUTTON_BLUE 8

#define BUTTON_YELLOW 6

#define BUZZER 3

#define RED_TONE 220

#define GREEN_TONE 262

#define BLUE_TONE 330

#define YELLOW_TONE 392

#define TONE_DURATION 250

int restartButtonState = 0 ;

int GAME_SPEED = 250 ;

int GAME_STATUS = 0 ;

const int GAME_MAX_SEQUENCE = 50 ;

int GAME_SEQUENCE[GAME_MAX_SEQUENCE] ;

int GAME_STEP = 0 ;

int READ_STEP = 0 ;

void setup(){

pinMode(BUTTON_RESTART, INPUT_PULLUP) ;

Serial.

Begin(9500) ;

randomSeed(analogRead(0)) ;

pinMode(LED_RED, OUTPUT) ;

pinMode(LED_GREEN, OUTPUT) ;

pinMode(LED_BLUE, OUTPUT) ;

pinMode(LED_YELLOW, OUTPUT) ;

pinMode(LED_CORRECT, OUTPUT) ;

pinMode(LED_WRONG, OUTPUT) ;

pinMode(BUTTON_RED, INPUT_PULLUP) ;

pinMode(BUTTON_GREEN, INPUT_PULLUP) ;

pinMode(BUTTON_BLUE, INPUT_PULLUP) ;

pinMode(BUTTON_YELLOW, INPUT_PULLUP) ;

pinMode(BUZZER, OUTPUT) ;

}

void loop() {

restartButtonState = digitalRead(BUTTON_RESTART) ;

switch (GAME_STATUS) {

case 0 :

if (restartButtonState = = HIGH) {

delay(100) ;

resetGame() ;

}

break ;

case 1 :

playSequence() ;

break ;

case 2 :

readSequence() ;

break ;

case 3 :

gameOver() ;

break ;

case 4 :

resetGame() ;

break ;

}

}

void resetGame() {

GAME_STATUS = 0 ;

GAME_STEP = 0 ;

READ_STEP = 0 ;

GAME_SPEED = 250 ;

for (int i = 0 ; i < ; GAME_MAX_SEQUENCE ; i + + ) {

GAME_SEQUENCE[i] = random(4) + 1 ;

}

GAME_STATUS = 1 ;

}

void playSequence(){

for(int i = 0 ; i < ; = GAME_STEP ; i + + ){

Serial.

Print("Set LED") ;

Serial.

Println(GAME_SEQUENCE[i]) ;

delay(GAME_SPEED * 2) ;

setLED(GAME_SEQUENCE[i]) ;

playTone(GAME_SEQUENCE[i]) ;

delay(GAME_SPEED) ;

clearLEDs() ;

}

GAME_STATUS = 2 ;

}

void readSequence(){

int button_value = readButtons() ;

if(button_value > ; 0){

if(button_value = = GAME_SEQUENCE[READ_STEP]){

setLED(button_value) ;

playTone(button_value) ;

digitalWrite(LED_CORRECT, HIGH) ;

delay(GAME_SPEED) ;

clearLEDs() ;

digitalWrite(LED_CORRECT, LOW) ;

if (GAME_SPEED > ; 100) {

GAME_SPEED = GAME_SPEED - 15 ;

}

Serial.

Println("Correct!

") ;

if(READ_STEP = = GAME_STEP){

READ_STEP = 0 ;

GAME_STEP + + ;

GAME_STATUS = 1 ;

Serial.

Println("Next step") ;

setLEDs(true, true, true, true) ;

delay(GAME_SPEED) ;

setLEDs(false, false, false, false) ;

}else{

READ_STEP + + ;

}

delay(10) ;

}else{

GAME_STATUS = 3 ;

Serial.

Println("Game Over!

") ;

}

}

delay(10) ;

}

void gameOver(){

digitalWrite(LED_WRONG, HIGH) ;

tone(BUZZER, 98, TONE_DURATION) ;

delay(TONE_DURATION) ;

tone(BUZZER, 93, TONE_DURATION) ;

delay(TONE_DURATION) ;

tone(BUZZER, 87, TONE_DURATION) ;

delay(TONE_DURATION) ;

delay(GAME_SPEED) ;

}

void setLED(int id){

switch(id){

case 0 :

setLEDs(false, false, false, false) ;

break ;

case 1 :

setLEDs(true, false, false, false) ;

break ;

case 2 :

setLEDs(false, true, false, false) ;

break ;

case 3 :

setLEDs(false, false, true, false) ;

break ;

case 4 :

setLEDs(false, false, false, true) ;

break ;

}

}

void playTone(int id){

switch(id){

case 0 :

noTone(BUZZER) ;

break ;

case 1 :

tone(BUZZER, RED_TONE, TONE_DURATION) ;

break ;

case 2 :

tone(BUZZER, GREEN_TONE, TONE_DURATION) ;

break ;

case 3 :

tone(BUZZER, BLUE_TONE, TONE_DURATION) ;

break ;

case 4 :

tone(BUZZER, YELLOW_TONE, TONE_DURATION) ;

break ;

}

}

void setLEDs(boolean red, boolean green, boolean blue, int yellow ){

if (red) digitalWrite(LED_RED, HIGH) ;

else digitalWrite(LED_RED, LOW) ;

if (green) digitalWrite(LED_GREEN, HIGH) ;

else digitalWrite(LED_GREEN, LOW) ;

if (blue) digitalWrite(LED_BLUE, HIGH) ;

else digitalWrite(LED_BLUE, LOW) ;

if (yellow) digitalWrite(LED_YELLOW, HIGH) ;

else digitalWrite(LED_YELLOW, LOW) ;

}

void clearLEDs(){

setLEDs(false, false, false, false) ;

}

int readButtons(void){

if (digitalRead(BUTTON_RED) = = 0) return 1 ;

else if (digitalRead(BUTTON_GREEN) = = 0) return 2 ;

else if (digitalRead(BUTTON_BLUE) = = 0) return 3 ;

else if (digitalRead(BUTTON_YELLOW) = = 0) return 4 ;

return 0 ;

}.

Ответить на вопрос
Ответы (1)
Roza1211 29 окт. 2023 г., 13:48:23

Ответ :

Наскільки я зрозумів :

Помилка в коді полягає в тому, що функція resetGame(), яка відповідає за рестарт гри, викликається зі стану 0 тільки коли натискається кнопка restartButtonState.

Але в схемі підключено кнопку до землі, тому вона постійно в стані 0 (натиснуто).

Тобто resetGame() викликається лише один раз після запуску, а потім вже не реагує на натискання кнопки, бо її стан не змінюється.

Для виправлення потрібно підключити кнопку до живлення, а не до землі, таким чином стан її буде змінюватись від 0 до 1 при натисканні.

С наступающим вас).

Nikita032108 18 окт. 2023 г., 23:01:34 | 5 - 9 классы

Исправьте ошибки в высказываниях?

Исправьте ошибки в высказываниях.

• Только алгоритмический язык Паскаль является языком

низкого уровня.

• Программирование на языке высокого уровня начинается

с выбора алфавита и синтаксиса.

• Компилятор

это интерпретатор программы с языка про -

граммирования в машинные коды.

• Никогда компилятор не может быть транслятором.

​.

Joni06 15 нояб. 2023 г., 00:45:11 | 1 - 4 классы

У парку ялина значно нижча від тополі, дуб вищий за ялину і тополю, клен нижчий від ялини?

У парку ялина значно нижча від тополі, дуб вищий за ялину і тополю, клен нижчий від ялини.

Береза вища за клен, але нижча від ялини.

Яке дерево найнижче, а яке - найвище?

Петя224 20 нояб. 2023 г., 21:36:25 | студенческий

Визначити, чи належить задане число відрізку [ - 3 ; 3]Скласти С + + код?

Визначити, чи належить задане число відрізку [ - 3 ; 3]

Скласти С + + код.

Artist68 28 нояб. 2023 г., 02:53:40 | 5 - 9 классы

Информационный вес I одной буквы некого алфавита равен 6 битам?

Информационный вес I одной буквы некого алфавита равен 6 битам.

Определите мощность N (количество букв) алфавита и суммарный информационный объём сообщения, состоящего из 5 букв этого алфавита (длина кода сообщения равна 5 буквам).

Mucky15 30 нояб. 2023 г., 23:23:27 | 5 - 9 классы

Надо очень срочно дам 160бНаписати ппограмний код для малювання равлика?

Надо очень срочно дам 160б

Написати ппограмний код для малювання равлика.

Zagnetnaya1105 4 дек. 2023 г., 13:05:11 | 10 - 11 классы

Помогите пожалуйста решить задачу на рекурсию на питоне?

Помогите пожалуйста решить задачу на рекурсию на питоне.

(Мы проходим паскаль, а питон нет)

Дан рекурсивный алгоритм :

def F(n) : if n > ; 2 : return F(n - 1) + F(n - 2) else : return n

Чему будет равно значение, вычисленное алгоритмом при выполнении вызова F(5)?

89050649280 26 дек. 2023 г., 19:18:40 | 1 - 4 классы

Даю 50 балловПриведите разработку сценария собственной игры?

Даю 50 баллов

Приведите разработку сценария собственной игры.

Заполните блок - схему.

Angelia 8 окт. 2023 г., 01:28:55 | 5 - 9 классы

На компакт диске обьемом 600 мбайт размещен фотоальбом, каждое фото в котором занимает 500 кбайт?

На компакт диске обьемом 600 мбайт размещен фотоальбом, каждое фото в котором занимает 500 кбайт.

Сколько времени займет просмотр всех фотографий, если на просмотр 1 уходит 6 секунд?

Rostisk 3 нояб. 2023 г., 18:53:28 | 10 - 11 классы

Напишите через запятую что находится в переменных a и b после выполнения алгоритма :A : = 25 ; b : = 5 ;If a> ; 10 then b : = 2 * b else b : = a / 5 ?

Напишите через запятую что находится в переменных a и b после выполнения алгоритма :

A : = 25 ; b : = 5 ;

If a> ; 10 then b : = 2 * b else b : = a / 5 ;

Nastyakorotkova1 10 дек. 2023 г., 09:45:41 | студенческий

Где ошибкаvara, b : real ; c : string ;beginwriteln('Цисло тигров') ;Read(a) ;b : = 30 ;if a< ; = b thenwriteln('Норма') ;if awriteln('Угроза') ;writeln('Угроза исчезновения') ;read(c) ;if c = 'Отпр?

Где ошибка

var

a, b : real ; c : string ;

begin

writeln('Цисло тигров') ;

Read(a) ;

b : = 30 ;

if a< ; = b then

writeln('Норма') ;

if a

writeln('Угроза') ;

writeln('Угроза исчезновения') ;

read(c) ;

if c = 'Отправить' then

writeln('Вы выброли отправить') ;

if c = 'Не отправить' then

writeln('Вы выброли не отправить') ;

end ;

end.

На этой странице находится ответ на вопрос Tinkercad СРОЧНОООО найдіть помилку в коді завдання було зробити кнопку рестарту гри (кнопка не працює) фото схеми нижче?, из категории Информатика, соответствующий программе для студенческий. Чтобы посмотреть другие ответы воспользуйтесь «умным поиском»: с помощью ключевых слов подберите похожие вопросы и ответы в категории Информатика. Ответ, полностью соответствующий критериям вашего поиска, можно найти с помощью простого интерфейса: нажмите кнопку вверху страницы и сформулируйте вопрос иначе. Обратите внимание на варианты ответов других пользователей, которые можно не только просмотреть, но и прокомментировать.