Advertisement
Guest User

Untitled

a guest
Nov 21st, 2019
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.84 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. void transl (int i, int n, int m, int * k) {
  5. int a[25]; //выделение массива большего, чем требуется
  6. for (int j = 1; j < m + 1; j++) {
  7. a[m - j] = i % n;
  8. i -= i % n;
  9. i /= n;
  10. }
  11. int minus = 0;
  12. for (int k = 0; k < m; k++) {
  13. if (a[k] == 0) {
  14. minus++;
  15. }
  16. }
  17. if (minus == 1) {
  18. (*k) ++;
  19. for (int j = 0; j < m; j++) {
  20. printf ("%d", a[j]);
  21. }
  22. printf ("\n");
  23. }
  24. }
  25.  
  26. int main (void) {
  27. int n, m, k = 0;
  28. printf ("Введите число символов и длину комбинации\n");
  29. scanf ("%d", &n);
  30. scanf ("%d", &m);
  31. int l = 1;
  32. for (int i = 0; i < m; i++) {
  33. l *= n;
  34. }
  35. for (int i = 0; i < l; i++) {
  36. transl (i, n, m, &k);
  37. }
  38. printf ("Количество таких комбинаций = %d", k);
  39. return 0;
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement