Дан массив целых чисел из n элементов, заполненный случайным образом числами из заданного пользователями промежутка - C (СИ)
Формулировка задачи:
Дан массив целых чисел из n элементов, заполненный случайным образом числами из заданного пользователями промежутка.
У меня неправильно задается промежуток. В чём ошибка???
int i,y,x1,x2; printf("\nВведите размерность массива: "); scanf("%d",&y); printf("Введите промежуток значений от x1 до x2:\n"); printf("x1: "); scanf("%d",&x1); printf("x2: "); scanf("%d",&x2); int mas[y]; for (i=0;i<y;i++) { mas[i]=x1+rand()%x2; }
Решение задачи: «Дан массив целых чисел из n элементов, заполненный случайным образом числами из заданного пользователями промежутка»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> int main(void) { srand(time(NULL)); int i,y,x1,x2; printf("Введите размерность массива:"); scanf("%d",&y); printf("Введите промежуток значений от x1 до x2:\n"); printf("x1: "); scanf("%d",&x1); printf("x2: "); scanf("%d",&x2); int mas[y]; for(i = 0; i<y;i++) { mas[i]=rand()%(x2-x1)+x1; printf("%d ", mas[i]); } printf("\n"); return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с массивами и вводом/выводом данных
- Инициализация генератора случайных чисел с помощью функции srand(time(NULL))
- Объявление переменных:
- i - счётчик для цикла
- y - размер массива, вводимый пользователем
- x1,x2 - минимальное и максимальное значение для генерации случайных чисел соответственно
- Запрос у пользователя размера массива и диапазона значений для генерации случайных чисел
- Выполнение цикла for для заполнения массива случайными числами
- генерация случайного числа в диапазоне от x1 до x2 с помощью функции rand()%(x2-x1)+x1
- добавление сгенерированного числа в массив
- вывод числа на экран с помощью функции printf()
- Завершение программы с помощью функции return 0
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д