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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.10.2008, 17:55   #1
Joxter
Пользователь
 
Регистрация: 07.10.2008
Сообщений: 14
Сообщение Работа с файлами

Есть текст такой программы
Цитата:
"при заданных абсциссах X1,X2, … ,Xn и ординатах Y1,Y2, … ,Yn n точек плоскости X0Y подсчитать, сколько из них находится в пределах круга заданного радиуса R с центром в начале координат, а также среднее арифметическое расстояния от начала координат для всех заданных точек."
...А сам код выглядит так
Код:
program Project1;
uses
  SysUtils;

const MAX = 10;
var
  x,y:array[1..max] of real;
  i,n,c: byte;
  r,s,t: real;

BEGIN
writeln('Vvedite koli4estvo to4ek:');
readln(n);
writeln('Vvedite max radius:');
readln(r);

  for i:=1 to n do
  begin
    writeln('Vvedite kordinati to4ek XY',i,':');
    readln(x[i],y[i]);
  end;
  s:=0;
  c:=0;
  for i:=1 to n do
  begin
    t:=sqrt(sqr(x[i])+sqr(y[i]));
    s:=s+t;
    if (t<r) then
    inc(c);
  end;
  s:=s/n;

  writeln('Koli4estvo to4er v radiuse',r:5:1,':',c);
  writeln('Srednee rastoznie do centra:', s:5:1);
  readln;
END.
так вот нужно чтоб он из одного файла(созданного мной) брал данные, а в другой (также созданного мной) помещал результаты... не можете подсказать как это делать? Заранее спасибо)
Joxter вне форума Ответить с цитированием
Старый 07.10.2008, 18:32   #2
[Smarik]
Веб-разработчик
Форумчанин
 
Аватар для [Smarik]
 
Регистрация: 16.01.2008
Сообщений: 451
По умолчанию

собственно ничего сложного
Код:
program Project1;
uses
  SysUtils;

const MAX = 10;
var
  x,y:array[1..max] of real;
  i,n,c: byte;
  r,s,t: real;
f:textfile;
f1,f2,f3:string;

BEGIN
writeln('Vvedite koli4estvo to4ek:');
readln(n);
writeln('Vvedite max radius:');
readln(r);

  for i:=1 to n do
  begin
    writeln('Vvedite kordinati to4ek XY',i,':');
    readln(x[i],y[i]);
  end;
  s:=0;
  c:=0;
  for i:=1 to n do
  begin
    t:=sqrt(sqr(x[i])+sqr(y[i]));
    s:=s+t;
    if (t<r) then
    inc(c);
  end;
  s:=s/n;
//записываем
assignfile(f,'file.txt');
rewrite(f);
writeln(r);//записываем содержимое переменную на 1 строку
writeln(c);//на 2
writeln(s);// на 3
closefile(f);
//считываем
assignfile(f,'file.txt');
reset(f);
readln(f,f1);//записываем в переменную f1 первую строку
readln(f,f2);//2 строку
readln(f,f3);//3 строку
closefile(f);
  writeln('Koli4estvo to4er v radiuse',r:5:1,':',c);
  writeln('Srednee rastoznie do centra:', s:5:1);
  readln;
END.
синтаксис к паскалю может немного не пожходить, уже забыл его просто =) там вроде стрингов нет и про assingfile сомневаюсь, возможно просто Assign
Я ваш новый друг, смиритесь!
[Smarik] вне форума Ответить с цитированием
Старый 07.10.2008, 18:35   #3
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Создайте текстовый файл в папке с программой.
Запишите в первой строчке через пробел количество точек n и радиус r, например
20 6,5
Во второй строке через пробел координаты Х 20 штук, например
1,2 3,5 5,2 6,3 .........
В третьейй строке через пробел координаты У 20 штук, например
1,2 3,5 5,2 6,3 .........
Сохраните файл типа Tocki1.
В программе напишите
Код:
var
  f,g:text;
......................
Код:
assignfile(f,'tocki1.txt');
reset(f);
read(f,n,r);//читаем кол-во и радиус
readln; //переходим на новую строку
for i:=1 to n do
read(f,x[i]); //читаем координаты Х
readln;
for i:=1 to n do
read(f,y[i]);  //читаем координаты У
................................... ........
Код:
assign(g,'tocki2.txt');
rewrite(g);
writeln(g,'Koli4estvo to4er v radiuse',r:5:1,'=',c);
writeln(g,'Srednee rastoznie do centra:',s:5:1);
closefile(f);
closefile(g);
readln
END.
puporev вне форума Ответить с цитированием
Старый 07.10.2008, 19:00   #4
Joxter
Пользователь
 
Регистрация: 07.10.2008
Сообщений: 14
По умолчанию

спасибо большое!)
Joxter вне форума Ответить с цитированием
Старый 08.10.2008, 01:17   #5
Joxter
Пользователь
 
Регистрация: 07.10.2008
Сообщений: 14
По умолчанию

Извините) что-то не очень, что значит???
Цитата:
Error in module Unit1: Declaration of class TForm1 is missing or incorrect
цветом ничего не выделяет
Joxter вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с файлами DM_bite Помощь студентам 4 20.09.2008 16:52
Работа с файлами Smith777 Помощь студентам 4 23.02.2008 05:08
Работа с файлами Dim@ Помощь студентам 1 26.12.2007 22:43
Работа с файлами DJ Socol Win Api 1 17.07.2007 09:18