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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.06.2013, 20:44   #11
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Учитесь формулировать свои мысли. Очень полезное умение.

Вот, что у меня получилось.
Правда, это существенно не совпадает с приведенным Вами файлом.
И, кроме того, я немного отступил от собственной формулировки, чтобы выходной файл был больше похож на Ваш.
Код:
const NumBackets = 2048; // максимальное количество корзин
type
  tBacket = record
    summ : extended; // здесь накапливаем сумму значений функции
    numb : longint; // а здесь - количество значений функции в корзине
  end;
var
  t : text;
  i,n : longint;
  a : array[0..NumBackets-1]of tBacket;
  x,y : extended;
begin
  fillchar(a, sizeof(a), 0);
  assign(t, 'До.txt');
  reset(t);
  while not eof(t) do begin
    readln(t, x, y);
    if (x >= 0.0) and (x < (NumBackets / 2)) then begin
      n := trunc(x*2.0);
      a[n].summ := a[n].summ + y;
      inc(a[n].numb);
    end else begin
      close(t);
      writeln('It isn''t enough baskets');
      halt(1);
    end;
  end;
  close(t);
  assign(t, 'После.txt');
  rewrite(t);
  for i := 0 to NumBackets-1 do
    if a[i].numb > 0 then
      if odd(i) then
        writeln(t, i/2:1:1, #9, a[i].summ/a[i].numb:1:2)
      else
        writeln(t, i/2:1:0, #9, a[i].summ/a[i].numb:1:2);
  close(t);
end.
s-andriano вне форума Ответить с цитированием
Старый 05.06.2013, 00:25   #12
sergio1984
 
Регистрация: 03.06.2013
Сообщений: 9
По умолчанию

Спасибо s-andriano ! Благодарен вам !)

Правда, это существенно не совпадает с приведенным Вами файлом.
Запустил код, ничего странного на первый взгляд,работает всё как надо. Если вы имеете ввиду не совпадают сотые доли ? это ничего страшного я с округлением поиграюсь еще...

Есть вопрос, имеется ли возможность:

-изменять шаг обработки? не постоянно через 0,5 , а через 1 или 2, я бы включил edit чтобы вручную вбивать значения..

-включения в обработку дополнительного, 3 столбика ,у которого обработка будет такая же как и у 2-го... ?

Еще раз спасибо...

Последний раз редактировалось sergio1984; 05.06.2013 в 06:08.
sergio1984 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Переделавание кода на считывание из файла в файл output.txt input.txt !!! airesjke Помощь студентам 0 29.05.2013 14:07
Программа по обработке строк david-95 Паскаль, Turbo Pascal, PascalABC.NET 3 18.11.2012 13:42
Правка макроса по обработке txt файла alexsampler Microsoft Office Excel 11 30.08.2012 13:18
Как скопировать текст с файла 1.txt и записать в 2.txt Kasper1 Общие вопросы по Java, Java SE, Kotlin 1 14.12.2010 05:56
программа на си по обработке строки riptror Общие вопросы C/C++ 1 20.11.2007 20:54