| 
| 
 | Вопрос # 3 434/ вопрос открыт / | 
 |  Здравствуйте, уважаемые эксперты!
 Как рассмотреть заполнение массива с использованием генератора случайных чисел. (код программы)
 
|  |   Вопрос задал: hiddenbust (статус: Посетитель)Вопрос отправлен: 23 ноября 2009, 09:01
 Состояние вопроса: открыт, ответов: 2.
 |  Ответ #1. Отвечает эксперт: Егор Здравствуйте, hiddenbust!Привожу код программы:
 
 program Project2;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
const
  N = 10; // количетсво чисел
var
  a : array [1..N] of integer; // будет массив из N чисел
  i : integer;
begin
  randomize; // инициализируем счётчик случайных чисел
  for i:=1 to N do     // перебираем все элементы массива
  begin
    a[i]:=random(200); // числа будут случайные от 0 до 199 (=200-1)
    write(a[i],' ');   // выводим на экран очередное случайное число
  end;
  readln;              // приостановка программы до нажатия на Enter
end.
|  | Ответ отправил: Егор (статус: 10-ый класс)Время отправки: 23 ноября 2009, 09:31
 
 |  Ответ #2. Отвечает эксперт: Паровоз Здравствуйте, hiddenbust!
 Вот пример заполнения массива случайными числами, равномерно распределенными в интервале (a;b):
 
 const
  n=10;//размер массива
  a=2;b=5;//концы интервала
 
var
  c:array[1..10] of Extended;//массив случайных чисел
 
procedure TForm1.Button1Click(Sender: TObject);
var
  i:Integer;
begin
  Randomize;
  for i:=1 to 10 do c[i]:=a+(b-a)*Random;
  for i:=1 to 10 do Memo1.Lines.Add(FloatToStr(c[i]));
end; 
|  | Ответ отправил: Паровоз (статус: 10-ый класс)Время отправки: 23 ноября 2009, 16:47
 
 |  
 Мини-форум вопросаВсего сообщений: 2; последнее сообщение — 18 марта 2014, 13:43; участников в обсуждении: 2. 23 ноября 2009, 11:59: Вопрос перемещён из тематического раздела Delphi » Общие вопросы по программированию в раздел Delphi » Алгоритмы, преобразования модератором Ерёмин А.А. 
|   | Паровоз (статус: 10-ый класс), 23 ноября 2009, 16:49 [#1]:P.S. число 10 забыл заменить на n: 
 c:array[1..n] of Extended;
 for i:=1 to n do c[i]:=a+(b-a)*Random;
 for i:=1 to n do Memo1.Lines.Add(FloatToStr(c[i]));
 |  
|   | zvygin1964 (статус: Посетитель), 18 марта 2014, 13:43 [#2]:Ой спасибо! 
 unit Array_type;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
 
type
  TForm1 = class(TForm)
    Button1: TButton;
    Memo1: TMemo;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
     const
  n=3;//размер массива
  a=2;b=5;//концы интервала
 
var
  c:array[1..n] of Extended;//массив случайных чисел
 
procedure TForm1.Button1Click(Sender: TObject);
       var
  i:Integer;
begin
  Randomize;
  for i:=1 to n do c[i]:=a+(b-a)*Random;
  for i:=1 to n do Memo1.Lines.Add(FloatToStr(c[i]));
end;
 
end.И правда работает!
 |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |