Генерация неповторяющихся различных случайных чисел - программа зависает - C (СИ)
Формулировка задачи:
зависает програма не могу понять почему
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- #include <math.h>
- #include <limits.h>
- int main(void)
- {
- int k, MAX, n;
- //srand((unsigned)time(NULL));
- //k=rand()%(INT_MAX-10)+10;
- printf("\n vvedit k="); scanf("%d",&k);
- if (k<10)
- {
- printf("ne vidpovidae umovi");
- return 0;
- }
- printf("\n vvedit MAX="); scanf("%d",&MAX);
- if (MAX<k)
- {
- printf("ne vidpovidae umovi");
- return 0;
- }
- const int i=k;
- int a[i], ser=0;
- int *N, *K;
- N=a;
- srand((unsigned)time(NULL));
- n=0;
- while (n<i) //в етом цикле зависает
- {
- *N= rand()%(MAX-1)+1;
- for(k=0; k<n; k++)
- if (*N=*(a+k)) break;
- if (k=n)
- {
- N++;
- n++;
- }
- }
- for (n=0; n<i; n++)
- printf("\n a[%d]=%d",n+1,*(a+n) );
- for(n=0; n<i; n++)
- ser+=*(a+n);
- ser/=i;
- printf("\n\n ser=%d",ser);
- return 0;
- }
Решение задачи: «Генерация неповторяющихся различных случайных чисел - программа зависает»
textual
Листинг программы
- if (k=n)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д