Ir ao conteúdo
  • Cadastre-se

Joanderson Pereira

Membro Pleno
  • Posts

    47
  • Cadastrado em

  • Última visita

Tudo que Joanderson Pereira postou

  1. Nunca usei try e o catch (nem o Buffered e o throw new), só sei que se ele falha na execução de alguma instrução do bloco try ele pula para o bloco catch, se puder me explicar como o código funciona me ajudaria muito. Pelo que eu entendi por padrão é sempre ler como String, faz a validação para então converter para o formato desejado. Para o meu problema eu usei esse dois códigos aí embaixo, que deram para o gasto. public static boolean valida(String k) { boolean numero = k.matches("[0-9]+");//Se houver apenas números nesta String retorna true return numero; } public static boolean valida(String k) { boolean numero = k.matches("[0-9]+");//Se conter apenas números na String retorna true int pos = k.indexOf("-");//Se "-" é o primeiro caractere retorna 0 if (!numero && pos == 0)// Fiz algo parecido com relação ao ponto/vírgula para validar double numero = true; return numero; }
  2. Sou iniciante em Java, estou testando como fazer validação de dados, até o momento eu pegava o que o usuário digitava e jogava em switch, case, if e tralala... Agora me deparei com isso: " double b = scanner.nextDouble(); Ao executar esse tipo de linha de código o programa só prossegue se receber a informação do usuário; Caso seja fornecido caracteres não numéricos, o programa da pau (não é possível guardar letras nesse formato obviamente) e encerra, não sendo possível realizar a validação da mesma forma que eu vinha fazendo. Noto que existe um espaço para parâmetros em: scanner.nextDouble(); É possível realizar esse tipo de verificação com algum parâmetro? Seja qual for a forma, quero descobrir maneiras de impedir que variáveis numéricas tentem receber letras.
  3. Resolveu todos os problemas relacionados ao loop. Declaro por tanto encerrado esse tópico. Agradeço aos envolvidos
  4. Tentei adicionar o <limits>, acontece que ele deu problema com o <windows.h>, ambos utilizam terminações como max e min em suas bibliotecas, para resolver precisava usar #infdef, #define, #endif (meio que definindo qual é qual). Coisas complicadas até demais para mim no momento, então optei por abandonar o windows.h. Só usava o windows.h por causa de Sleep, que por sua vez eu usava por não conseguir usar o sleep normal (vários post na internet estão desatualizados e para usuários com esse problema eles indicam usar o windows.h) no fim descobri que a forma correta no C++ é usleep. Agora vamos para o código: #include <iostream> #include <stdlib.h> // alterações no início e no fim #include <unistd.h> #include <time.h> #include <limits> using namespace std; int wait = 50000; int createZombie() { if (rand() % 67 > 65) { return 21; } if (rand() % 67 < 10) return 11; else return rand() %10 + 1; } int chance() { return rand() % 100; } int main() { srand(time(NULL)); char again; // game stats int playerAlive = true; int playerSkill = 9; int playerScore = 1; string playerName = ""; int zombieCount = 0; int zombiesKilled = 0; again = 'y'; int revive = false; char restart; int deathlyZombie = false; int hugeZombie = false; int skinnyZombie = false; while (again == 'y') { // title cout << "Welcome to Zombie War 1.0" << endl << "Press [ENTER] to start."; char temp = 'x'; while (temp != '\n') cin.get(temp); // player name cout << "Please enter your name: "; cin >> playerName; //ask how many zombies cout << "How many zombies do you wish to fight? "; cin >> zombieCount; cout << "Get ready to fight for your life, " << playerName << "!" << endl; // main game loop while (playerAlive && zombiesKilled < zombieCount) { // create a random zombie int zombieSkill = createZombie(); int luck = chance(); // battle sequence if (zombieSkill > 20) { cout << endl << "Here comes a deathly warrior zombie!!!" << endl; deathlyZombie = true; usleep (wait); } else { if (zombieSkill > 10 && zombieSkill < 20) { cout << endl << "Here comes a huge zombie!" << endl; hugeZombie = true; usleep (wait); } else { cout << endl << "Here comes zombie " << zombiesKilled + 1 << endl; skinnyZombie = true; usleep (wait); } } cout << "Fighting"; usleep (wait / 2); cout << "." ; usleep (wait / 2); cout << "." ; usleep (wait / 2); cout << "." << endl; usleep(wait); //balance if (playerSkill > 50 && luck < 50) { zombieSkill = zombieSkill + 40; playerSkill = playerSkill - 1; cout << "The battle is so hard..." << endl; usleep (2 * wait); } if (playerSkill > 100 && luck < 20) { zombieSkill = zombieSkill + 90; cout << "You keep fighting, but the end is coming..." << endl; usleep (2 * wait); } if (zombieCount > 100 && luck < 10) { playerSkill = playerSkill - 10; cout << "You suffer from accumulated fatigue..."; usleep (2 * wait); } // two if (hugeZombie == true || deathlyZombie == true) { if (luck > 85) { playerSkill = playerSkill +1; zombieSkill = zombieSkill -1; cout << endl << "The zombie tries to grab you."; usleep (wait); cout << endl << "You dodge and knock him down"<< endl; usleep (wait); } if ( luck > 10 && luck < 20 ) { cout << "You lost one of yours tooth!" << endl; usleep (wait); } } // one if (skinnyZombie == true) { //events if (luck < 5 && playerSkill > 12) { zombieSkill = zombieSkill * 2; zombieCount = zombieCount + 1; cout << "Two zombies appeared this time!!" << endl; usleep (wait); } if ( luck > 60 && playerSkill > 40) { playerSkill = playerSkill + 1; cout << "Your hatred for zombies gave you strength." << endl; usleep (wait); } if ( luck > 70 && zombieCount > 10 ) { playerSkill = playerSkill + 1; cout << "The pain you feel increases your focus!!" << endl; usleep (wait); } if ( luck < 3 ) { playerSkill = playerSkill - 2; cout << "The zombie goes into frenzy!!" << endl; usleep (wait); } if ( luck < 10 && zombieSkill > 8 ) { cout << "The zombie bit your ear" << endl; usleep (wait); } if ( playerSkill > zombieSkill ) { skinnyZombie = false; } } if (hugeZombie == true) { if (luck < 30 && playerScore < 50) { cout << endl << "He eats your arm!" << endl; playerSkill = playerSkill -3; usleep (wait); } if (luck > 85 && zombieSkill < 14 && playerScore > 5) { zombieSkill = zombieSkill - 4; cout << "You got a critical hit!!" << endl; usleep (wait); cout << "The zombie became blind!" << endl; usleep (wait); } if (luck > 80 && playerSkill > 20) { zombieSkill = zombieSkill - 2; cout << "You cut off the zombie's hands!!" << endl; usleep (wait); } if (luck < 10) { zombieSkill = zombieSkill + 2; cout << "The zombie kick your face!!" << endl; usleep (wait); } if (luck > 80 && playerSkill < 11) { zombieSkill = zombieSkill - 2; cout << "The zombie grabbet you!" << endl; usleep (wait); cout << "You broke free with a butt in the zombie." << endl; usleep (wait); } if (luck > 98) { playerSkill = playerSkill + 5; cout << "You found a rifle!!" << endl; usleep (wait); } if (playerSkill > zombieSkill) { hugeZombie = false; } } if (deathlyZombie == true) { if (luck < 20 ) { zombieSkill = zombieSkill + 2; playerSkill = playerSkill -2; cout << "The zombie break your leg!!" << endl; usleep (wait); cout << "He threw you on the ground like it was nothing" << endl; usleep (wait); } if (luck > 20 ) { zombieSkill = zombieSkill + 1; cout << "You got away with a blow." << endl; usleep (wait); cout << "He predicted yours movements!!" << endl; usleep (wait); } if (playerSkill > 20 && luck > 80) { playerSkill = playerSkill +2; cout << "You still have not given up hope."; usleep (wait); } if (playerSkill > zombieSkill) { cout << "The deathly warrior zombie will remember you" << endl; deathlyZombie = false; usleep (wait); } } // others if (luck > 50) { if (luck > 85 && zombieSkill < 30) { playerSkill = playerSkill + 1; cout << "You ate some cookies! " << endl; usleep (wait); } if (luck > 99 && playerSkill > 30) { revive = true; cout << "You found a mysterious red ring!!" << endl; usleep (3 * wait); } if (luck > 92 && zombieCount > 10) { zombieSkill = zombieSkill - 2; playerSkill = playerSkill + 1; cout << endl << "You cut off his leg!! " << endl; usleep (wait); cout << "You found some bandage!" << endl; usleep (wait); } } if (luck < 5) { zombieSkill = zombieSkill + 2; cout << "The zombie has a sword!" << endl; usleep (wait); } usleep (wait); //zombie killed the player if (playerSkill < zombieSkill) { playerAlive = false; cout << "You have died." << endl; usleep (5 * wait); if (revive == true) { playerAlive = true; cout << "The mysterious red ring revive you!!" << endl; usleep (wait); cout << "The ring became useless!!" << endl; usleep (wait); } } // player killed the zombie else { if (playerSkill - zombieSkill > 11){ cout << "You blew the zombie's head!"<< endl; playerScore = playerScore + 1; usleep (2 * wait); } if (playerSkill - zombieSkill > 7 && playerSkill - zombieSkill < 12) { cout << "You wasted the zombie!" << endl; playerScore = playerScore + 2; usleep (2 * wait); } if (playerSkill - zombieSkill > 5 && playerSkill - zombieSkill < 8) { cout << "You decapitated the zombie!" << endl; playerScore = playerScore + 3; usleep (2 * wait); } if (playerSkill - zombieSkill > 2 && playerSkill - zombieSkill < 6 ) { cout << "You killed the zombie!" << endl; playerScore = playerScore + 4; usleep (2 * wait); } if (playerSkill > zombieSkill && zombieSkill > 10 && zombieSkill <20) { playerScore = playerScore + 5; usleep (2 * wait); } if (playerSkill > zombieSkill && zombieSkill > 20) { playerScore = playerScore + 20; usleep (2 * wait); } else if (playerSkill - zombieSkill < 3){ cout << "You killed the zombie, but suffered injuries." << endl; playerSkill = playerSkill - 1; usleep (2 * wait); } zombiesKilled++; } cout << endl; usleep (wait * 10); } // end game if (zombiesKilled == zombieCount) { // victory cout << "You have survived the onslaught! \n" << "Congratulations " + playerName + "!" << endl; } else { // lost cout << "You did not survive the zombie war. \n" << "Try to come back stronger next time " + playerName + "!" << endl; } usleep (wait); cout << "Zombies killed: " << zombiesKilled << endl; cout << "Your power this round: " << playerSkill << endl; cout<< "Final score: " << playerScore << endl << endl; cout << "Do you wanna play again? y/n" << endl; cin >> restart; cin.ignore(numeric_limits<streamsize>::max(), '\n'); while ( restart != 'y' || restart != 'n' ) { if ( restart == 'n' ){ again = 'n'; cout << "Thanks for playing!!"; playerAlive = false; return 0; break; } if ( restart == 'y') { playerAlive = true; zombiesKilled = 0; zombieCount = 0; skinnyZombie = false; hugeZombie = false; deathlyZombie = false; cout << "Restart y on"; break; } else { cout << "Please insert a valid character! \n"; cin >> restart; cin.ignore(numeric_limits<streamsize>::max(), '\n'); } } return 0; } } "Porém se ao invés de apenas um caractere o usuário digitar (shampu) uma palavra de 6 letras, 6 mensagens serão exibidas na tela, uma para cada letra que não for 'y' ou 'n'. Como corrigir isso para que não importando o número de caracteres usuário digitar apenas uma mensagem de alerta seja exibida na tela?" Resolveu esse problema porém o loop não está mais funcionando... o if (restart == 'n') continua funcionando, porém o if (restart == 'y') apesar de aparentemente executar os códigos, não está continuando com o loop.
  5. Para mim você não foi muito claro em como usar o cin.ignore(), tive que pesquisar e descobri que era para adicionar ele logo abaixo do "cin >> restart;": cin >> restart; cin.ignore(); Resolveu o problema, agora outra coisa que quero alterar no código é : while ( restart != 'y' || restart != 'n' ) { if ( restart == 'n' ){ again = 'n'; cout << "Thanks for playing!!"; playerAlive = false; return 0; break; } if ( restart == 'y') { playerAlive = true; zombiesKilled = 0; zombieCount = 0; skinnyZombie = false; hugeZombie = false; deathlyZombie = false; break; } else { cout << "Please insert a valid character! \n"; cin >> restart; cin.ignore(); } } Quando o usuário digita qualquer tecla que não seja 'y' ou 'n' o else é ativado exibindo a mensagem "Please insert a valid character!". Porém se ao invés de apenas um caractere o usuário digitar (shampu) uma palavra de 6 letras, 6 mensagens serão exibidas na tela, uma para cada letra que não for 'y' ou 'n'. Como corrigir isso para que não importando o número de caracteres usuário digitar apenas uma mensagem de alerta seja exibida na tela?
  6. Sou iniciante em C++, fiz esse código a caráter de estudo, o programa pede o nome do usuário (playerName) e um número inteiro (zombieCount), e enquanto playerAlive for verdadeiro o zombieCount define o número de rodadas e em cada rodada dois números aleatórios (createZombie, chance) são gerados definindo texto que será mostrado para o usuário e realizando ou não alterações nos int (playerScore, playerSkill, zombieSkill, zombiesKilled).  No fim são exibidos os int (zombiesKilled, playerScore) e a string playerName. E o programa pode reiniciar caso o usuário tecle 'y'. O porém é que quando o programa reinicia ele ignora o "Press [ENTER] to start.". Exibindo ele concatenado com o próximo texto: Press [ENTER] to start.Please enter your name:. Gostaria que quando o loop for feito o programa esperasse o usuário teclar o enter para prosseguir com a aplicação. Suspeito que quando o usuário tecla "y + ENTER]" para reiniciar o programa esse Enter vai parar no char temp, gerando esse erro. #include <iostream> #include <stdlib.h> #include <unistd.h> #include <time.h> #include <windows.h> using namespace std; int wait = 180; int createZombie() { if (rand() % 67 > 65) { return 21; } if (rand() % 67 < 10) return 11; else return rand() %10 + 1; } int chance() { return rand() % 100; } int main() { srand(time(NULL)); char again; // game stats int playerAlive = true; int playerSkill = 9; int playerScore = 1; string playerName = ""; int zombieCount = 0; int zombiesKilled = 0; again = 'y'; int revive = false; char restart; int deathlyZombie = false; int hugeZombie = false; int skinnyZombie = false; while (again == 'y') { // title cout << "Welcome to Zombie War 1.0" << endl << "Press [ENTER] to start."; char temp = 'x'; while (temp != '\n') cin.get(temp); // player name cout << "Please enter your name: "; cin >> playerName; //ask how many zombies cout << "How many zombies do you wish to fight? "; cin >> zombieCount; cout << "Get ready to fight for your life, " << playerName << "!" << endl; // main game loop while (playerAlive && zombiesKilled < zombieCount) { // create a random zombie int zombieSkill = createZombie(); int luck = chance(); // battle sequence if (zombieSkill > 20) { cout << endl << "Here comes a deathly warrior zombie!!!" << endl; deathlyZombie = true; Sleep (wait); } else { if (zombieSkill > 10 && zombieSkill < 20) { cout << endl << "Here comes a huge zombie!" << endl; hugeZombie = true; Sleep (wait); } else { cout << endl << "Here comes zombie " << zombiesKilled + 1 << endl; skinnyZombie = true; Sleep (wait); } } cout << "Fighting"; Sleep (wait / 2); cout << "." ; Sleep (wait / 2); cout << "." ; Sleep (wait / 2); cout << "." << endl; Sleep(2000); //balance if (playerSkill > 50 && luck < 50) { zombieSkill = zombieSkill + 40; playerSkill = playerSkill - 1; cout << "The battle is so hard..." << endl; Sleep (2 * wait); } if (playerSkill > 100 && luck < 20) { zombieSkill = zombieSkill + 90; cout << "You keep fighting, but the end is coming..." << endl; Sleep (2 * wait); } if (zombieCount > 100 && luck < 10) { playerSkill = playerSkill - 10; cout << "You suffer from accumulated fatigue..."; Sleep (2 * wait); } if (skinnyZombie == true) { //events if (luck < 5 && playerSkill > 12) { zombieSkill = zombieSkill * 2; zombieCount = zombieCount + 1; cout << "Two zombies appeared this time!!" << endl; Sleep (wait); } if ( luck > 60 && playerSkill > 40) { playerSkill = playerSkill + 1; cout << "Your hatred for zombies gave you strength." << endl; Sleep (wait); } if ( luck > 70 && zombieCount > 10 ) { playerSkill = playerSkill + 1; cout << "The pain you feel increases your focus!!" << endl; Sleep (wait); } if ( luck < 3 ) { playerSkill = playerSkill - 2; cout << "The zombie goes into frenzy!!" << endl; Sleep (wait); } if ( luck < 10 && zombieSkill > 8 ) { cout << "The zombie bit your ear" << endl; Sleep (wait); } if ( playerSkill > zombieSkill ) { skinnyZombie = false; } } if (hugeZombie == true) { if (luck < 30 && playerScore < 50) { cout << endl << "He eats your arm!" << endl; playerSkill = playerSkill -3; Sleep (wait); } if (luck > 85) { zombieSkill = zombieSkill - 4; cout << "You got a critical hit!!" << endl; Sleep (wait); cout << "The zombie became blind!" << endl; Sleep (wait); } if (luck > 80 && playerSkill > 20) { zombieSkill = zombieSkill - 2; cout << "You cut off the zombie's hands!!" << endl; Sleep (wait); } if (luck < 10) { zombieSkill = zombieSkill + 2; cout << "The zombie kick your face!!" << endl; Sleep (wait); } if (luck > 80 && playerSkill < 11) { zombieSkill = zombieSkill - 2; cout << "The zombie grabbet you!" << endl; Sleep (wait); cout << "You broke free with a butt in the zombie." << endl; Sleep (wait); } if (luck > 98) { playerSkill = playerSkill + 5; cout << "You found a rifle!!" << endl; Sleep (wait); } if (playerSkill > zombieSkill) { hugeZombie = false; } } if (deathlyZombie == true) { if (luck < 20 ) { zombieSkill = zombieSkill + 2; playerSkill = playerSkill -2; cout << "The zombie break your leg!!" << endl; Sleep (wait); cout << "He threw you on the ground like it was nothing" << endl; Sleep (wait); } if (luck > 20 ) { zombieSkill = zombieSkill + 1; cout << "You got away with a blow." << endl; Sleep (wait); cout << "He predicted yours movements!!" << endl; Sleep (wait); } if (playerSkill > 20 && luck > 80) { playerSkill = playerSkill +2; cout << "You still have not given up hope."; Sleep (wait); } if (playerSkill > zombieSkill) { cout << "The deathly warrior zombie will remember you" << endl; deathlyZombie = false; Sleep (wait); } } if (hugeZombie == true || deathlyZombie == true) { if (luck > 85) { playerSkill = playerSkill +1; zombieSkill = zombieSkill -1; cout << endl << "The zombie tries to grab you."; Sleep (wait); cout << endl << "You dodge and knock him down"<< endl; Sleep (wait); } if ( luck > 10 && luck < 20 ) { cout << "You lost one of yours tooth!" << endl; Sleep (wait); } } if (luck > 50) { if (luck > 85 && zombieSkill < 30) { playerSkill = playerSkill + 1; cout << "You ate some cookies! " << endl; Sleep (wait); } if (luck > 99 && playerSkill > 30) { revive = true; cout << "You found a mysterious red ring!!" << endl; Sleep (3 * wait); } if (luck > 92 && zombieCount > 10) { zombieSkill = zombieSkill - 2; playerSkill = playerSkill + 1; cout << endl << "You cut off his leg!! " << endl; Sleep (wait); cout << "You found some bandage!" << endl; Sleep (wait); } } if (luck < 5) { zombieSkill = zombieSkill + 2; cout << "The zombie has a sword!" << endl; Sleep (wait); } Sleep (wait); //zombie killed the player if (playerSkill < zombieSkill) { playerAlive = false; cout << "You have died." << endl; Sleep (5 * wait); if (revive == true) { playerAlive = true; cout << "The mysterious red ring revive you!!" << endl; Sleep (wait); cout << "The ring became useless!!" << endl; Sleep (wait); } } // player killed the zombie else { if (playerSkill - zombieSkill > 11){ cout << "You blew the zombie's head!"<< endl; playerScore = playerScore + 1; Sleep (2 * wait); } if (playerSkill - zombieSkill > 7 && playerSkill - zombieSkill < 12) { cout << "You wasted the zombie!" << endl; playerScore = playerScore + 2; Sleep (2 * wait); } if (playerSkill - zombieSkill > 5 && playerSkill - zombieSkill < { cout << "You decapitated the zombie!" << endl; playerScore = playerScore + 3; Sleep (2 * wait); } if (playerSkill - zombieSkill > 2 && playerSkill - zombieSkill < 6 ) { cout << "You killed the zombie!" << endl; playerScore = playerScore + 4; Sleep (2 * wait); } if (playerSkill > zombieSkill && zombieSkill > 10 && zombieSkill <20) { playerScore = playerScore + 5; Sleep (2 * wait); } if (playerSkill > zombieSkill && zombieSkill > 20) { playerScore = playerScore + 20; Sleep (2 * wait); } else if (playerSkill - zombieSkill < 3){ cout << "You killed the zombie, but suffered injuries." << endl; playerSkill = playerSkill - 1; Sleep (2 * wait); } zombiesKilled++; } cout << endl; Sleep (3000); } // end game if (zombiesKilled == zombieCount) { // victory cout << "You have survived the onslaught! \n" << "Congratulations " + playerName + "!" << endl; } else { // lost cout << "You did not survive the zombie war. \n" << "Try to come back stronger next time " + playerName + "!" << endl; } Sleep (wait); cout << "Zombies killed: " << zombiesKilled << endl; cout << "Your power this round: " << playerSkill << endl; cout<< "Final score: " << playerScore << endl << endl; cout << "Do you wanna play again? y/n" << endl; cin >> restart; while ( restart != 'y' || restart != 'n' ) { if ( restart == 'n' ){ again = 'n'; cout << "Thanks for playing!!"; playerAlive = false; return 0; break; } if ( restart == 'y') { playerAlive = true; zombiesKilled = 0; zombieCount = 0; skinnyZombie = false; hugeZombie = false; deathlyZombie = false; break; } else { cout << "Please insert a valid character! \n"; cin >> restart; } } } return 0; }
  7. Sou iniciante em C++, fiz esse código a caráter de estudo, o programa pede o nome do usuário (playerName) e um número inteiro (zombieCount), e enquanto playerAlive for verdadeiro o zombieCount define o número de rodadas e em cada rodada dois números aleatórios (createZombie, chance) são gerados definindo texto que será mostrado para o usuário e realizando ou não alterações nos int (playerScore, playerSkill, zombieSkill, zombiesKilled). No fim são exibidos os int (zombiesKilled, playerScore) e a string playerName. E o programa pode reiniciar caso o usuário tecle 'y'. Enfim, gostaria de dividir esse código em algumas classes se possível, porém não sei por onde começar... Segue em anexo o código #include <iostream> #include <stdlib.h> #include <unistd.h> #include <time.h> #include <windows.h> using namespace std; int wait = 170; int createZombie() { if (rand() % 67 > 65) { return 21; } if (rand() % 67 < 10) return 11; else return rand() %10 + 1; } int chance() { return rand() % 100; } int main() { srand(time(NULL)); char again; // game stats int playerAlive = true; int playerSkill = 9; int playerScore = 1; string playerName = ""; int zombieCount = 0; int zombiesKilled = 0; again = 'y'; while (again == 'y') { // title cout << "Welcome to Zombie War 1.3" << endl << "Press [ENTER] to start."; cin.get(); // player name cout << "Please enter your name:"; cin >> playerName; //ask how many zombies cout << "How many zombies do you wish to fight? "; cin >> zombieCount; cout << "Get ready to fight for your life, " << playerName << "!" << endl; // main game loop while (playerAlive && zombiesKilled < zombieCount) { // create a random zombie int zombieSkill = createZombie(); int luck = chance(); // battle sequence if (zombieSkill > 20) { cout << endl << "Here comes a warrior deathly zombie!!!" << endl; Sleep (wait); } else { if (zombieSkill > 10 && zombieSkill < 20) { cout << endl << "Here comes a huge zombie!" << endl; Sleep (wait); } else { cout << endl << "Here comes zombie " << zombiesKilled + 1 << endl; Sleep (wait); } } cout << "Fighting..." << endl; Sleep(2000); //droping itens if (luck > 80) { playerSkill = playerSkill + 1; cout << "You ate some cookies! " << endl; Sleep (wait); } if (luck > 98 && zombieSkill > 10) { playerSkill = playerSkill + 5; cout << "You found a rifle!!" << endl; Sleep (wait); } if ( luck > 60 && zombieSkill < 5) { playerSkill = playerSkill + 1; cout << "Your hatred for zombies gave you strength." << endl; Sleep (wait); } if ( luck > 70 && zombieSkill < 11 && playerScore > 3) { playerSkill = playerSkill + 1; cout << "The pain you feel increases your focus!!" << endl; Sleep (wait); } if ( luck < 3 && zombieSkill < 6) { playerSkill = playerSkill - 2; cout << "The zombie goes into frenzy!!" << endl; Sleep (wait); } if (luck < 5) { zombieSkill = zombieSkill + 2; cout << "The zombie has a sword!" << endl; Sleep (wait); } if (luck > 91) { zombieSkill = zombieSkill - 2; playerSkill = playerSkill + 1; cout << endl << "You cut off his leg!! "; Sleep (wait); cout << "You found some bandage!" << endl; } if (zombieSkill > 10 && zombieSkill < 20 && luck < 35) { cout << endl << "He eats your arm!" << endl; playerSkill = playerSkill -1; Sleep (wait); } if (zombieSkill > 10 && zombieSkill < 20 && luck > 85) { playerSkill = playerSkill +1; zombieSkill = zombieSkill -1; cout << endl << "The zombie tries to grab you."; Sleep (wait); cout << endl << "You dodge and knock him down"<< endl; Sleep (wait); } if (zombieSkill > 11 && luck > 85) { zombieSkill = zombieSkill - 4; cout << "You got a critical hit!!" << endl; Sleep (wait); cout << "The zombie became blind!" << endl; Sleep (wait); } if (zombieSkill > 9 && luck > 80 && playerSkill < 11) { zombieSkill = zombieSkill - 2; cout << "The zombie grabbet you!" << endl; Sleep (wait); cout << "You broke free with a butt in the zombie." << endl; Sleep (wait); } if (zombieSkill > 20 && luck < 20 ) { zombieSkill = zombieSkill + 2; cout << "The zombie break your leg!!" << endl; Sleep (wait); cout << "He threw you on the ground like it was nothing" << endl; Sleep (wait); } Sleep (wait); //events if ( luck < 20 ) { cout << "You lost one of yours tooth!" << endl; Sleep (wait); } if ( luck < 10 && zombieSkill < 10) { cout << "The zombie bit your ear" << endl; Sleep (wait); } Sleep (wait); //zombie killed the player if (playerSkill < zombieSkill) { playerAlive = false; cout << "You have died." << endl; } // player killed the zombie else { if (playerSkill - zombieSkill > 11){ cout << "You blew the zombie's head!"<< endl; playerScore = playerScore + 1; Sleep (2 * wait); } if (playerSkill - zombieSkill > 7 && playerSkill - zombieSkill < 12) { cout << "You wasted the zombie!" << endl; playerScore = playerScore + 2; Sleep (2 * wait); } else if (playerSkill - zombieSkill > 5 && playerSkill - zombieSkill < { cout << "You decapitated the zombie!" << endl; playerScore = playerScore + 3; Sleep (2 * wait); } else if (playerSkill - zombieSkill > 0 && playerSkill - zombieSkill < 6 ) { cout << "You killed the zombie!" << endl; playerScore = playerScore + 4; Sleep (2 * wait); } else if (playerSkill > zombieSkill && zombieSkill > 10 && zombieSkill <20) { playerScore = playerScore + 5; Sleep (2 * wait); } else if (playerSkill > zombieSkill && zombieSkill > 20) { playerScore = playerScore + 20; Sleep (2 * wait); } else { cout << "You killed the zombie, but suffered injuries." << endl; playerSkill = playerSkill - 1; Sleep (2 * wait); } zombiesKilled++; } cout << endl; Sleep (3000); } // end game if (zombiesKilled == zombieCount) { // victory cout << "You have survived the onslaught! \n" << "Congratulations " + playerName + "!" << endl; } else { // lost cout << "You did not survive the zombie war. \n" << "Try to come back stronger next time " + playerName + "!" << endl; } Sleep (wait); cout << "Zombies killed: " << zombiesKilled << endl; cout<< "Final score: " << playerScore << endl << endl; cout << "Do you wanna play again? y/n" << endl; cin >> again; if ( again != 'y'){ break; } else { playerAlive = true; zombiesKilled = 0; zombieCount =0; } } return 0; } Game.rar
  8. Sou iniciante em Java, pretendo fazer um programa capaz de efetuar a adição/subtração/multiplicação/divisão de dois números fornecidos pelo usuário conforme a operação desejada. Na parte em que o usuário digita o operador, optei por guardá-lo em uma string para tentar validar com "if". // Quest1.java exibe um número que o usuário digitar na tela import java.util.Scanner; public class Quest2 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); Scanner scanner2 = new Scanner(System.in); Scanner scanner3 = new Scanner (System.in); //Entrada System.out.println("Seja Bem vindo ao Java Calculator"); System.out.println("Digite um número"); double n1 = scanner.nextDouble(); System.out.println("Digite outro número"); double n2 = scanner2.nextDouble(); //Processamento double r1 = n1 + n2; double r2 = n1 - n2; double r3 = n1 * n2; double r4 = n1 / n2; System.out.println("Agora digite um operador correspondente a operação desejada: " + "Adição +, Subtração -, Multiplicação *, Divisão /"); String op1 = scanner3.nextLine(); //Saída if ( op1 == "+") System.out.println("A soma deles é :" + r1 ); if (op1 == "/") System.out.println("O quociente deles é :" + r4 ); if (op1 == "*") System.out.println("O produto deles é :" + r3 ); if (op1 == "-") System.out.println("A subtração deles é :" + r2 ); else { System.out.println("Digite um operador válido!"); } Porém na saída apenas else é exibida, o programa não foi capaz de reconhecer que a string recebida estava igual. Alguém alma caridosa pode me socorrer?
  9. Passei a usar o eclipse e o código rodou de boas. Fiz as alterações que precisava no main e no GradeBook.cpp, praticamente courseTutor é courseName com outro nome. Agradeço por ter sanado minhas dúvidas. Que Jesus esteja com você. Main // Figura 3.17: fig03_17.cpp // Cria e manipula um objeto GradeBook; ilustra a validação. using namespace std; #include <iostream> #include "GradeBook.hpp" // inclui a definição de classe GradeBook // a função main inicia a execução do programa int main() { // cria dois objetos GradeBook; // nome inicial de curso de gradeBook1 é muito longo GradeBook *gradeBook1 = new GradeBook( "CS101 Introduction to Programming in C++", "Matheo Ruan" ); GradeBook *gradeBook2 = new GradeBook( "CS102 C++ Data Structures","Michelangelo Lindo" ); gradeBook1->displayMessage(); gradeBook2->displayMessage(); // exibe courseName de cada GradeBook cout << "\ngradeBook1's initial course name is:" << gradeBook1->getCourseName() << "\ngradeBook2's initial course name is: " << gradeBook2->getCourseName() << "\ngradeBook1's initial tutor name is: " << gradeBook1->getCourseTutor() << "\ngradeBook2's initial tutor name is: " << gradeBook2->getCourseTutor() << endl; // modifica courseName do myGradeBook (com uma string de comprimento válido) gradeBook1->setCourseName( "CS101 C++ Programming" ); gradeBook2->setCourseTutor( "Michelangelo"); // exibe courseName de cada GradeBook cout << "\ngradeBook1's course name is: " << gradeBook1->getCourseName() << "\n This course is present by: " << gradeBook1->getCourseTutor() << "\ngradeBook2's course name is: " << gradeBook2->getCourseName() << "\n This course is present by: " << gradeBook2->getCourseTutor() << endl; delete gradeBook1; delete gradeBook2; return 0; // indica terminação bem-sucedida } // fim de main // Figura 3.16: GradeBook.cpp // Implementações das definições de função-membro de GradeBook. // A função setCourseName realiza a validação. #include <iostream> #include <string> using std::cout; using std::endl; #include "GradeBook.hpp" // inclui a definição de classe GradeBook // construtor inicializa courseName com String fornecido como argumento GradeBook::GradeBook() { } GradeBook::GradeBook ( string name, string tutor ) // fim do construtor GradeBook : courseName (name), courseTutor (tutor) { setCourseName (name); setCourseTutor (tutor); } // função que configura o nome do curso; // assegura que o nome do curso tenha no máximo 25 caracteres void GradeBook::setCourseName( string name ) { if ( name.length() <= 25 ) // se o nome tiver 25 ou menos caracteres this->courseName = name; // armazena o nome do curso no objeto if ( name.length() > 25 ) // se o nome tiver mais de 25 caracteres { // configura courseName como os primeiros 25 caracteres do parâmetro name this->courseName = name.substr( 0, 25 ); // inicia em 0, comprimento de 25 cout << "Name \'" << name << "\" exceeds maximum length (25).\n" << "Limiting courseName to first 25 characters.\n" << endl; } // fim do if } // fim da função setCourseName // função para obter o nome do curso string GradeBook::getCourseName() { return this->courseName; // retorna courseName do objeto } // fim da função getCourseName void GradeBook::setCourseTutor (string tutor) { if (tutor.length() <= 15 ) this->courseTutor = tutor; if (tutor.length() > 15 ) { this->courseTutor = tutor.substr(0 , 15); cout << endl; cout << "Name \"" << tutor << "\" exceeds maximum length 15.\n" << "Limiting courseTutor to first 15 characters. \n" << endl; } } string GradeBook::getCourseTutor() { return courseTutor; } void GradeBook::displayMessage() { // chama getCourseName para obter o courseName cout << "Welcome to the grade book for\n" << getCourseName() << "!" << endl; // exibe uma mensagem de boas-vindas para o usuário GradeBook // chama getCourseTutor para obter o courseTutor cout << "This course is presented by: "<< getCourseTutor() << "!" << endl; }; // fim da função displayMessage // Figura 3.15: GradeBook.hpp // Definição de classe GradeBook apresenta a interface public da // classe. Definições de função-membro aparecem em GradeBook.cpp. #pragma once #include <string> // o programa utiliza classe de string padrão do C++ using std::string; // definição da classe GradeBook class GradeBook { public: GradeBook( ); // construtor que inicializa um objeto GradeBook GradeBook (string name, string tutor); void setCourseName( string name ); // função que configura o nome do curso void setCourseTutor( string tutor ); string getCourseName(); // função que obtém o nome do curso string getCourseTutor(); void displayMessage(); // função que exibe uma mensagem de boas-vindas private: string courseName; // nome do curso para esse GradeBook string courseTutor; string name; string tutor; }; // fim da classe GradeBook
  10. Desculpe a demora, agradeço a ajuda, fiquei tão preocupado em adiciona novos parâmetros que esqueci de chama-los na função main, o código foi bastante explicador para mim, gostaria de pedir explicações sobre o uso de "->" ao invés do "." e sobre a declaração do construtor no reader. O código não rodou no Dev c++ apresentando o erro :C:\Users\Gatão\Documents\collect2.exe [Error] ld returned 1 exit status
  11. Aqui temos a classe GradeBook. 1- Ela possui a string courseName e as funções-membros setCourseName, getCourseName e displayMessage (que permitem, respectivamente, configurar o nome do curso, obter o nome do curso e exibir uma mensagem de boas-vindas). 2- O objetivo é criar a string courseTutor e as funções-membros setCourseTutor, getCourseTutor (que permitem configurar o nome do instrutor e obter o nome do instrutor). E isso dentro da mesma classe GradeBook. Com certeza tem muitos erros no código em relação a declaração de parâmetros e algumas outras coisas, sinceramente já não tenho mais cabeça para isso. O código da maneira que está agora apresenta basicamente os seguintes erros: ‘getCourseTutor’ was not declared in this scope */ isso para quase class ‘GradeBook’ does not have any field named ‘courseTutor’ todas as ‘std::string GradeBook::courseTutor’ conflicts with a previous declaration funções-membros \* O código estava funcionando apenas com as funções 1. Tentei adicionar as funções 2 seguindo o mesmo padrão e não deu muito certo. E aí está a criança: // Figura 3.16: GradeBook.cpp // Implementações das definições de função-membro de GradeBook. // A função setCourseName realiza a validação. #include <iostream> using std::cout; using std::endl; #include "GradeBook.hpp" // inclui a definição de classe GradeBook // construtor inicializa courseName com String fornecido como argumento GradeBook::GradeBook( string name, string tutor ) : courseName( name ), courseTutor( tutor ) { setCourseName( name ); // valida e armazena courseName setCourseTutor( tutor ); } // fim do construtor GradeBook // função que configura o nome do curso; // assegura que o nome do curso tenha no máximo 25 caracteres void GradeBook::setCourseName( string name ) { if ( name.length() <= 25 ) // se o nome tiver 25 ou menos caracteres courseName = name; // armazena o nome do curso no objeto if ( name.length() > 25 ) // se o nome tiver mais de 25 caracteres { // configura courseName como os primeiros 25 caracteres do parâmetro name courseName = name.substr( 0, 25 ); // inicia em 0, comprimento de 25 cout << "Name \'" << name << "\" exceeds maximum length (25).\n" << "Limiting courseName to first 25 characters.\n" << endl; } // fim do if } // fim da função setCourseName // função para obter o nome do curso string GradeBook::getCourseName() { return courseName; // retorna courseName do objeto } // fim da função getCourseName // função que configura o nome do instrutor; // assegura que o nome do curso tenha no máximo 25 caracteres void GradeBook::setCourseTutor( string tutor ) { if ( tutor.length() <= 25 ) // se o nome tiver 25 ou menos caracteres courseName = name; // armazena o nome do curso no objeto if ( tutor.length() > 25 ) // se o nome tiver mais de 25 caracteres { // configura courseTutor como os primeiros 25 caracteres do parâmetro name courseTutor = tutor.substr( 0, 25 ); // inicia em 0, comprimento de 25 cout << "Name \'" << tutor << "\" exceeds maximum length (25).\n" << "Limiting courseName to first 25 characters.\n" << endl; } // fim do if } // fim da função setCourseTutor // função para obter o nome do instrutor string GradeBook::getCourseTutor() { return courseTutor; // retorna courseTutor do objeto } // fim da função getCourseTutor // exibe uma mensagem de boas-vindas para o usuário GradeBook void GradeBook::displayMessage() { // chama getCourseName para obter o courseName cout << "Welcome to the grade book for\n" << getCourseName() << "!" << endl; // exibe uma mensagem de boas-vindas para o usuário GradeBook // chama getCourseTutor para obter o courseTutor cout << "This course is presented by: "<< getCourseTutor() << "!" << endl; }; // fim da função displayMessage // Figura 3.15: GradeBook.hpp // Definição de classe GradeBook apresenta a interface public da // classe. Definições de função-membro aparecem em GradeBook.cpp. #include <string> // o programa utiliza classe de string padrão do C++ using std::string; // definição da classe GradeBook class GradeBook { public: GradeBook( string name, string tutor ); // construtor que inicializa um objeto GradeBook : courseName( name ), courseTutor( tutor ) void setCourseName( courseName ); // função que configura o nome do curso string getCourseName(); // função que obtém o nome do curso void setCourseTutor ( courseTutor ); string getCouseTutor (); void displayMessage(); // função que exibe uma mensagem de boas-vindas private: string courseName; // nome do curso para esse GradeBook string courseTutor; }; // fim da classe GradeBook // Figura 3.17: main.cpp // Cria e manipula um objeto GradeBook; ilustra a validação. #include <iostream> using std::cout; using std::endl; #include "GradeBook.hpp" // inclui a definição de classe GradeBook // a função main inicia a execução do programa int main() { // cria dois objetos GradeBook; // nome inicial de curso de gradeBook1 é muito longo GradeBook gradeBook1( "CS101 Introduction to Programming in C++" ); GradeBook gradeBook2( "CS102 C++ Data Structures" ); // exibe courseName de cada GradeBook cout << "gradeBook1's initial course name is:" << gradeBook1.getCourseName() << "\ngradeBook2’s initial course name is: " << gradeBook2.getCourseName() << endl; // modifica courseName do myGradeBook (com uma string de comprimento válido) gradeBook1.setCourseName( "CS101 C++ Programming" ); // exibe courseName de cada GradeBook cout << "\ngradeBook1's course name is: " << gradeBook1.getCourseName() << "\ngradeBook2's course name is: " << gradeBook2.getCourseName() << endl; return 0; // indica terminação bem-sucedida } // fim de main
  12. O problema todo era não saber usar o Dev C++, antes eu usava o Gdb online, mas justamente por não saber como implementar arquivos no site (Hoje eu sei) que eu baixei o Dev C++. Segui o seu "tutorial" de como criar projetos no Dev C++ e tudo funcionou nos conformes. No fim o exemplo do livro "C++ Como Programar - 5ª edição -" da Deitel não está incorreto, a estratégia de ensino utilizada é mostrar um código bruto e posteriormente o otimizar.
  13. Se linkar o GradeBook.cpp (em qualquer um dos casos) o arquivo de cabeçalho perde o sentido, isso tudo é justamente para que o cliente possa utilizar das funções-membros de GradeBook sem saber como são implementadas. O Dev está apenas compilando, clico em Executar ou Compilar e Executar, mas nada acontece. Quando tentei compilar incluindo suas modificações o GradeBook.cpp provavelmente não carregou o GradeBook.hpp e tive que adicionar #include <string> using namespace std; a ele. Agora aparece esta mensagem de erro quando tento compilar/executar o arquivo.
  14. Usando o Gbd online, o código inicial (o primeiro lá de cima com #pragma once) roda perfeitamente, no Dev C++ os arquivos não estavam reunidos em um projeto, quando eu os reuni não houve problemas com implementação, a compilação aponta 0 erros. Porém não consigo executar o projeto no Dev C++, vou no arquivo que possui a função main (fig03_17.cpp) clico em executar (F10) e nada acontece. Esse agora é um simples problema de uso da plataforma, pode responder como devo proceder?
  15. O problema realmente está no compilador, eu reexecutei o código inicial e ele funcionou também, porém ao compilar "teclando f9" ele começa a demonstrar os mesmos erros de antes e se recusa a rodar o código novamente. Estou usando o Dev C++, tem alguma maneira de o fazer ignora erros, ou algum outro compilador que ignore?
  16. Funcionou, pode me explicar porque não rodou antes e qual é a função do #pragma once?
  17. Ainda estou na batalha para rodar essa classe. adicionei ao fig03_17 o #include "GradeBook.cpp", creio que resolveu os problemas de implementação de arquivos com o dev c++. Porém a classe continua dando erro [Error: redefition of "class of GradeBook"] Mesmo salvando o Gradebook.h como header file mas continua sem rodar. Percebi que ele estava salvo como arquivo C, então salvei ele com a extensão .hpp Porém o mesmo erro persiste. _________________________________________ // Figura 3.17: fig03_17.cpp // Cria e manipula um objeto GradeBook; ilustra a validação. #include <iostream> using std::cout; using std::endl; #include "GradeBook.cpp" #include "GradeBook.hpp" // inclui a definição de classe GradeBook // a função main inicia a execução do programa int main() { // cria dois objetos GradeBook; // nome inicial de curso de gradeBook1 é muito longo GradeBook gradeBook1( "CS101 Introduction to Programming in C++" ); GradeBook gradeBook2( "CS102 C++ Data Structures" ); // exibe courseName de cada GradeBook cout << "gradeBook1's initial course name is: " << gradeBook1.getCourseName() << "\ngradeBook2's initial course name is: " << gradeBook2.getCourseName() << endl; // modifica courseName do myGradeBook (com uma string de comprimento válido) gradeBook1.setCourseName( "CS101 C++ Programming" ); // exibe courseName de cada GradeBook cout << "\ngradeBook1’s course name is: " << gradeBook1.getCourseName() << "\ngradeBook2's course name is: " << gradeBook2.getCourseName() << endl; return 0; // indica terminação bem-sucedida } // fim de main ___________________________________________________________ // Figura 3.16: GradeBook.cpp // Implementações das definições de função-membro de GradeBook. // A função setCourseName realiza a validação. #include <iostream> using std::cout; using std::endl; #include "GradeBook.hpp" // inclui a definição de classe GradeBook // construtor inicializa courseName com String fornecido como argumento GradeBook::GradeBook( string name ) { setCourseName( name ); // valida e armazena courseName } // fim do construtor GradeBook // função que configura o nome do curso; // assegura que o nome do curso tenha no máximo 25 caracteres void GradeBook::setCourseName( string name ) { if ( name.length() <= 25 ) // se o nome tiver 25 ou menos caracteres courseName = name; // armazena o nome do curso no objeto if ( name.length() > 25 ) // se o nome tiver mais de 25 caracteres { // configura courseName como os primeiros 25 caracteres do parâmetro name courseName = name.substr( 0, 25 ); // inicia em 0, comprimento de 25 cout << "Name \"" << name << "\" exceeds maximum length (25).\n" << "Limiting courseName to first 25 characters.\n" << endl; } // fim do if } // fim da função setCourseName // função para obter o nome do curso string GradeBook::getCourseName() { return courseName; // retorna courseName do objeto } // fim da função getCourseName // exibe uma mensagem de boas-vindas para o usuário GradeBook void GradeBook::displayMessage() { // chama getCourseName para obter o courseName cout << "Welcome to the grade book for\n" << getCourseName() << "!" << endl; } // fim da função displayMessage _________________________________________________ // Figura 3.15: GradeBook.hpp // Definição de classe GradeBook apresenta a interface public da // classe. Definições de função-membro aparecem em GradeBook.cpp. #include <string> // o programa utiliza classe de string padrão do C++ using std::string; // definição da classe GradeBook class GradeBook { public: GradeBook( string ); // construtor que inicializa um objeto GradeBook void setCourseName( string ); // função que configura o nome do curso string getCourseName(); // função que obtém o nome do curso void displayMessage(); // função que exibe uma mensagem de boas-vindas private: string courseName; // nome do curso para esse GradeBook }; // fim da classe GradeBook _____________________________________
  18. Obrigado pela ajuda, eu descobri outro erro que ainda está me impedindo de executar a classe. O arquivo GradeBook.h está salvo como cpp, acredito que isso não esteja permitindo utilizar ele como header. Como posso salvá-lo como header?
  19. Estou estudando programação na linguagem C++ seguindo o livro "C++ Como programar 5° edição" da Deitel, até aí tudo bem. Na introdução de separando a interface da implementação, copiei de acordo com o exemplo que o livro fornece, porém o compilador não está rodando o programa, ele acusa os seguintes erros: Em GradeBook > 23 14 C:\Users\User\Downloads\Códigos Fontes\GradeBook.cpp [Error] 'std::string' has no member named 'lenght'; Em GradeBook.h > C:\Users\User\Downloads\Códigos Fontes\collect2.exe [Error] ld returned 1 exit status; Em main > C:\Users\User\AppData\Local\Temp\ccTQ0CPX.o main.cpp:(.text+0x48): undefined reference to `GradeBook::GradeBook(std::string)' esse utimo erro acontece em todas as funções-membro do objeto. Estou usando o Dev-C++ 5.11 _________________________ // Figura 3.15: GradeBook.h // Definição da classe GradeBook apresenta a interface public da // classe. Definições de função-membro aparecem em GradeBook.cpp. #include <string> // a classe GradeBook utiliza a classe de string padrão C++ using std::string; // definição da classe GradeBook class GradeBook { public: GradeBook ( string ); // construtor que inicializa courseName void setCourseName ( string ); // função que configura o nome do curso string getCourseName(); // função que obtém o nome do curso void displayMessage(); // função que exibe uma mensagem de boas-vindas private: string courseName; // nome do curso para esse GradeBook }; // fim da classe GradeBook _________________________________ // Figura 3.16: GradeBook.cpp // Implementações das definições da função-membro de GradeBook. // A função setCourseName realiza a validação. #include <iostream> using std::cout; using std::endl; #include "GradeBook.h.cpp"// inclui a definição da classe GradeBook // o construtor inicializa courseName com a string fornecida como argumento GradeBook::GradeBook ( string name ) { setCourseName ( name ); // chama a função set para inicializar courseName } // fim do construtor Gradebook // função para configurar o nome do curso // assegura que o nome do curso tenha no máximo 25 caracteres void GradeBook::setCourseName ( string name ) { if ( name.length() <= 25 ) // se o nome tiver 25 ou menos caracteres courseName = name; // armazena o nome do curso no objeto if ( name.lenght() > 25 ) // se o nome tiver mais que 25 caracteres { //configura courseName como os primeiros 25 caracteres do parâmetro name courseName = name.substr( 0, 25 ); // inicia em 0, comprimento de 25 cout << "Name\"" << name <<"\" exceeds maximum length (25).\n" << "Limiting courseName to first 25 characters.\n" << endl; } // fim do if } // fim da função setCourseName // função para obter o nome do curso string GradeBook::getCourseName() { return courseName; // retorna courseName do objeto } // fim da função getCourseName // exibe uma mensagem de boas-vindas para o usuário Gradebook void GradeBook::displayMessage() { // chama getCourseName para obter o courseName cout << "Welcome to the grade book for\n" << getCourseName() << "!" << endl; } // fim da função displayMessage ________________________________________________ // Figura 3.17: fig03_17.cpp // Cria e manipula um objeto GradeBook; ilustra a validação #include <iostream> using std::cout; using std::endl; #include "GradeBook.h.cpp" // inclui a definição GradeBook // a função main inicia a execução do programa int main () { // cria dois objetos GradeBook; // nome inicial de curso gradeBook1 é muito longo GradeBook gradeBook1("CS101 Introduction to Programming in C++"); GradeBook gradeBook2("CS102 Data structures in C++"); // exibe valor inicial de courseName para cada gradeBook cout << "gradeBook1 created for course: " << gradeBook1.getCourseName() << "\ngradeBook2 created for course: " << gradeBook2.getCourseName() << endl; // modifica courseName do myGradeBook (com uma string de comprimento válido) gradeBook1.setCourseName( "CS101 C++ Programming" ); //exibe courseName de cada GradeBook cout << "\ngradeBook1's course name is: " << gradeBook1.getCourseName() << "\ngradeBook2's course name is: " << gradeBook2.getCourseName() << endl; return 0; // indica terminação bem-sucedida } // fim de main
  20. É o seguinte: Comprei um computador novo: I5; Gtx 1050; 8 ram; 1tb; "Não possuo indicativo da fonte dele" Mas ele veio sem um estabilizador (não era incluída na compra), mas veio com uma "Fonte adaptador"que é um algo que desconheço a funcionalidade, se assemelha com um carregador de celular e possui essas especificações: "LG AC ADAPTOR Model: LCAP43-B I/P: 100-240 V ~ 50-60 Hz 0.8 A O/P: 19V --- 0.84 A Deficiência level VI". Agora as perguntas: O que é e para quê serve a fonte adaptor? Precisarei comprar um estabilizador? Se sim, possuo um antigo (baratinho) que liga um PC mais fraco "i3, 4 ram, 1tb" poderia usá-lo?

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!