Inquiridor
problema com logica, variavel++ esta diminuindo

Pergunta
-
fala ae pessoal
to com um problma que so esta acontecendo com o Visual Studio, pelo Dev Cpp funciona direitinho
é uma batalha naval, cada campo "atiravel" tem um valo de 0 a 224, sendo q dentro de cada linha fica invertido
ex:
no console exibe assim para o usuario final:
~ ~ ~ ~ ~ ~
~ ~ ~ ~ ~ ~
~ ~ ~ ~ ~ ~
na verdade cada um tem uma cordenada, entao o programa enxerga assim
00 01 02 03 04 05
06 07 08 09 10 11
12 13 14 15 16
só que no visual studio esta enxergando ao contrario :
05 04 03 02 01 00
11 10 09 08 07 06
16 15 14 13 12 ...
o pedaço do codigo é esse com a visao do usuario (tudo ~ ~ ~ ~)
for(int cont=0 ; cont <225; cont++) { if (cont <= 24 ) {cout << "0 " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << "\n\n";} if (cont > 24 <= 49) {cout << "1 " << O[cont++] << " "<< O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << "\n\n";} if (cont > 49 <= 74) {cout << "2 " << O[cont++] << " "<< O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << "\n\n";} if (cont > 74 <= 99) {cout << "3 " << O[cont++] << " "<< O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << "\n\n";} if (cont > 99 <=124) {cout << "4 " << O[cont++] << " "<< O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << "\n\n";} if (cont > 124<=149) {cout << "5 " << O[cont++] << " "<< O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << "\n\n";} if (cont > 149<=174) {cout << "6 " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << "\n\n";} if (cont > 174<=199) {cout << "7 " << O[cont++] << " "<< O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << "\n\n";} if (cont > 199<=224) {cout << "8 " << O[cont++] << " "<< O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << " " << O[cont++] << "\n\n";} }
deixando só o cont++ que eu vi o problema
se quizerem examinar o codigo todo esta ai em baixo, só que esse esta na visualização de modo que enxergue cada cordenada, e nao só "~ ~ ~ ~"aqui esta o codigo todo
#include <iostream> #include <cstdlib> #include <ctime> using namespace std; int main() { int op; do { //inicia menu cout <<" # # # # # # # # # # # # Batalha Naval # # # # # # # # # # \n"; cout <<"\n"; cout <<" # # \n"; cout <<"\n"; cout <<" # 1 - Iniciar Partida # \n"; cout <<"\n"; cout <<" # 2 - Modo Ajuda # \n"; cout <<"\n"; cout <<" # 3 - Sobre # \n"; cout <<"\n"; cout <<" # 4 - Sair # \n"; cout <<"\n"; cout <<" # # \n"; cout <<"\n"; cout <<" # # # # # # # # # # # # # # # # # # # # # # # # # # #\n"; cout << "Opcao: "; cin >> op; int temp = 0; switch(op) { case 1: case 2: //simulacao de carregamento system("cls"); cout << "Carregando controle e interface\nCaso sinta dificuldade inicie pelo 'Modo Ajuda'\n\n"; for(temp; temp<600000000; temp++) { if (temp == 100000 || temp==1000000 || temp==10000000 ||temp==10200000 || temp==10500000 || temp==50100000 ||temp==60100000 ||temp==70100000 ||temp==80100000 ||temp==90100000 ||temp==100100000 ||temp==130100000 ||temp==150100000||temp==250100000||temp==250100000 ||temp==250100000||temp==250100000||temp==250100000 ||temp==250100000||temp==250100000||temp==250100000 ||temp==250100000||temp==250100000||temp==250100000 ||temp==270100000 || temp==70000000) { cout << "|||||"; } //fexa if } break; case 3: cout << "Jogo desenvolvido por Yuri Araujo"; system("pause>null"); break; case 4: break; default: cout << "opcao invalida, tente novamente"; system("pause>null"); } // fexa switch system("cls"); } while (op == 3); /* fim do menu e inicio de jogo */ if (op == 1 || op == 2) { int game = 1; // jogo em funcionamento int cordx; int cordy; // cordenadas char O[225]; // mar int alvo[225]; //objeto int valores[6] = {0,0,0,0,0,0}; // verifica se ja existe objeto neste local int igual = 1; /*cria os objetos alvos*/ srand(time(NULL)); do { for (int cont = 0; cont <= 5; cont++) { int valor = rand()%220; valores[cont] = valor; alvo[valor] = 1; alvo[valor + 1] = 1; alvo[valor + 2] = 1; if(op == 2) {if(valor >= 0 && valor <= 24 ) { cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor << " Linha 0 \n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 1 << "\n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 2 << "\n"; } if(valor > 24 && valor <= 49 ) { cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor << " Linha 1 \n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 1 << "\n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 2 << "\n"; } if(valor > 49 && valor <=74 ) { cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor << " Linha 2 \n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 1 << "\n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 2 << "\n"; } if(valor > 74 && valor <=99 ) { cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor << " Linha 3 \n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 1 << "\n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 2 << "\n"; } if(valor > 99 && valor <= 124 ) { cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor << " Linha 4 \n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 1 << "\n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 2 << "\n"; } if(valor > 124 && valor <= 149 ) { cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor << " Linha 5 \n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 1 << "\n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 2 << "\n"; } if(valor > 149 && valor <= 174 ) { cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor << " Linha 6 \n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 1 << "\n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 2 << "\n"; } if(valor > 174 && valor <= 199 ) { cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor << " Linha 7 \n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 1 << "\n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 2 << "\n"; } if(valor > 199 && valor <= 224 ) { cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor << " Linha 8 \n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 1 << "\n"; cout << "versao ajuda: " << "Objeto : "<< cont << " Cordenada: " << valor + 2 << "\n"; } } } //verifica se existe algum objeto no mesmo local, caso existe recoloca todos os objetos no local novamente if (valores[5] == valores[0] || valores[5] == valores[1] || valores[5] == valores[2] || valores[5] == valores[3] || valores[5] == valores[4] ||valores[4] == valores[0] || valores[4] == valores[1] || valores[4] == valores[2] || valores[4] == valores[3] ||valores[3] == valores[0] || valores[3] == valores[1] || valores[3] == valores[2] || valores[3] == valores[4] ||valores[2] == valores[0] || valores[2] == valores[1] || valores[2] == valores[3] || valores[2] == valores[4] ||valores[1] == valores[0] || valores[1] == valores[2] || valores[1] == valores[3] || valores[1] == valores[4]) { igual = 1; } else { igual = 0; } } while (igual != 0); for (int cont = 0; cont <=225; cont++) { //gera o texto de cada objeto, nesse caso O[cont] = '~'; // todos sao agua } while(game != 0) { //interface grafica do jogo (Mar) cout << " 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24\n\n"; for(int cont = 1 ; cont < 225; cont++) { if (cont <= 24 ) {cout << "0 " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << "\n\n";} if (cont > 24 <= 49) {cout << "1 " << cont++ << " "<< cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << "\n\n";} if (cont > 49 <= 74) {cout << "2 " << cont++ << " "<< cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << "\n\n";} if (cont > 74 <= 99) {cout << "3 " << cont++ << " "<< cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << "\n\n";} if (cont > 99 <=124) {cout << "4 " << cont++ << " "<< cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << "\n\n";} if (cont > 124<=149) {cout << "5 " << cont++ << " "<< cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << "\n\n";} if (cont > 149<=174) {cout << "6 " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << "\n\n";} if (cont > 174<=199) {cout << "7 " << cont++ << " "<< cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << "\n\n";} if (cont > 199<=224) {cout << "8 " << cont++ << " "<< cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << " " << cont++ << "\n\n";} } //fexa for cout << "Coluna: "; cin >> cordx; cout << "Linha: "; cin >> cordy; int verif; //verifica se os numeros estao dentro da grade if (cordx <= 24 && cordy <= 8) { verif = cordx + (24*cordy) + cordy; } else { while (cordx >24 || cordy >8) { cout << "Numero fora da grade, tenta novamente\n"; cout << "Coluna: "; cin >> cordx; cout << "Linha: "; cin >> cordy; } verif = cordx + (24*cordy) + cordy; } // fim da verificacao if ((alvo[verif] == 1)) { // verifica se acertou O[verif] = 'X'; ; } else { O[verif] = '0'; } // verifica se foi detonado int cvezes = 0; for (int c = 0; c <= 225; c++) { if (O[c] == 'X') { cvezes++; } else { cvezes = 0; } if(alvo[c+1] == 0){ if (cvezes == 3) { O[c] = 'T'; O[c - 1] = 'E'; O[c - 2] = 'D'; } else { if (cvezes == 4){ O[c] = 'O'; O[c - 1] = 'T'; O[c - 2] = 'E'; O[c - 3] = 'D'; } else if (cvezes == 5){ O[c] = 'N'; O[c - 1] = 'O'; O[c - 2] = 'T'; O[c - 3] = 'E'; O[c - 4] = 'D'; } else if (cvezes == 6){ O[c] = 'D'; O[c - 1] = 'N'; O[c - 2] = 'O'; O[c - 3] = 'T'; O[c - 4] = 'E'; O[c - 5] = 'D'; } } } } system("cls"); } } system("pause>null"); }
- Editado Yuri Araujo quarta-feira, 21 de novembro de 2012 18:52