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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.09.2013, 19:49   #1
m()estro
 
Регистрация: 13.09.2013
Сообщений: 4
По умолчанию Одномерный массив

задание:дано три последовательности a, b, c.. сформировать две последовательности x, y по следующему правилу:
Код:
x[i]=max(a[i],b[i],d)/2;
y[i]:=max(b[i],c[i],d)/2;
i=1,2..n; d-любое число.

исправте код где нужно
Код:
var
a: array [1..10] of integer;
b: array [1..10] of integer;
c: array [1..10] of integer;
i,n,d:integer;
x,y:string;
begin
randomize;
i:=strtoint(edit1.text);
n:=strtoint(edit2.text);
a[i]:=random(100);
b[i]:=random(100);
c[i]:=random(100);
d:=6;
for i:=1 to n do
x[i]:=max(a[i],b[i],d)/2;
y[i]:=max(b[i],c[i],d)/2;
label1.caption:=floattostr(y);
label2.caption:=floattostr(x);
end;

end.

Последний раз редактировалось Stilet; 01.10.2013 в 10:24.
m()estro вне форума Ответить с цитированием
Старый 29.09.2013, 23:35   #2
M9ICHIK
 
Регистрация: 04.11.2012
Сообщений: 3
По умолчанию

Паскаль уже плохо помню, приблизительно так:
Код:
var
a: array of integer;
b: array of integer;
c: array of integer;
i,n,d: integer;
x,y: array of real;
begin
randomize;
n:=strtoint(edit2.text);
a:=new integer[n];
b:=new integer[n];
c:=new integer[n];
x:=new integer[n];
y:=new integer[n];
for i:=1 to n do
begin
a[i]:=random(100);
b[i]:=random(100);
c[i]:=random(100);
end;
d:=random(10);
for i:=1 to n do
begin
x[i]:=max(a[i],b[i],d)/2;
y[i]:=max(b[i],c[i],d)/2;
end;

end.

Последний раз редактировалось Stilet; 01.10.2013 в 10:25.
M9ICHIK вне форума Ответить с цитированием
Старый 29.09.2013, 23:39   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Паскаль уже плохо помню, приблизительно так:
если очень плохо помните, может не стоит такое писать?! ;(

Это не Паскаль. И даже не Delphi!!
я уже не говорю про грубые ошибки, когда в цикле забыты операторные скобки begin / end...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 30.09.2013, 00:24   #4
M9ICHIK
 
Регистрация: 04.11.2012
Сообщений: 3
По умолчанию

Serge_Bliznykov может Вы напишите?!
Нет, так иди гуляй.

Последний раз редактировалось M9ICHIK; 30.09.2013 в 00:32.
M9ICHIK вне форума Ответить с цитированием
Старый 30.09.2013, 00:57   #5
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,318
По умолчанию

M9ICHIK, не нужно грубить.

Осталось реализовать функцию max от 2 параметров, которая возвращает наибольшее из 2 чисел.
Код:
var
  a, b, c, n, d, i: integer;
  sa, sb, sc, sx, sy: string;
begin
  randomize;
  n := strtoint(edit1.text);
  d := strtoint(edit2.text);
  sa := '';
  sb := '';
  sc := '';
  sx := '';
  sy := '';
  for i := 1 to n do
  begin
    a := random(100);
    b := random(100);
    c := random(100);
    sa := sa + ' ' + inttostr(a);
    sb := sb + ' ' + inttostr(b);
    sc := sc + ' ' + inttostr(c);
    sx := sx + ' ' + floattostr(max(a, max(b, d)) / 2);
    sy := sy + ' ' + floattostr(max(b, max(c, d)) / 2);
  end;
  showmessage('a: ' + sa);
  showmessage('b: ' + sb);
  showmessage('c: ' + sc);
  showmessage('x: ' + sx);
  showmessage('y: ' + sy);
end;
Можно, конечно, добавить и массивы, но особого смысла нет, только если это будет обязательным требованием преподавателя.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 01.10.2013, 00:10   #6
m()estro
 
Регистрация: 13.09.2013
Сообщений: 4
По умолчанию

масивы как раз и нужны по требованию преподавателя
m()estro вне форума Ответить с цитированием
Старый 01.10.2013, 00:16   #7
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,318
По умолчанию

Ну ок
Код:
var
  a, b, c: array of integer;
  n, d, i: integer;
  sa, sb, sc, sx, sy: string;
begin
  randomize;
  n := strtoint(edit1.text);
  d := strtoint(edit2.text);
  sa := '';
  sb := '';
  sc := '';
  sx := '';
  sy := '';
  setlength(a, n);
  setlength(b, n);
  setlength(c, n);
  for i := 1 to n do
  begin
    a[i] := random(100);
    b[i] := random(100);
    c[i] := random(100);
    sa := sa + ' ' + inttostr(a[i]);
    sb := sb + ' ' + inttostr(b[i]);
    sc := sc + ' ' + inttostr(c[i]);
    sx := sx + ' ' + floattostr(max(a[i], max(b[i], d)) / 2);
    sy := sy + ' ' + floattostr(max(b[i], max(c[i], d)) / 2);
  end;
  showmessage('a: ' + sa);
  showmessage('b: ' + sb);
  showmessage('c: ' + sc);
  showmessage('x: ' + sx);
  showmessage('y: ' + sy);
end;
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Двумерный массив развернуть в одномерный массив по строкам[QBASIC] TrueStyle777 Помощь студентам 3 29.05.2013 21:56
Дан одномерный массив, сформировать новый массив по заданному правилу {Delphi} Nickolai47 Помощь студентам 5 16.12.2012 14:51
Одномерный массив и Двумерный массив eugene1437 Общие вопросы C/C++ 15 25.05.2011 19:17
Одномерный массив , двухмерный массив Woxx Паскаль, Turbo Pascal, PascalABC.NET 0 10.09.2010 09:28
Одномерный массив. Q basic - Построить новый массив из элементов исходного ,которые больше P. Marishkaa Помощь студентам 2 12.01.2010 16:54