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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.05.2009, 21:02   #1
Volch
 
Регистрация: 19.10.2008
Сообщений: 7
По умолчанию TurboDelphi глючит встроенная процедура

Надо написать процедуру Massiv, которая заполняет случайным образом одномерный массив A(n), n<=10, целыми числами и выводит его на экран. Основная программа выводит на экран пять различных массивов.

Моя программа выводит максимум 2 массива, на остальных консоль пропадает.

program project1;
uses
SysUtils;

procedure Massiv(N:integer);

var
b:integer;
A:array of integer;
str:string;
begin
{$APPTYPE CONSOLE}
randomize;
N:=Random(10);
setLength(A,N);
str:='';
for b := 0 to N do
begin
A[b]:=Random(100); //Заполняем массив случайными числами
str:=str+intToStr(A[b])+', ';
end;
writeln(str);
readln;
end;

var
c:integer;
N:integer;
begin
{$APPTYPE CONSOLE}
for c := 1 to 5 do
Massiv(N);
readln;
end.
Volch вне форума Ответить с цитированием
Старый 04.05.2009, 21:23   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

не понимаю что вы пытались написать, но вынужден сообщить что ничего не глючит просто вы ошиблись

1)вариант(так как не понял)
Код:
program project1;
{$APPTYPE CONSOLE}
uses SysUtils;

procedure Massiv(N:integer);
var b:integer;
    A:array of integer;
    str:string;
begin
 randomize;
 setLength(A,N);
 str:='';
 for b := 0 to N-1 do
  begin
   A[b]:=Random(100);
   str:=str+intToStr(A[b])+', ';
  end;
 writeln(str);
 readln;
end;

var c,N:integer;
begin
 N:=5;
 for c := 1 to 5 do Massiv(N);
 readln;
end.
2)вариант:
Код:
program project1;
{$APPTYPE CONSOLE}
uses SysUtils;

procedure Massiv;
var b,N:integer;
    A:array of integer;
    str:string;
begin
 randomize;
 N:=random(10)+1;
 setLength(A,N);
 str:='';
 for b := 0 to N-1 do
  begin
   A[b]:=Random(100);
   str:=str+intToStr(A[b])+', ';
  end;
 writeln(str);
 readln;
end;

var c:integer;
begin
 for c := 1 to 5 do Massiv;
 readln;
end.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 04.05.2009, 22:02   #3
Volch
 
Регистрация: 19.10.2008
Сообщений: 7
По умолчанию

Спасибо, но ваши примеры у меня выдают только 1 массив
Volch вне форума Ответить с цитированием
Старый 04.05.2009, 22:45   #4
Volch
 
Регистрация: 19.10.2008
Сообщений: 7
По умолчанию

Все, теперь разобрался, удалил лишнюю строку, спасибо.
Volch вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
usb глючит reuter Компьютерное железо 4 31.03.2009 09:00
Калькулятор в TurboDelphi. Нужна форма Zid@ne Общие вопросы Delphi 5 13.01.2009 19:41
TurboDelphi. Справочник Xeon332 Общие вопросы Delphi 30 28.10.2008 17:06
RunAs - встроенная утилита Windows Air Общие вопросы Delphi 5 08.01.2008 17:44
Встроенная рамка в Internet Explorer GrEFon HTML и CSS 1 29.11.2007 07:13