Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.10.14;
Скачать: [xml.tar.bz2];

Вниз

Как заполнить массив вручную сразу строками?   Найти похожие ветки 

 
Light-blr   (2007-09-21 11:45) [0]

Здравствуйте.
В моей программе нужен массив 4*150, заранее известный. Я хотела бы его заполнить в коде программы, как-нибудь вроде NewMas:=((1,2),(1,2)), но ни в справке, ни в книжке по Delphi ничего похожего не нашла. Подскажите, как это сделать, если это возможно. Я имею в виду, заполнить как NewMas[1,1]:=1;NewMas[1,2]:=2... это я смогу, конечно, но код очень сильно разрастётся. Читать из файла не хочу, чтобы потом не было возможности этот файл изменить. Есть ли возможность заполнить весь массив разом?


 
stone ©   (2007-09-21 11:48) [1]


> ни в книжке по Delphi ничего похожего не нашла.

странно, открыл справку, набрал array, получил описание

type TMatrix = array[1..10, 1..50] of Real;

Whichever way TMatrix is declared, it represents an array of 500 real values. A variable MyMatrix of type TMatrix can be indexed like this: MyMatrix[2,45]; or like this: MyMatrix[2][45]. Similarly,

ЗЫ. про циклы что-нибудь известно?


 
Light-blr   (2007-09-21 11:52) [2]

Про циклы известно. массив должен выглядеть примерно так:
0 0 0 0 -15 0 0 35 119 0 0 0
0 0 -11 0 0 0 0 0 3...
То есть никакой последовательности, заполняется вручную. Можно заполнить тупо
NewMas[1,1]:=0;
NewMas[1,2]:=0;
И так далее до посинения. Это я могу - но хочу сразу всю строку, если возможно.


 
stone ©   (2007-09-21 11:54) [3]

ну а эти самые строчки откуда беруться? есть какой-то источник? или просто из потока сознания ? :)


 
Elen ©   (2007-09-21 11:55) [4]


> Light-blr

Ну можно например создать константу и ее заполнить, и если нужен массив, значения которого будут менятся то мона так :
unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs;

type
t=array[1..5] of integer;
 TForm1 = class(TForm)
   procedure FormCreate(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;
const a:t=(1,2,3,4,5);
var   b:t;

 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
b:=a;
end;

end.


 
Плохиш ©   (2007-09-21 11:57) [5]

Открываем справку и читаем

Bei der Deklaration einer Array-Konstante werden die Werte der Array-Elemente in Klammern und durch Kommas getrennt angegeben. Zur Angabe der Werte müssen konstante Ausdrücke verwendet werden. Ein Beispiel:

const Digits: array[0..9] of Char = ("0", "1", "2", "3", "4", "5", "6", "7", "8", "9");

Diese Anweisung deklariert eine typisierte Konstante mit dem Namen Digits, die ein Zeichen-Array enthält.


 
palva ©   (2007-09-21 11:58) [6]


{$APPTYPE CONSOLE}
var
 m: array[1..2,40..41] of Integer = ((23, 24), (25, 26));
begin
 Writeln(m[1,40]); // 23
 Writeln(m[2,41]); // 26
end.


 
Light-blr   (2007-09-21 11:59) [7]


> stone

Эти значения берутся из тщательных расчётов на листке бумаги. :)

> Elen

Спасибо, мне нужна именно такая константа. Буду пробовать.


 
Jeer ©   (2007-09-21 12:15) [8]


> Light-blr   (21.09.07 11:59) [7]



> Эти значения берутся из тщательных расчётов на листке бумаги.


В таком случае имеет смысл:
1. использовать array of double или extended
2. "Тщательно" построить регрессионную зависимость и вычислять при инициализации или по месту.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.10.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.055 c
3-1181285199
ssa
2007-06-08 10:46
2007.10.14
Узнать, что dataset находится в режиме редактирования


3-1181296206
MZ
2007-06-08 13:50
2007.10.14
Триггер или COUNT?


2-1189699967
ММК
2007-09-13 20:12
2007.10.14
Файлы


3-1181206449
deras
2007-06-07 12:54
2007.10.14
Можно ли вызвать ХП из триггера и как передать ей параметры?


2-1190265993
Ohotnic
2007-09-20 09:26
2007.10.14
Три ComboBox и кнопка...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский