Вопрос задан 10.07.2023 в 01:22. Предмет Информатика. Спрашивает Далдаев Шамхан.

Напишите программу, которая строит случайную перестановку чисел от 1 до N – массив из N натуральных

чисел, в котором есть все числа от 1 до N . Входные данные Входная строка содержит размер массива N . Гарантируется, что 0 < N ≤ 10000 . Выходные данные Программа должна вывести в одну строку элементы полученного случайного массива, разделив их пробелами. В массиве должны присутствовать все натуральные числа от 1 до N . CPP Примеры входные данные 10 выходные данные 9 2 7 5 6 10 8 4 3 1
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Кравцов Влад.

Ответ:

#include <iostream>

#include <ctime>

int main()

{

int N, i, k, tmp;

int A[10000];

std::cin >> N;

for (i = 0; i < N; i++)

 A[i] = i+1;

srand(time(0));

for (i = 0; i < N; i++)

{

 tmp = A[i];

 k = rand() % N;

 A[i] = A[k];

 A[k] = tmp;

}

for (i = 0; i < N; i++)

 std::cout << A[i] << " ";

return 0;

}

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, вот пример программы на C++, которая генерирует случайную перестановку чисел от 1 до N:

cpp
#include <iostream> #include <vector> #include <algorithm> #include <random> int main() { int N; std::cin >> N; // Создаем вектор с числами от 1 до N std::vector<int> nums(N); for (int i = 0; i < N; ++i) { nums[i] = i + 1; } // Используем генератор случайных чисел для перемешивания std::random_device rd; std::mt19937 rng(rd()); // Перемешиваем вектор std::shuffle(nums.begin(), nums.end(), rng); // Выводим перемешанный массив for (int i = 0; i < N; ++i) { std::cout << nums[i] << " "; } return 0; }

Программа сначала считывает значение N, затем создает вектор с числами от 1 до N и перемешивает его с помощью генератора случайных чисел. Наконец, программа выводит полученный массив на экран.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос