Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Zadanie z zagnieżdżonych pętli

Ostatnio zmodyfikowano 2013-11-11 20:13
Autor Wiadomość
Soon
Temat założony przez niniejszego użytkownika
Zadanie z zagnieżdżonych pętli
» 2013-11-11 20:02:09
Witam szanownych kolegów programistów! Wczoraj założyłem temat o tym, jak ja tych pętli nie rozumiem. Pekfos wytłumaczył mi je bardzo dobrze (dzięki), więc wypada poćwiczyć. Pierwsze zadanie zrobiłem bez problemu, ale mam problem z kolejnym:

Wyobraź sobie, że masz pięć piłek i chcesz wylosować trzy z nich. Napisz program, który wypisze na ekranie wszystkie możliwe kombinacje piłek jakie można wylosować. No więc napisałem takie coś:

C/C++
#include <iostream>
using namespace std;

int main()
{
    for( int pilka1 = 1; pilka1 <= 5; ++pilka1 ) // W kursie, program rozpoczynal sie od 1 2 3
    {
        for( int pilka2 = 2; pilka2 <= 5; ++pilka2 )
        {
            for( int pilka3 = 3; pilka3 <= 5; ++pilka3 ) // wiec ponumerowalem te pilki kolejno: pilka 1 = 1; pilka 2 = 2; itd.
            {
                cout << pilka1;
                cout << pilka2;
                cout << pilka3;
                cout << endl;
               
            }
           
        }
    }
}

Problem w tym, że wyświetlany jest inny wynik, niż w kursie. Możecie powiedzieć, gdzie jest błąd?
P-96080
Buby
» 2013-11-11 20:09:52
Hmm... Popraw kod w następujący sposób - w każdej pętli
for
, wartość startową ustaw na 1.

A instrukcje
cout
 umieść w bloku
if
 z następującym warunkiem:
C/C++
if( pilka1 < pilka2 && pilka2 < pilka3 ) // Warunek, że liczby nie mogą być takie same :) 

Powyższy warunek zapewnia też, że liczby nie powtórzą się w odwrotnej kolejności np. [1 2 3] - [3 2 1].
Zależy czy tego potrzebujemy czy nie, jednak w następnym zadaniu będzie Ci potrzebny ten warunek.
P-96083
Soon
Temat założony przez niniejszego użytkownika
» 2013-11-11 20:13:28
Dzięki, teraz jest dobrze. Tylko, że nie można tych wartości ustawiać na 0. Program musi się zaczynać tak: 1 2 3. Jednak to if działa i już jest wszystko dobrze. :)
P-96084
« 1 »
  Strona 1 z 1