Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Ale was męcze :D Zagnieżdżanie


Rekomendowane odpowiedzi

Opublikowano

Kilku ludzi mówiło mi o zagnieżdżaniu ... bym spróbował poćwiczyć ... no i juz mialem pomysl kiedy okazalo się ,że to skrywa całkiem sporo ciekawostek :D

Mam taki kod:

Krótki bo krótki ale liczy się zasada...

Chcę aby wypisało mi wszystkie kombinacje w przedziale od 1 do 3 dwóch liczb całkowitych.

Jednak wyniki to:

11

11

12

13

24

21

22

23

34

31

32

33

proszę o pomoc o odpowiedź z kąd to 24,34 ???

Odrazu mówię ,że ja programy piszę na spontana...

#include <iostream>
using namespace std;
int main()
{
int a,b =1;
for(a=1; a<=3; ++a)
{   
cout << a;
cout << b<<endl;
     
     for(b=1;b<=3;b++)
     {
     cout <<a;
     cout <<b<<endl;
     }     
}
system ("pause");
}

-Jestem habilitowanym profesorem,magistrem, który nie umie zawiązać sobie butów.

-A ja jestem technikiem który daje ci prace.

Opublikowano

nie output jest

11

11

12

13

24

21

22

23

34

31

32

33

i praktycznie wszystko wiem skad sie bierze lecz nie mam pojecia z kad

te czwórki



nadal te szatanskie czworki



edit ...dobra wkurzylem sie i na koncu pierwszej petli dalem b =1 :D

teraz wyglada to tak ,ale czekam na jakieś bardziej wyrafinowane pomysly :D.

 

 
#include <iostream>
using namespace std;
int main()
{
int a,b =1;
for(a=1;a<=3;a++)
{   
cout << a;
cout << b <<endl;
     for(b=2;b<=3;b++)
     {
     cout <<a;
     cout <<b<<endl;
     }
     b=1;     
}
system ("pause");
}

-Jestem habilitowanym profesorem,magistrem, który nie umie zawiązać sobie butów.

-A ja jestem technikiem który daje ci prace.

Opublikowano

ta 4 się bierze stąd, co opisałem pod @edit

czyli for(b=2;b<=3;b++) b nie ustawia się pod 2, tylko nadal jest 3, i jest b++ czyli będzie 4

dlatego możesz zrobić tak for(int b=2;b<=3;b++) i b się na początku ustawi na 2

btw skąd* nie z kąd ;p

Opublikowano

no tak ale wtedy b deklarujesz w pętli a go używasz wczesniej wiec bedzie problem ... Wyczuwam zagwostke :D

-Jestem habilitowanym profesorem,magistrem, który nie umie zawiązać sobie butów.

-A ja jestem technikiem który daje ci prace.

Opublikowano
#include <iostream>
using namespace std;
int main()
{
int a,b =1;
for(a=1;a<=3;a++)
{   
    cout << "petla1" << endl;
cout << a;
cout << b <<endl;
     for(b=2;b<=3;b++)
     {
        cout << "petla2" << endl;
     cout <<a;
     cout <<b<<endl;
     }
     cout <<b<<endl;
}
system ("pause");
}
 

output taki jest

http://screenshooter.net/7673206/bpvvriy

więc wygląda to tak, że przy użyciu zmiennej nie specjalnie stworzonej do pętli, pomimo warunku i tak wykonuje akcje czyli b++

przy zmiennej pętli tego nie robi, a może robi, tylko zmienna zostaje w pętli, więc niemamy jak tego sprawdzić, ponieważ pętla się nie wykonuje, a poza pętlą odczytamy tą starą zmienną

więc jak początek byś zrobił taki

 

 

int a,b;
for(a=1;a<=3;a++)
{   
    b=1;

to by było git, co do teori to mogę się mylić, bo się na niej nie znam, a opisuje to co widzę

 

@down

nie, poczekaj na odpowiedź kto się zna ;p

Opublikowano

true ... czyli w efekcie zrobiles dokladnie to co ja tylko dales w pierwszej petli przed instrukcjami a ja dalem po drugiej :D...a ja bym chciał jakieś inne pomysły :D



ale zreszta nie ma co spamic dzieki for all w sumie to temat off

-Jestem habilitowanym profesorem,magistrem, który nie umie zawiązać sobie butów.

-A ja jestem technikiem który daje ci prace.

Opublikowano

tak wygląda rozpisek pętli for w pętli while, czyli akcja jest na końcu

 

int b = 2; 
while (b <= 3) do 
{ 
 { 
  ciało pętli for 
 } 
 b++; 
}

czyli po wypisaniu, dodaje b+1, lecz ponownie, nie spełnia warunku więc wychodzi z pętli, dlatego też ta szatańska 4

więc tak sądzę że niema tutaj niczego ekstra

jak chcesz podziękować, to temu userowi, bo sam do końca nie wiedziałem czemu tak jest http://www.mpcforum.pl/user/18122-miras666/

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...