@kitsss
Ten pierwszy już wcześniej rozwiązałem:
#include <iostream>
int main() {
for( short i = 1; i < 4; i++ ) {
for( short j = 1; j < 4; j++ ) {
for( short k = 1; k < 4; k++ ) {
for( short l = 1; l < 4; l++ ) {
for( short m = 1; m < 4; m++ ) {
std::cout << i << ' ' << j << ' ' << k << ' ' << l << ' ' << m << std::endl;
}
}
}
}
}
return 0;
}
_______________________________________________________________________________
Ja jestem przy drugim podpunkcie.
Pekfos dał mi rozwiązanie problemu z mojego Post Scriptum.
Jednak ja chcę wiedzieć gdzie zrobiłem błąd w tym kodzie który ja napisałem.
Nie jest ważne, że moja pierwsza próba pomija powtarzalność kombinacji,
ja chcę tylko wiedzieć gdzie jest błąd, że pierwszą kombinacją nie jest "1, 2, 3",
tylko "3, 1, 2". (Kod programu podałem w pierwszym poście tego tematu.)
________________________________________________________________________________
EDIT:
@pekfos
O to rozwiązanie Ci chodziło?:
#include <iostream>
int main() {
for( short i = 1; i < 6; i++ ) {
for( short j = i + 1; j < 6; j++ ) {
for( short k = j + 1; k < 6; k++ ) {
std::cout << i << ' ' << j << ' ' << k << std::endl;
}
}
}
return 0;
}
Więc teraz mi pomóż naprawić mój badziewny program,
który ma wypisać możliwe kombinacje 5ciu elementów
w 3ech miejscach, bez powtórzenia elementu.
Mój program powinien wypisać:
1 2 3; 1 2 4; 1 2 5; 1 3 2; ... 5 3 4; 5 4 1; 5 4 2; 5 4 3;
________________________________________________________________________________
EDIT 2:
Myślę, że sam sobie poradziłem. Powodem błędów
było nie wyzerowanie tablicy
used ...
Oto mój kod (Nie rozwiązujący całkowicie zadania):
Pffffff#include <iostream>
int main() {
bool used[ 5 ] = { false, false, false, false, false };
for( short i = 0; i < 5; i++ ) {
used[ i ] = true;
for( short j = 0; j < 5; j++ ) {
if( used[ j ] ) continue;
used[ j ] = true;
for( short k = 0; k < 5; k++ ) {
if( used[ k ] ) continue;
used[ k ] = true;
std::cout << i + 1 << ' ' << j + 1 << ' ' << k + 1 << std::endl;
used[ k ] = false; }
used[ j ] = false; }
used[ i ] = false; }
return 0; }
;
________________________________________________________________________________
EDIT 3:
Teraz się zajmę kolejnym podpunktem:
Napisz program, który zliczy liczbę możliwych kombinacji wylosowania 6 liczb ze zbioru 49 liczb (reasumując: rozpatrujesz problem popularnej gry liczbowej Lotto). Zadanie należy rozwiązać przy pomocy zagnieżdżonych pętli (nie można używać wzoru). |