Генерация случайных четных чисел - C (СИ)
Формулировка задачи:
Вывести массив из 30-ти случайных чисел с диапазона от 100 до 10000, при этом каждое число массива должно быть четным.
Вот пытался что-то сделать, но не верно:
#include <stdio.h> #include <string.h> #include <conio.h> #include <stdlib.h> int main () { int mas[30], rand_ch; int i; for (i=0;;i++){ rand_ch = 100 + rand() %10000; if (rand_ch%2 == 0) { mas[i]=rand_ch}} printf("Vektor: \n"); getch(); }
Решение задачи: «Генерация случайных четных чисел»
textual
Листинг программы
#include <iostream> #include<ctime> int* arr(size_t size) { srand(time(0)); int* ret = new int[size]; for(int i = 0; i != size; ++i) ret[i] = (rand() % 4951 + 50) * 2; return ret; } void rout(int* arr, size_t size) { while(size--) std::cout << *(arr++) << '\t'; } int main() { setlocale( LC_ALL, "Russian" ); const size_t size = 30; int* randArray = arr(size); rout(randArray, size); delete[] randArray; }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы со случайными числами и вводом/выводом
- Создание функции
arr
, которая выделяет память под массив заданного размера и заполняет его случайными четными числами - Создание функции
rout
, которая выводит элементы массива на экран через табуляцию - Установка русской локали для вывода
- Объявление константы
size
- размера будущего массива - Вызов функции
arr
для создания массива заданного размера и сохранение указателя на первый элемент массива в переменнойrandArray
- Вызов функции
rout
для вывода элементов массива на экран - Вызов функции
delete[]
для освобождения памяти, выделенной под массив
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д