Сгенерировать и вывести на экран m целых случайных чисел - C (СИ)
Формулировка задачи:
Числа m, n и k (3≤ k 10) вводятся с клавиатуры. Сгенерировать и вывести на экран m целых случайных чисел из промежутка, указанном в пункте а, и n действительных чисел (выводить на экран с указанной точностью) из промежутка, указанном в пункте b. Вывод на экран осуществлять по k чисел в строке.
a [-11, 111] b [ 2, 6 ] с точностью до тысячных
Решение задачи: «Сгенерировать и вывести на экран m целых случайных чисел»
textual
Листинг программы
#include <stdio.h> #include <Windows.h> #include <time.h> int main() { srand(time(NULL)); int m, n, k, i,j; printf("Enter m:\n"); scanf("%d", &m); printf("Enter n:\n"); scanf("%d", &n); printf("Enter k:\n"); scanf("%d", &k); int *int_numb = malloc(m * sizeof(int)); double *real_numb = malloc(n * sizeof(double)); // creating the array of integer numbers in the range [-11;111] for (i = 0; i < m; i++) { int_numb[i] = rand() % (111 + 1 - (-11)) + (-11); } // creating the array of real number in the range [2;6] for (i = 0; i < n; i++) { real_numb[i] = (((double)rand()*(6 - 2) / RAND_MAX) + 2); } printf("Integer numbers in the range [-11;111]\n"); for (i = 0; i < m; i++) { if (i%k == 0 && i != 0) { printf("\n"); } printf("%3d ", int_numb[i]); } printf("\n\n"); printf("Real numbers in the range [2;6]\n"); for (i = 0; i < n; i++) { if (i%k == 0 && i != 0) { printf("\n"); } printf("%.3f ", real_numb[i]); } printf("\n\n"); system("pause"); return 0; }
Объяснение кода листинга программы
В этом коде выполняются следующие действия:
- Инициализируются переменные
m
,n
,k
,i
,j
типаint
иdouble
со значениями, которые пользователь вводит с клавиатуры. - Генерируются случайные числа в заданном диапазоне.
- Выделяется память под массивы
int_numb
иreal_numb
с помощью функцииmalloc()
. - Создаются массивы
int_numb
иreal_numb
. - С помощью цикла
for
выводятся на экран сгенерированные числа. - При нажатии клавиши
Enter
программа завершается. Список действий в коде: - Инициализация переменных
m
,n
,k
,i
,j
. - Вывод приглашения для ввода значений
m
,n
,k
. - Выделение памяти под массивы
int_numb
иreal_numb
. - Создание массивов
int_numb
иreal_numb
. - Генерация случайных чисел в заданном диапазоне и заполнение ими массивов
int_numb
иreal_numb
. - Вывод на экран сгенерированных чисел.
- Ожидание нажатия клавиши
Enter
для завершения программы. - Освобождение памяти, выделенной под массивы
int_numb
иreal_numb
, с помощью функцииfree()
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д