М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации

Реализовать процедуру заполнения массива случайными числами без повторения элементов (pascal)

👇
Ответ:
Farxadkishi
Farxadkishi
25.12.2020
// PascalABC.NET 3.3, сборка 1583 от 25.11.2017
// Внимание! Если программа не работает, обновите версию!

procedure FillRandom(var P:array of integer; a,b:integer);
begin
  var (k,n):=(0,P.Length);
  repeat
      P:=ArrRandom(n,a,b);
      k+=1;
    until P.Distinct.Count=n;
  Writeln('Сделано ',k,' генераций массива')
end;

begin
  var n:=ReadInteger('n=');
  var (a,b):=ReadInteger2('Укажите интервал значений элементов:');
  if b-a+1<n then Writeln('Задание выполнить невозможно')
  else begin
    var x:=new integer[n];
    FillRandom(x,a,b);
    x.Println
    end
end.

Примеры
n= 15
Укажите интервал значений элементов: 10 30
Сделано 695 генераций массива
14 26 30 18 27 20 28 10 25 12 22 29 13 15 17

n= 15
Укажите интервал значений элементов: -50 50
Сделано 6 генераций массива
20 11 31 8 12 -47 16 -27 -21 -44 32 10 47 -36 46
4,6(66 оценок)
Открыть все ответы
Ответ:
Wector11211
Wector11211
25.12.2020

Кожен алгоритм має справу з даними – вхідними, проміжними, вихідними

Алгоритм для розміщення даних вимагає пам'яті.

Алгоритм складається з окремих елементарних кроків, причому множина різних кроків, з яких складений алгоритм, скінченні.

Послідовність кроків алгоритму детермінована,

Алгоритм повинен бути результативним, тобто

Алгоритм передбачає наявність механізму реалізації,

Объяснение:

Вимога 1 відповідає цифровій природі ПК, вимога 2 – пам'ять ПК, вимога 3 – програмі машини, вимога 4 – її логічній природі, вимоги 5, 6 – обчислювальному пристрою та його можливостям.

4,5(7 оценок)
Ответ:
mirapax1997ozb3lk
mirapax1997ozb3lk
25.12.2020

Две задачи в одной программе:

#include <iostream>

#include <iomanip>

#include <ctime>

using namespace std;

int randInt(int min, int max){

       return min + (rand() % (max - min + 1));

}

int main(int argc, char *argv[]){

       const int DIM = 5;

       int matrix[DIM][DIM];

       const int Z = 0;

 

       srand(time(0));

 

       for (int i = 0; i < DIM; i++) {

               for (int j = 0; j < DIM; j++) {

                       matrix[i][j] = randInt(-5, 5);

                       cout << setw(4) << matrix[i][j] << ' ';

               }

               cout << endl;

       }

       cout << endl;

   

       cout << "x > " << Z << ":" << endl;

       int count = 0;

       int sum = 0;

       for (int i = 0; i < DIM; i++) {

               for (int j = 0; j < DIM; j++) {

                       if (matrix[j][i] > Z)

                               count++;

                       if (matrix[i][j] < 0)

                               sum += matrix[i][j];

               }

               cout << setw(4) << count << ' ';

               count = 0;

       }

       cout << endl;

       cout << endl;

       cout << "Sum: " << sum << endl;

       cout << endl;

       return 0;

}

По отдельности:

1)

#include <iostream>

#include <iomanip>

#include <ctime>

using namespace std;

int randInt(int min, int max){

       return min + (rand() % (max - min + 1));

}

int main(int argc, char *argv[]){

       const int DIM = 5;

       int matrix[DIM][DIM];

       const int Z = 0;

 

       srand(time(0));

 

       for (int i = 0; i < DIM; i++) {

               for (int j = 0; j < DIM; j++) {

                       matrix[i][j] = randInt(-5, 5);

                       cout << setw(4) << matrix[i][j] << ' ';

               }

               cout << endl;

       }

       cout << endl;

   

       cout << "x > " << Z << ":" << endl;

       int count = 0;

       for (int i = 0; i < DIM; i++) {

               for (int j = 0; j < DIM; j++) {

                       if (matrix[j][i] > Z)

                               count++;

               }

               cout << setw(4) << count << ' ';

               count = 0;

       }

       cout << endl;

       int sum = 0;

       for (int i = 0; i < DIM; i++) {

               for (int j = 0; j < DIM; j++) {

                       if (matrix[i][j] < 0)

                               sum += matrix[i][j];

               }

       }

       cout << "Sum: " << sum << endl;

       cout << endl;

 

       return 0;

}

2)

#include <iostream>

#include <iomanip>

#include <ctime>

using namespace std;

int randInt(int min, int max){

       return min + (rand() % (max - min + 1));

}

int main(int argc, char *argv[]){

       const int DIM = 5;

       int matrix[DIM][DIM];

       const int Z = 0;

 

       srand(time(0));

 

       for (int i = 0; i < DIM; i++) {

               for (int j = 0; j < DIM; j++) {

                       matrix[i][j] = randInt(-5, 5);

                       cout << setw(4) << matrix[i][j] << ' ';

               }

               cout << endl;

       }

       cout << endl;

   

       int sum = 0;

       for (int i = 0; i < DIM; i++) {

               for (int j = 0; j < DIM; j++) {

                       if (matrix[i][j] < 0)

                               sum += matrix[i][j];

               }

       }

       cout << "Sum: " << sum << endl;

       cout << endl;

       return 0;

}

4,8(13 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