Achei muito interessante o exercicio 3 e tentei faze-lo.
import 'dart:io';
class WhatYouCanToDoQuestions{
String whatQuestion = 'oque voce sabe?';
String question;
String kakoBot = 'KakoBOT:\n';
bool isThisAWhatQuestion = false;
WhatYouCanToDoQuestions(this.question);
bool isThisAWhatQuestionFunc(){
//verificar se estamos numa pergunta sobre o time que o robo torce
if (
question.contains('sabe') ||
question.contains('fazer')) {
isThisAWhatQuestion = true;
}
return isThisAWhatQuestion;
}
whatCanQuestion() {
if (question == whatQuestion) {
String _botAnswer = kakoBot + ' Eu sei muitas coisas, sei te dizer as horas, o ano, ate torco para um clube. Porem estou sempre aprendendo.';
print(_botAnswer);
} else {
unsure();
}
}
unsure() {
if (question.contains('o que') || question.contains('sabe')) {
String _botQuestion =
kakoBot + ' Não entendi, você quer saber o que consigo fazer?';
print(_botQuestion);
String answer = stdin.readLineSync().toString();
if (answer.contains('Sim') || answer.contains('sim')) {
String _botAnswer = kakoBot + ' Entendi, Eu sei muitas coisas, sei te dizer as horas, o ano, ate torco para um clube. Porem estou sempre aprendendo.';
print(_botAnswer);
} else {
String _botAnswer = kakoBot + ' Ah, foi mal... entendi errado.';
print(_botAnswer);
}
}
}
}
import 'dart:io';
import 'questions/time_questions.dart';
import 'questions/club_questions.dart';
import 'questions/what_can_it_to_do.dart';
import 'timing/waiting_time.dart';
void main() async {
String kakoBot = 'KakoBOT:\n';
var a = true;
String usuario = '';
// var myStream = BotClock().kakoBotStrem(1, 10); // no intervalo de 1 segundo por 10 segundos vai ficar aberto.
// var subscriber = myStream.listen((event) { // quando o subscriber tiver escutando vai printar que o kakobot vai ta ativo por tantos segundos
// print(' Kakobot is activated for $event seconds.');
// }, onDone: () {
// print('KakoBot is finishing its works, ask the last question');
// a = false;
// });
print('-- Iniciando o KakoBOT, aguarde..--');
await BotClock().clock(2);
print('KakoBOT:\n Oi :) \n Como posso ajudar?');
do {
usuario = stdin.readLineSync().toString();
print('-- Processando pergunta, aguarde..--');
await BotClock().clock(1);
if (usuario.contains('xau') ||
usuario.contains('Xau') ||
usuario.contains('Adeus') ||
usuario.contains('adeus')) {
a = false;
print(kakoBot + ' Até a proxima!!');
} else if (TimeQuestions(usuario).isThisTime()) {
// verificar antes, assim não fazemos toda a função sem precisar.
await BotClock().clock(2);
TimeQuestions(usuario).timeQuestion();
} else if (ClubQuestions(usuario).isThisClub()) {
//Basta adicionar novas perguntas aqui!
ClubQuestions(usuario).clubQuestion();
} else if (WhatYouCanToDoQuestions(usuario).isThisAWhatQuestionFunc()){
WhatYouCanToDoQuestions(usuario).whatCanQuestion();
}else {
await BotClock().clock(2);
print(kakoBot +
' Não fui treinado para responder a essa pergunta \n Desculpe :( ');
print(kakoBot + ' Você pode fazer outra pergunta ou dizer Adeus');
}
} while (a);
print('--Encerrando KakoBOT--');
}
Tentei fazer os exercicios de calcular e jokenpo, porem no exercicio de calcular nao consegui pegar os numeros do user, e do jokenpo nao entendi a logica.