Решение задачи №1 из главы 10.2

Задача №1 из главы 10.2

Самостоятельная работа
Модицифируйте код:

var i:integer;
begin
  for i:=1 to 10 do
  begin
     writeln(777);
     break;
  end;
 
  readln();
end.     

-- таким образом, чтобы на 4-ом витке на экран было выведено число 777, а на 5-ом произошел выход из цикла (при этом строчку for i:=1 to 10 оставьте без изменений).

var i:integer;
begin
  for i:=1 to 10 do
  begin
     writeln(777);
     if i=5 then
        break;
  end;
  readln();
end.      
vedro-compota's picture

сделать чтобы вывод 777 был только на 4-ом витке

_____________
матфак вгу и остальная классика =)

gani84's picture

var i:integer;
begin
  for i:=1 to 10 do
  begin
     writeln(777);
     if i=4 then
        break;
  end;
  readln();
end.         
vedro-compota's picture

только 1 раз и ТОЛЬКО на 4ом витке

_____________
матфак вгу и остальная классика =)

gani84's picture

var i:integer;
begin
  for i:=1 to 10 do
  begin
     if i=4 then
        writeln(777);
  end;
  readln();
end. 
vedro-compota's picture

это правильно, но можно оптимизировать: после 4-ого витка уже ничего не будет выводиться, поэтому можно завершить цикл досрочно (добавьте break)

_____________
матфак вгу и остальная классика =)

gani84's picture

var i:integer;
begin
  for i:=1 to 10 do
  begin
       writeln(777);
       break;
  end;
  readln();
end. 
vedro-compota's picture

это на первом витке, а не на 4-ом

_____________
матфак вгу и остальная классика =)

gani84's picture

Но значение 777 не выводится. Почему не совсем понятно

var i:integer;
begin
  for i:=1 to 10 do
  begin
       if i=4 then
          writeln(777);
       break;
  end;
  readln();
end. 
vedro-compota's picture

var i:integer;
begin
  for i:=1 to 10 do
  begin
       if i=4 then
          writeln(777);
       break;
  end;
  readln();
end.

-- тут выход из цикла в первом же витке, поэтому и не выводится.

Запустите код:

for i:=1 to 10 do
  begin
       writeln(777);
       break;
  end;

_____________
матфак вгу и остальная классика =)

vedro-compota's picture

читайте "Операторные скобки условного оператора": http://fkn.ktu10.com/?q=node/8539

_____________
матфак вгу и остальная классика =)

vedro-compota's picture

Задача: распечатать число 777 на 4-ом витке цикла for от 1 до 10, и на этом же 4-ом витке завершить цикл

_____________
матфак вгу и остальная классика =)

gani84's picture

var i:integer;
begin
  for i:=1 to 10 do
  begin
    if i=4 then
       begin
          writeln(777);
          break;
       end;
  end;
  readln();
end. 
vedro-compota's picture

решение засчитано

_____________
матфак вгу и остальная классика =)