Ви не увійшли.
Сторінки 1
сообщение об выиграше раунда выводиться трижды
Здравствуйте,мне нужно создать програму камень ножницы бумага с помощью кейпада.
Условия:
1.игра против бота
2.в игре должно быть 3 раунда
3.после каждого раунда выводиться в сериал монитор кто выиграл или ничья(бот или игрок)
4.по завершению игры должно показать кто выиграл в общем или ничья
#include <Keypad.h>
const byte ROWS = 4;
const byte COLS = 4;
int user_score=0,bot_score=0,rounds = 3,x,y;
char hexaKeys[ROWS][COLS] = {
{'1', '2', '3', 'A'},
{'4', '5', '6', 'B'},
{'7', '8', '9', 'C'},
{'*', '0', '#', 'D'}
};
byte rowPins[ROWS] = {9, 8, 7, 6};
byte colPins[COLS] = {5, 4, 3, 2};
Keypad customKeypad = Keypad(makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS);
void setup(){
Serial.begin(9600);
x=random(1,3);
}
void loop(){
char customKey = customKeypad.getKey();
if (customKey=='1'){
y=1;
}
if (customKey=='2'){
y=2;
}
if (customKey=='3'){
y=3;
}
if(rounds!=0){
if(y==x){
user_score++;
bot_score++;
rounds--;
x=random(1,3);
Serial.println("BotWin");
}
else if(y==1 && x==2){
user_score++;
rounds--;
x=random(1,3);
Serial.println("UserWin");
}
else if(y==1 && x==3){
bot_score++;
rounds--;
Serial.println("BotWin");
}
else if(y==2 && x==3){
user_score++;
rounds--;
x=random(1,3);
Serial.println("UserWin");
}
else if(x==1 && y==2){
bot_score++;
rounds--;
x=random(1,3);
Serial.println("BotWin");
}
else if(x==1 && y==3){
user_score++;
rounds--;
x=random(1,3);
Serial.println("UserWin");
}
else if(x==2 && y==3){
bot_score++;
rounds--;
x=random(1,3);
Serial.println("BotWin");
}
}
else if(rounds=0) {
if(user_score>bot_score){
Serial.println("USERWIN");
}
else if(user_score<bot_score){
Serial.println("BOTWIN");
}
else{
Serial.println("DRAW");
}
}
}
Все равно всегда точка(
Нужно на led дисплее в tinkercad вывести горит лампочка или нет, если горит то допустим поставить точку (готовая схема LED).Точка горит постоянно.Знаю ошибка скорее всего очень глупая но подскажите пж
int state = 0;
int led1=6;
int led2=7;
int led3=8;
#include <LiquidCrystal.h>
LiquidCrystal lcd(12,11,5,4,3,2);
void setup (){
lcd.begin(16,2);
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
pinMode(led3,OUTPUT);
}
void loop(){
for(int i=6; i<9; i++)
{
digitalWrite(i,HIGH);
delay(1000);
digitalWrite(i,LOW);
}
for(int i=8; i<5; i--)
{
digitalWrite(i,HIGH);
delay(1000);
digitalWrite(i,LOW);
}
lcd.setCursor(0,0);
lcd.print("123");
state = digitalRead (led1);
if(state == HIGH ){
lcd.setCursor(0,1);
lcd.print("1");
}
state = digitalRead (led1);
if(state == LOW ){
lcd.setCursor(0,1);
lcd.print(".");
}
state = digitalRead (led2);
if(state == HIGH )
lcd.print("2");
state = digitalRead (led2);
if(state == LOW )
lcd.print(".");
state = digitalRead (led3);
if(state == HIGH )
lcd.print("3");
state = digitalRead (led3);
if(state == LOW )
lcd.print(".");
}
Сторінки 1