Генерация случайных чисел в заданном диапазоне - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Листинг программы
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <stdlib.h>
  4. int main()
  5. {
  6. clrscr();
  7. textcolor(RED);
  8. unsigned long iran;
  9. unsigned long rand_a, rand_c,rand_m;
  10. unsigned long jran,max;
  11. int i,j,i1,j1;
  12. unsigned long a[6][6];
  13. rand_m=233280;
  14. rand_a=9301;
  15. rand_c=49297;
  16. for (i=0;i<6;i++){
  17. printf("\n");
  18. for(j=0;j<6;j++) {
  19. iran=(iran*rand_a+rand_c)%rand_m;
  20. jran=0+(65157*iran)%rand_m;
  21. a[i][j]=jran;
  22. printf("%7d",a[i][j], ",") ;
  23. if(a[i][j]>max){
  24. max=a[i][j],i1=i+1,j1=j+1;
  25. }
  26. }
  27. }
  28. printf("\n\n max=%d i=%d j=%d ", max, i1,j1 );
  29. getch();
  30. return 0;
  31. }
почему-то генерирует числа не из диапазона 0..65157 и неверно выводит место максимального элемента ,заранее спасибо

Решение задачи: «Генерация случайных чисел в заданном диапазоне»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main()
  5. {
  6.    unsigned long iran = 0;
  7.    unsigned long rand_a, rand_c, rand_m;
  8.    unsigned long jran, max = 0;
  9.    int i, j, i1 = 0, j1 = 0;
  10.    unsigned long  a[6][6];
  11.    rand_m = 233280;
  12.    rand_a = 9301;
  13.    rand_c = 49297;
  14.    for (i = 0; i < 6; i++)
  15.    {
  16.       for (j = 0; j < 6; j++)
  17.       {
  18.          iran = (iran * rand_a + rand_c) % rand_m;
  19.          jran = (65157 * iran) % rand_m;
  20.          a[i][j] = jran;
  21.          printf("%7lu,", a[i][j]) ;
  22.          if (a[i][j] > max)
  23.          {
  24.             max = a[i][j], i1 = i + 1, j1 = j + 1;
  25.          }
  26.       }
  27.       printf("\n");
  28.    }
  29.    printf("max=%lu i=%d j=%d\n", max, i1, j1);
  30.  
  31.    system("pause");
  32.  
  33.    return 0;
  34. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.143 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы