fork(5) download
  1. #include <stdio.h>
  2.  
  3. int main(void) {
  4. char password[9] = {0};
  5. int keysize = 4;
  6. for (;;) {
  7. // get next password value
  8. // we do it by adding 1 in 26-al system
  9. int level = 0; // current level, starts at 0
  10. while (level < keysize) {
  11. if (password[level] == 0) {
  12. password[level] = 'a';
  13. break;
  14. }
  15. if (password[level] >= 'a' && password[level] < 'c') {
  16. password[level]++;
  17. break;
  18. }
  19. if (password[level] == 'c') {
  20. password[level] = 'a';
  21. level++;
  22. }
  23. }
  24. if (level >= keysize)
  25. break; // we have checked all passwords!
  26. // check if password matches:
  27. //if (check_password(password)) {
  28. // printf("Hooray! Password found: %s\n", password);
  29. // break;
  30. //}
  31. printf("%s ", password);
  32. }
  33. return 0;
  34. }
  35.  
Success #stdin #stdout 0s 2292KB
stdin
Standard input is empty
stdout
a b c aa ba ca ab bb cb ac bc cc aaa baa caa aba bba cba aca bca cca aab bab cab abb bbb cbb acb bcb ccb aac bac cac abc bbc cbc acc bcc ccc aaaa baaa caaa abaa bbaa cbaa acaa bcaa ccaa aaba baba caba abba bbba cbba acba bcba ccba aaca baca caca abca bbca cbca acca bcca ccca aaab baab caab abab bbab cbab acab bcab ccab aabb babb cabb abbb bbbb cbbb acbb bcbb ccbb aacb bacb cacb abcb bbcb cbcb accb bccb cccb aaac baac caac abac bbac cbac acac bcac ccac aabc babc cabc abbc bbbc cbbc acbc bcbc ccbc aacc bacc cacc abcc bbcc cbcc accc bccc cccc