Модераторы: volvo877, Snowy, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Подпрограммы-процедуры, Истина где-то рядом ... 
:(
    Опции темы
PrinceMike
  Дата 1.12.2006, 22:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 184
Регистрация: 23.11.2006
Где: Москва

Репутация: нет
Всего: 1



 smile как сделать 4(a,b,c,d) новых мaссива подпрограммой- процедурой по правилу:
user posted image

, если даны массивы z,x,c,v
x={0.25,-1.5,05.,4,5}
y={0.1,-1.8,2.25}
z={0.48,1.25,-0.1,3.2,5.1}
p={2.5,1.44,-0.5,0,1}

и еще вопросик : как обябъвть массив, если потом его чтение будет совершаться из файла
Заранее благодарен

Это сообщение отредактировал(а) PrinceMike - 1.12.2006, 22:24
--------------------
PM MAIL WWW ICQ   Вверх
Zero
Дата 1.12.2006, 22:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2169
Регистрация: 23.10.2004
Где: Россия, г. Рязань

Репутация: нет
Всего: 24



Цитата(PrinceMike @  1.12.2006,  23:23 Найти цитируемый пост)
как обябъвть массив, если потом его чтение будет совершаться из файла

Из какого ещё файла ты собрался считывать массив экзешника можно сказать?
PM MAIL ICQ   Вверх
PrinceMike
Дата 1.12.2006, 23:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 184
Регистрация: 23.11.2006
Где: Москва

Репутация: нет
Всего: 1



какого ехе нафиг?smile
из *.pas естно
связать файл проги(*.pas ) и *.pas можно при помощи assign
а вот объявить хз можно ли так же как при типизированных-константах
Код

.............................
type x=array[1..4] of real;
type y=array[1..3] of real;
type z=array[1..5] of real;
type p=array[1..5] of real;
var a,b,c,d:real;
...............................
assign(f,'x.pas');reset(f);
assign(f,'y.pas');reset(f);
assign(f,'z.pas');reset(f);
assign(f,'p.pas');reset(f);
assign(q,'otv.pas');rewrite(q);

P.S это тока фрагменты кода, как вы догадались  smile 
Я сделал так, а вот вопрос остается открытым: как оформить подпрограмму-процедуру




Это сообщение отредактировал(а) PrinceMike - 2.12.2006, 00:11
--------------------
PM MAIL WWW ICQ   Вверх
Zero
Дата 2.12.2006, 01:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2169
Регистрация: 23.10.2004
Где: Россия, г. Рязань

Репутация: нет
Всего: 24



Цитата(PrinceMike @  2.12.2006,  00:05 Найти цитируемый пост)
связать файл проги(*.pas ) и *.pas можно при помощи assign
а вот объявить хз можно ли так же как при типизированных-константах

PrinceMike, ты немного загнался...
Всего в паскале существует, 3 типа файла:
  •  текстовый
  •  типизированый
  •  нетипизированый
Цитата(PrinceMike @  2.12.2006,  00:05 Найти цитируемый пост)
Я сделал так, а вот вопрос остается открытым: как оформить подпрограмму-процедуру

Я опять непонял чё конкретно ты хочешь??? smile 
Просто процедуру, оформить чтобы из *.pas файла данные вытаскивала? Если да то вот так:
Код

program pr;
var
  f:text;
  s:string;

procedure primer;
begin
  assign(f,'c:\111.pas');
  reset(f);
  while not eoln(f) do
    begin
      readln(f,s);
      writeln(s);
    end;
  close(f);
end;

Begin
  primer;
End.

Содержимое файла 111.pas навсяк пожарный пиши лотиницей.

Если не то, то выражай по русски чё хочешь... Телепатов тут нет.
PM MAIL ICQ   Вверх
PrinceMike
Дата 2.12.2006, 08:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 184
Регистрация: 23.11.2006
Где: Москва

Репутация: нет
Всего: 1



assign то в теле самой проги, я не о том, я про конкретно мою задачу: формирование новых массивов по правилу... smile 
--------------------
PM MAIL WWW ICQ   Вверх
Grasshopper
Дата 2.12.2006, 09:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 31
Регистрация: 23.3.2006

Репутация: нет
Всего: 1



Цитата(PrinceMike @ 2.12.2006,  03:23)
smile как сделать 4(a,b,c,d) новых мaссива подпрограммой- процедурой по правилу:
user posted image

, если даны массивы z,x,c,v
x={0.25,-1.5,05.,4,5}
y={0.1,-1.8,2.25}
z={0.48,1.25,-0.1,3.2,5.1}
p={2.5,1.44,-0.5,0,1}

Код

const 
  n = 4;
var 
  x, res : array [1..n] of double;
procedure my_proc (input_arr : array of double; var output_arr : array of double);
var i : integer;
begin
  for i:=1 to n do
    if input_arr[i] < 0 then 
      output_arr[i] := sqr(input_arr[i])
    else if input_arr[i] > 1 then 
      output_arr[i] := input_arr[i]
    else 
      output_arr[i] := sqr(input_arr[i])*input_arr[i];
end;

begin
  ...
  my_proc(x, res);
  ...
end.


Добавлено @ 09:34 
А чтоб массив из файла прочитать, ничего особенного объявлять не надо. Все как обычно)

