Помощь - Поиск - Пользователи - Календарь
Полная версия: задача подсчет чтобы то число наити
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
maksimla
задание дан здоровое число m. Чисел строка 123456789 между ними некоторыми надо вставить знак плюс + или минус - ,чтобы все былобы равно числу m.
пример если m=1 то тогда так 1+2-34+56-7-8-9 подходит.
заполните пропущеные места (отмеченые многоточием).
нельзя использовать дополнительных переменных и нельзя никак изменять текст.
вот программа.
program zenkluIsdestymas;
  var t : array[2..9] of string;  {в массиве распределены цифры}
      m: integer;
  procedure BandauDetizenkla(skaitmuo, reiskinys : longint;
                              zenklas : char;
                              zenklo_vieta : integer);
  var naujas_reiskinys : longint;
      i: 2..9;
  begin
    if ... = '+'
      then naujas_reiskinys := ...
      else naujas_reiskinys := ...;
    if zenklo_vieta ...
      then
        begin
          t[zenklo_vieta] := ...; ...;
          t[zenklo_vieta] := ...; ...;
          t[zenklo_vieta] := ...; ...
        end

      else {проверка равности}
        if ... = m
          then
            begin
              for i := 2 to 9  do ...;
              writeln('9');
            end;
  end;
begin
 readln(m);
  fillchar(t, sizeof(t), '');
  BandauDetizenkla;(1, 0, '+', 2)
end.



можете обеснить что программа делает тут
fillchar(t, sizeof(t), '');

и как так считается числа все то я вот задал m=200 и никак несмог подсчитать
пожалста только в саму программу пока нечего невставляйте вместо точек хочется все самаму вставить подумать и вставить а сечас только понять мне надо
TarasBer
А нельзя ли переменные называть ну хотя бы на инглише? Ну чтоб нам понятнее было.

Цитата(maksimla @ 26.02.2009 16:54) *

можете обеснить что программа делает тут
fillchar(t, sizeof(t), '');




Программа тут не компилируется.
maksimla
можно только где многоточие добовлять разные порамитры но в var нельзя нечего добавить
volvo
Ну, так ты переведи названия переменных для тех кто твоего языка-то не знает. Если б тебе предложили разобраться в программе с китайскими названиями переменных, ты б разобрался?
maksimla
сечас все перевиду
program zenkluIsdestymas; знаков разложение или расположение
procedure BandauDetizenkla пробую ложить знак

skaitmuo цифра
reiskinys явление или значение
zenklas знак
zenklo_vieta место знака
naujas_reiskinys новое явление
все кажется или еще чтото?
maksimla
program razpolozenie_znakov;
  var t : array[2..9] of string;
      m: integer;
  procedure probuju_vstaviti_znak(cislo, znacenie : longint;
                              znak : char;
                             mesto_znaka : integer);
  var novoe_znacenije : longint;
      i: 2..9;
  begin
    if znak = '+'{тут так новерное кроме znak больше нечего неподходит}
      then novoe_znacenije :=.... {тут данные какието плюсуются наверное˙}
      else novoe_znacenije :=....;{тут минусуются}
{тут без понятия что надо вставит в первые многоточие а во второе наверное probuju_vstaviti_znak с данными вставит }
 if mesto_znaka
      then
        begin
          t[mesto_znaka] := ...; ...;
          t[mesto_znaka] := ...; ...;
          t[mesto_znaka] := ...; ...
        end
      else
{тут будит проверятся что подсчитали уже с равно   m  и если правильно то потом выводить на экран наверное будит novoe_znacenije вставить тут}
        if {novoe_znacenije}.... = m
          then
            begin
              for i := 2 to 9  do ....;
              writeln('9');
            end;
  end;
begin
 readln(m);
 fillchar(t, sizeof(t),' ');
  probuju_vstaviti_znak(1, 0, '+', 2)
end.
 

так объясните мне пожалуйста если можете и еще тут это надо сделать так чтобы было поиск в глубину чтобы было бы
maksimla
а что некто непоможет чтоли с этим заданием этим?
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.