Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.01.2014, 17:32   #1
GendoJIF
Новичок
Джуниор
 
Регистрация: 27.01.2014
Сообщений: 8
Восклицание Создать визуальную среду в Delphi

Найти среднее значение элементов массива размером 10, преобразовать исходный массив вычитая из его элементов среднее значение. Распечатать массивы и средние значения. Преподаватель сказал что ( цитата: за 5 минут решается все ).... все нужно делать в визуальной среде, пытался сдать в Паскале, не удалось, помогите пожалуйста...

Последний раз редактировалось GendoJIF; 28.01.2014 в 17:35.
GendoJIF вне форума Ответить с цитированием
Старый 28.01.2014, 18:19   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Так а всетки что делать то сказали? Создавать среду или решать задачу с массивом?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 28.01.2014, 19:35   #3
GendoJIF
Новичок
Джуниор
 
Регистрация: 27.01.2014
Сообщений: 8
По умолчанию

решить задачу с массивами, используя среду Делфи, короче должно получится окошко с решением задачи
GendoJIF вне форума Ответить с цитированием
Старый 28.01.2014, 19:44   #4
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,499
По умолчанию

Понятно, с Delphi ни разу не имели дело. Иначе знали бы умные слова - форма, оконное приложение .... Да и вообще с Паскалем, и вообще самому неохота .
Ведь на самом деле - делов на 5 минут.
Это не помощь, это пардон - халява..
type_Oleg вне форума Ответить с цитированием
Старый 28.01.2014, 19:50   #5
GendoJIF
Новичок
Джуниор
 
Регистрация: 27.01.2014
Сообщений: 8
По умолчанию

uses crt;
const n=10;
var a:array[1..n]of real;
sr:real;
i:integer;
begin
clrscr;
writeln('Ishodny massiv:');
sr:=0;
for i:=1 to n do
begin
a[i]:=random(10)+random;
write(a[i]:6:2);
sr:=sr+a[i];
end;
sr:=sr/n;
writeln;
writeln('sr=',sr:5:2);
writeln('Rezultat:');
for i:=1 to n do
begin
a[i]:=a[i]-sr;
write(a[i]:6:2);
end;
readln
end.

В паскале все хорошо, а с Delphi вы правы, не знаком, я думал здесь помогут решить мне проблему.

Последний раз редактировалось GendoJIF; 28.01.2014 в 19:55.
GendoJIF вне форума Ответить с цитированием
Старый 28.01.2014, 20:07   #6
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,499
По умолчанию

То есть, консольное готово получается.
Теперь надо оконное сделать. Точнее переделать вывод информации.
У вас есть Delphi, чтобы пробовать? Или Lazarus ? Он бесплатный.
Создаете оконное приложение. При входе в Delphi обычно сразу выдается пустое окно, как в Word - пустой лист.
Сажаете на него Edit - окошко для вывода среднего, и Memo - для вывода измененного массива.
Вместо writeln('sr=',sr:5:2);
Код:
Edit1.Text:=FloatToStr(sr);
А вместо Write(a[и]:6:2);
Код:
Memo1.Lines.Add(FloatToStr(a[i]));
А можно и только Memo использовать.

PS Кстати, надо еще Randomize, чтобы еще случайнее было.


Самое главное забыл - кнопку Button. И вся программа - в обработчик события Button1Click

Последний раз редактировалось type_Oleg; 28.01.2014 в 20:22.
type_Oleg вне форума Ответить с цитированием
Старый 28.01.2014, 20:29   #7
GendoJIF
Новичок
Джуниор
 
Регистрация: 27.01.2014
Сообщений: 8
По умолчанию

Нужно прописывать отдельно Edit и Отдельно Memo? Или можно чуть поменяв код вставить его целиком?
GendoJIF вне форума Ответить с цитированием
Старый 28.01.2014, 20:42   #8
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,499
По умолчанию

Вот так например, если все выводить в одно большое окошко Memo, без маленького окошка Edit.
Это - модуль Unit формы .
Без верхушки кода, который создается автоматически, как шаблон.
Код:
procedure TForm1.Button1Click(Sender: TObject);
const N=10;
var i:Integer;
  a:array[1..N]of Real;
  sr:Real;
begin
 Memo1.Clear;
 Memo1.Lines.Add('исходный массив'); //в оконном приложении нет проблем с буквами
 sr:=0;
 for i:=1 to N do
  begin
   a[i]:=10*Random;
   Memo1.Lines.Add(FloatToStr(a[i]));
   sr:=sr+a[i];
  end;
 sr:=sr/N;
 Memo1.Lines.Add('среднее  =  '+FloatToStr(sr));
 Memo1.Lines.Add('результат:');
 for i:=1 to N do
  begin
   a[i]:=a[i]-sr;
   Memo1.Lines.Add(FloatToStr(a[i]));
  end;
end;
initialization
 Randomize;
end.
type_Oleg вне форума Ответить с цитированием
Старый 29.01.2014, 18:39   #9
GendoJIF
Новичок
Джуниор
 
Регистрация: 27.01.2014
Сообщений: 8
По умолчанию

БОЛЬШОЕ СПАСИБО! ВСЕ ПОЛУЧИЛОСЬ!ПРОГ1.jpg
GendoJIF вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Разработать визуальную среду БД sergeytkachenko Фриланс 1 14.02.2012 08:41
Как связать среду разработки Delphi, с компонентами Simatic Step 7 Rid Компоненты Delphi 8 26.03.2011 15:02
Как добавить новый язык в среду Delphi Яшар Общие вопросы Delphi 9 15.03.2011 08:50
Подскажите среду StelZ40494 Софт 5 30.11.2009 23:05
как превратить "визуальную" иерархию в 1 столбце в "реальную" в нескольких eto Microsoft Office Excel 4 12.03.2009 13:55