Witamy na forum PC Format Zapraszamy do REJESTRACJI


Użytkownicy przeglądający ten wątek: 1 gości

c++ problem z programem

#1
c++ problem z programem
Wynikiem tego programu, a dokładniej funkcji sortującej nie jest mój zamieżony cel, a dokładniej jeśli element tablicy równy 0 to przesuń klocek([]) w dół. Program przesuwa mi klocek w skosie i nie usówa starego. Poprwcie, porszę.
Kod:
#include <iostream>
using namespace std;


int tablica[24][12] = {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
                      1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
                      1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
                      1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
                      1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
                      1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
                      1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
                      1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
                      1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
                      1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
                      1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
                      1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1};



void druk(int tablica[24][12]){
                               for(int i=0; i<24;i++)
                               {
                                
                                 for(int b=0; b<12;b++)
                                      {
                                      switch (tablica[i][b])
                                              {
                                              case 0: cout << "[]" ;
                                              break;
                                              case 2: cout << "[]" ;
                                              break;
                                              case 1: cout << "  " ;
                                              break;
                                              }
                                      }
                                      cout <<"\n";    
                                 }                                      
                                
                               }



void spadanie(int tablica[24][12]){          
            for(int i=24; i>0;i--)
            {
                    for(int b=12; b>0;b--)
                            {
                            if ((tablica[i][b]==0)&&(tablica[i+1][b]==1))
                                           {
                                            tablica[b][i]=1;
                                            tablica[b+1][i]=0;                                        
                                           }
                            }
            }
            
}

int main(){
while(1)
{    

druk(tablica);
spadanie(tablica);
system("cls")  ;
    
}
    
}
 System operacyjny: windows_xp_2003 Przeglądarka: ie
#2
RE: c++ problem z programem
~Anonim napisał(a):
Kod:
void spadanie(int tablica[24][12])
{          
            for(int i=24; i>0;i--)
            {
                    for(int b=12; b>0;b--)
                            {
                            if ((tablica[i][b]==0)&&(tablica[i+1][b]==1))
                                           {
                                            tablica[b][i]=1;
                                            tablica[b+1][i]=0;                                        
                                           }
                            }
            }
            
}

Kod:
if ((tablica[i][b]==0)&&(tablica[i+1][b]==1))
                                           {
                                            tablica[i][b]=1;
                                            tablica[i+1][b]=0;                                        
                                           }
Niby male przeoczenie, a taki problem... ;]

Mam nadzieje, ze pomoglem ;]
 System operacyjny: windows_xp_2003 Przeglądarka: opera
#3
RE: c++ problem z programem
dzięki, a teraz kolejny problem, dlaczego jeżli wstawie zero do pirewszegorzędu to go nie sortuje?
 System operacyjny: windows_xp_2003 Przeglądarka: ie
#4
RE: c++ problem z programem
for(int i=24; i>0;i--)
for(int b=12; b>0;b--)

powinno byc

i>=0;
b>=0;

I radze ci uzywac operatora predekrementacji, bo poniewaz jest szybszy ;] czyli musisz tamte linijki zamienic na:

for(int i=24; i>=0;--i)
for(int b=12; b>=0;--b)

STOP! Jeszcze pragne zauwazyc, ze tablica jest indeksowana od 0! Juz to slyszales pewnie 1000 razy ;]

for(int i=23; i>=0;--i)
for(int b=11; b>=0;--b)

Chyba powinno byc tak, jak pisze... Ale nie sprawdzalem, wiec moge sie mylic
 System operacyjny: windows_xp_2003 Przeglądarka: opera
Programy: Polecane / Nowe / Inne




Podobne wątki (c++ problem z programem)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  problem z programem .bat wiktrom12 4 12487 30.08.2018, 08:25
Ostatni post: wiktrom12
Cry Problem z programem w c++ MrNico 3 8233 13.05.2016, 19:48
Ostatni post: Szachista
  Problem z programem do kompresji plików w C# kamiss 1 6897 18.01.2015, 11:19
Ostatni post: Szachista

Skocz do:


Wybrane wątki (c++ problem z programem)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Nauka do Olimpiady Informatycznej? piotr0905 1 9013 08.06.2019 16:50
Ostatni post: wlisik
Ściana Prosta gra w Builder C++ Kiranek1 1 9000 31.05.2019 15:20
Ostatni post: Szachista
  Menu (Nie widoczne długie opisy) wanhelsing 5 11047 28.04.2019 19:31
Ostatni post: koneton
  Skrypt usuwający pliki sylwiaa1 2 4453 28.04.2019 15:20
Ostatni post: sylwiaa1
  Środowisko do assemblera Physicist 4 10281 21.04.2019 14:04
Ostatni post: Ajgor
  VBA excel dmjs 6 10530 17.04.2019 10:20
Ostatni post: ptrick
  C++ - sens pogłębiania nauki gbr 5 10246 25.03.2019 12:53
Ostatni post: koneton
  Klasa wewnętrzna w C++ Physicist 4 9892 23.03.2019 18:28
Ostatni post: Physicist
  Ruby on Rails - tutoriale luciussulla 0 8991 23.03.2019 16:49
Ostatni post: luciussulla
Big Grin Czy dostane sie technikum informatycznego klaudiusz20046 6 12626 21.03.2019 01:28
Ostatni post: UnableToSee
  [C#] Program do moderacji czatów gier wiktrom12 0 9496 07.03.2019 15:33
Ostatni post: wiktrom12
  Mój pierwszy projekt - Pomoc rafal12999 1 9918 07.02.2019 22:01
Ostatni post: Szachista
  pomoc projekt scilab piesel18 2 11378 04.02.2019 09:03
Ostatni post: piesel18
  Szkoła Informatyczna Zikinan 1 10220 02.02.2019 17:59
Ostatni post: wojownikhaha
  [Java] Strona z zadaniami do rozwiązania i odpowiedziami rafal12999 2 11018 27.01.2019 13:44
Ostatni post: rafal12999