Страница 1 из 1

Повтор программы

СообщениеДобавлено: 08.03.2013 14:34:37
Рустам26
Есть ли такой оператор (или что-то другое), чтобы когда программа закончилась, повторить её заново?

Re: Повтор программы

СообщениеДобавлено: 08.03.2013 15:31:48
Лекс Айрин
Рустам26, Goto

Re: Повтор программы

СообщениеДобавлено: 08.03.2013 17:30:34
Рустам26
Спасибо

Re: Повтор программы

СообщениеДобавлено: 08.03.2013 17:42:41
Лекс Айрин
Рустам26, не за что. Смотри аккуратнее с этим оператором. Иначе программа никогда не завершится.

Re: Повтор программы

СообщениеДобавлено: 08.03.2013 18:02:40
Рустам26
получилось


Код: Выделить всё
program ten;
   label goback;
var  B:array [1..50] of real;
   K,i:integer;
   d:string;
   flag:boolean;
begin
goback:
   write('Размерность массива ');
   readln(K);
   for i:=1 to K do
      begin
         write('B[',i,']=');
         readln(B[i]);
      end;
   i:=1;
   flag:=false;
   while (i<=K) and (flag=false) do
      begin
         if B[i]=10 then flag:=true
         else i:=i+1;
     end;
   if flag=true then
   writeln('Номер первого элемента равного 10',i:5)
   else writeln('Элементов равных 10 нет');
   readln;
   Writeln('Хочешь повторить?');
   Readln (d);
   If d='да' then
goto goback
   else
end.

Re: Повтор программы

СообщениеДобавлено: 08.03.2013 19:32:06
bormant
Подобное проще делать при помощи цикла repeat until:
Код: Выделить всё
  repeat
    ...
    write('Повторить? [да]/нет '); readln(d);
  until (d <> 'да') and (d <> '');

Re: Повтор программы

СообщениеДобавлено: 08.03.2013 19:42:29
Лекс Айрин
bormant, на самом деле, абсолютно равнозначно.