Задача 4 урок 13.2

Задача 4 урок 13.2

В некоем виртуальном пространстве есть виртуальные, опять же, ASCII-счеты, с 7-ю спицами по 10 костяшек на каждой, в сброшенном состоянии (условный ноль) они выглядят так:

---++++++++++
---++++++++++
---++++++++++
---++++++++++
---++++++++++
---++++++++++
---++++++++++
var N, i, i1, i2, k, f, s, r, v: integer;

begin
  k := 1;
  r := 0; //разрядность введенного числа
  writeln('Vvedite celoe chislo ne bolee 9.999.999');
  readln(N);
  v := N;  //вспомогательная рязряда
  for i:=1 to 7 do                //
    begin                         //
      v := v div 10;              //
      r := r + 1;  // итог разряд//     ОПРЕДЕЛЯЕМ РАЗРЯД
      if v = 0 then              //
        break;                   //
    end;                         //

  for i1:=1 to (r-1) do              //  ОПРЕДЕЛЯЕМ МНОЖИТЕЛЬ
    k:=k*10;                      //

  for i2:=1 to (7-r) do                   //  ВЫВОДИМ ВЕРХНИЕ НУЛИ
    writeln('- - - + + + + + + + + + +'); //

  for f:=1 to r do    //ОСНОВНОЙ ЦИКЛ ПО НИЖНИМ СТРОКАМ
    begin
      s := (N div k);  //ОТДЕЛЯЕМ 1й РАЗРЯД
      N := (N mod k);   //ОСТАВШИЕСЯ РАЗРЯДЫ
      k := (k div 10); //УМЕНЬШАЕМ МНОЖИТЕЛЬ
      for i:=0 to 10 do   // ВЛОЖЕННЫЙ ЦИКЛ ВЫВОДА СТРОКИ
        begin             //
          if (i<s) then     //
            write('+ ')     //
          else if(i=s) then  //
            write('- - - ') //
          else              //
            write('+ '); //
        end;
      writeln();
    end;
  readln();
end.
vedro-compota's picture

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

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