Это сообщение отредактировал(а) Grasshopper - 2.12.2006, 16:23
PM MAIL   Вверх
Zero
Дата 2.12.2006, 12:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2169
Регистрация: 23.10.2004
Где: Россия, г. Рязань

Репутация: нет
Всего: 24



PrinceMike, прочитай Правила форума, особенно обрати внимание на 11 пункт в данном случае. smile 
PM MAIL ICQ   Вверх
PrinceMike
Дата 2.12.2006, 14:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 184
Регистрация: 23.11.2006
Где: Москва

Репутация: нет
Всего: 1



Zero, прошу прощения, буду работать над собой smile

Добавлено @ 14:32 

Grasshopper,  а почему тут double  smile  
--------------------
PM MAIL WWW ICQ   Вверх
Grasshopper
Дата 2.12.2006, 14:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 31
Регистрация: 23.3.2006

Репутация: нет
Всего: 1



Цитата(PrinceMike @  2.12.2006,  19:29 Найти цитируемый пост)
Grasshopper,  а почему тут double  smile   

Можно и real написать) Разница в точности) 
PM MAIL   Вверх
PrinceMike
Дата 2.12.2006, 16:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 184
Регистрация: 23.11.2006
Где: Москва

Репутация: нет
Всего: 1



Grasshopper, понятненько , а вот res - это как я у тебя понял переманная как и х, тока зачем она если в последующем не используется?  smile  smile 

а так спс smile smile  smile  буду вникать че да как smile


Это сообщение отредактировал(а) PrinceMike - 2.12.2006, 16:07
--------------------
PM MAIL WWW ICQ   Вверх
Grasshopper
Дата 2.12.2006, 16:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 31
Регистрация: 23.3.2006

Репутация: нет
Всего: 1



PrinceMike, это я под результат задумывал) Потом забыл убрать)

Добавлено @ 16:24 
Вот) исправил)
PM MAIL   Вверх
PrinceMike
Дата 2.12.2006, 17:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 184
Регистрация: 23.11.2006
Где: Москва

Репутация: нет
Всего: 1



Grasshopper,  так у нас массывы все с разным числм элементов, т.е. почему мы взяли 4 элемента в массиве?
у нас четыре массива с разным числом элементов  smile 
--------------------
PM MAIL WWW ICQ   Вверх
Grasshopper
Дата 2.12.2006, 17:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 31
Регистрация: 23.3.2006

Репутация: нет
Всего: 1



А, черт, проглядел... есть, по-моему, функция, возвращающая длину массива, а если я ошибаюсь, то тогда надо еще длину массива в процедуру передавать
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi"
THandle
Rrader
volvo877

Запрещается!

1. Обсуждать и делится взломанными компонентами или программным обеспечением

2. Публиковать ссылки на варез

3. Оффтопить

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема »


 




[ Время генерации скрипта: 0.1263 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.