Zmienne w funkcjach

0
void I_cwiartka(char plansza[][11])
{
int n,i,j;
n=rand()%6+1;
rysuj_kostke();
system("pause");

int i_4_4=4;
int j_0_4=4;
int licznik=n;

bool I_cwiartka=true;
bool koniec=false;
bool koniec_4_4=false;
bool koniec_0_4=false;

     for(licznik;licznik>0;licznik--)
      {
       if(koniec==false)
       {
              if(i<=4&&j<=6)
              {
               plansza[i][j]='_';
               plansza[i][j+1]='1';
               j++;
               wyswietl_plansze(plansza);
               system("pause");
               if(i==4&&j==4) koniec=true;
               }
       }
       if(koniec_4_4==false)
       {
            if(i==4&&j==4)
              {    
                    plansza[i_4_4][4]='_';
                    plansza[i_4_4-1][4]='1';
                    i_4_4--;
                    wyswietl_plansze(plansza);
                    system("pause");
                    if(i_4_4==0) koniec_4_4=true;
              }
       }
       if(koniec_0_4==false)
       {
            if(i_4_4==0&&j==4)
              {
                   plansza[0][j_0_4]='_';
                   plansza[0][j_0_4+1]='1';
                   j_0_4++;
                   wyswietl_plansze(plansza);
                   system("pause");
                   if(i_4_4==0&&j_0_4==6) koniec_0_4=true;
              }
       if(koniec_0_4==true) 
       {
                            II_cwiartka(plansza);
                            I_cwiartka=false; 
       }
      }
      }
}

void szostka_1(char plansza[][11])
{
int opcja;
int i;
int j;
          cout<<"Wyjsc ze schowka czy poruszyc sie pionkiem?"<<endl;
          cout<<"1) wyjsc ze schowka."<<endl;
          cout<<"2) poruszyc sie pionkiem."<<endl;
          cin>>opcja;
          if(opcja==1)
          {
          cout<<"Podaj nr wiersza: "<<endl;
          cin>>i;
          cout<<"Podaj nr kolumny: "<<endl;
          cin>>j;
          plansza[i][j]='_';
          plansza[4][0]='1';
          }
          else 
          {
          cout<<"Podaj nr wiersza: "<<endl;
          cin>>i;
          cout<<"Podaj nr kolumny: "<<endl;
          cin>>j;
          plansza[i][j]='_';
          I_cwiartka(plansza);
          }
}

Witam mam pytanie, czy jest taka mozliwosc aby zmienne i oraz j z funkcji szostka_1 (te z "podaj nr wiersza i kolumny") zostaly uzyte w funkcji I_cwiartka? Tak abym nie musial ponownie wpisywac ich kiedy wywolam te funkcje.

0

Po ludzku - przekazać jako parametr.
Po głupiemu, nie zalecane, nie raz zrobisz sobie tym kuku, ale za to prosto - zrobić je zmiennymi globalnymi.

0

No wlasnie problem w tym, ze nie mozemy uzywac zmiennych globalnych w projekcie.

0

Moglbys napisac jak zrobic to za pomoca tego parametru? Jestem troche zielony w programowaniu i nie do konca wiem jakby to mialo wygladac w kodzie.

0

Tak jak mam w kodzie nie dziala, nie zapamietuje i,j z poprzedniej funkcji i wstawia losowe wartosci.

0
void I_cwiartka(char plansza[][11], int i, int j)
{
int n;
n=rand()%6+1;
rysuj_kostke();
system("pause");
 
int i_4_4=4;
int j_0_4=4;
int licznik=n;
 
bool I_cwiartka=true;
bool koniec=false;
bool koniec_4_4=false;
bool koniec_0_4=false;
 
     for(licznik;licznik>0;licznik--)
      {
       if(koniec==false)
       {
              if(i<=4&&j<=6)
              {
               plansza[i][j]='_';
               plansza[i][j+1]='1';
               j++;
               wyswietl_plansze(plansza);
               system("pause");
               if(i==4&&j==4) koniec=true;
               }
       }
       if(koniec_4_4==false)
       {
            if(i==4&&j==4)
              {    
                    plansza[i_4_4][4]='_';
                    plansza[i_4_4-1][4]='1';
                    i_4_4--;
                    wyswietl_plansze(plansza);
                    system("pause");
                    if(i_4_4==0) koniec_4_4=true;
              }
       }
       if(koniec_0_4==false)
       {
            if(i_4_4==0&&j==4)
              {
                   plansza[0][j_0_4]='_';
                   plansza[0][j_0_4+1]='1';
                   j_0_4++;
                   wyswietl_plansze(plansza);
                   system("pause");
                   if(i_4_4==0&&j_0_4==6) koniec_0_4=true;
              }
       if(koniec_0_4==true) 
       {
                            II_cwiartka(plansza);
                            I_cwiartka=false; 
       }
      }
      }
}

void szostka_1(char plansza[][11])
{
int opcja;
int i;
int j;
          cout<<"Wyjsc ze schowka czy poruszyc sie pionkiem?"<<endl;
          cout<<"1) wyjsc ze schowka."<<endl;
          cout<<"2) poruszyc sie pionkiem."<<endl;
          cin>>opcja;
          if(opcja==1)
          {
          cout<<"Podaj nr wiersza: "<<endl;
          cin>>i;
          cout<<"Podaj nr kolumny: "<<endl;
          cin>>j;
          plansza[i][j]='_';
          plansza[4][0]='1';
          }
          else 
          {
          cout<<"Podaj nr wiersza: "<<endl;
          cin>>i;
          cout<<"Podaj nr kolumny: "<<endl;
          cin>>j;
          plansza[i][j]='_';
          I_cwiartka(plansza, i, j);
          }
}		

1 użytkowników online, w tym zalogowanych: 0, gości: 1