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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.12.2012, 14:42   #1
IgoreKMaN
Пользователь
 
Регистрация: 24.04.2012
Сообщений: 88
Восклицание запись в файл

Последовательность x1,x22 образована по закону x:=(k-0.1)/((k*k*k)+(abs(sin(2*k)/cos(2*k)))); , (k=1,2.... ). Дано действительное e>0 . Записать в файл h члены последовательности x1,x2... , остановившись после первого члена, для которого выполнено x<e.
Программа записывает в файл последнее число, а нужно записывать все от х1 до хn
Программа на Turbo pascal
Помогите пожалуйста!
Код:
Program KR;
uses crt;
var x,e: real;
    i,n,k: integer;
    h:text;
Begin
clrscr;
{Writeln('vvedite k',k);
readln(k); }

x:=0;
  if x<0 then
  begin
  FOR k := 1 to n do
x:=(k-0.1)/((k*k*k)+(abs(sin(2*k)/cos(2*k))));
end
else
assign(h,'D:\1.txt');
reset(h);
rewrite(h);
writeln(h,x);
close(h);
{
writeln('rezult',x);}
readkey;
end.
IgoreKMaN вне форума Ответить с цитированием
Старый 09.12.2012, 17:17   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
Program KR;
uses crt;
var x,e: real;
    i,n,k: integer;
    h:text;
Begin
clrscr;
{Writeln('vvedite k',k);
readln(k); }

assign(h,'D:\1.txt');
rewrite(h);
FOR k := 1 to n do begin
 x:=(k-0.1)/((k*k*k)+(abs(sin(2*k)/cos(2*k))));
 writeln(h,x);
end
close(h);
readkey;
end.
Подходит?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.12.2012, 17:27   #3
IgoreKMaN
Пользователь
 
Регистрация: 24.04.2012
Сообщений: 88
По умолчанию

чет не хочет
IgoreKMaN вне форума Ответить с цитированием
Старый 09.12.2012, 17:29   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
при этом коде он вообще ничего не записывает в файл
Еще бы. А подумать? n у тебя где вводится? ась?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.12.2012, 17:51   #5
IgoreKMaN
Пользователь
 
Регистрация: 24.04.2012
Сообщений: 88
По умолчанию

n у нас не известно т.к. повторять цикл надо до тех пор пока х не станет меньше нуля
IgoreKMaN вне форума Ответить с цитированием
Старый 09.12.2012, 18:28   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну замени FOR на while с нужным условием
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.12.2012, 18:32   #7
IgoreKMaN
Пользователь
 
Регистрация: 24.04.2012
Сообщений: 88
По умолчанию

уже поменял)) все ровно в файл 1 значение записывает(последнее)
Код:
Program KR;
uses crt;
var x,e: real;
    i,n,k: integer;
    h:text;
Begin
clrscr;
{Writeln('vvedite k',k);
readln(k); }


while x>0  Do

x:=(k-0.1)/((k*k*k)+(abs(sin(2*k)/cos(2*k))));

assign(h,'D:\1.txt');
reset(h);
rewrite(h);
writeln(h,x);

close(h);

readkey;
end.
IgoreKMaN вне форума Ответить с цитированием
Старый 09.12.2012, 18:56   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
все ровно
Все ровно ты ничего не понял... Читай мой пример до полного просветления. Удачи.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.12.2012, 22:12   #9
IgoreKMaN
Пользователь
 
Регистрация: 24.04.2012
Сообщений: 88
По умолчанию

судя по твоему примеру оно должно выглядеть так(как я понимаю)?
Код:
 Program KR;
uses crt;
var x,e: real;
    i,n,k: integer;
    h:text;
Begin
clrscr;
{Writeln('vvedite k',k);
readln(k); }

assign(h,'D:\1.txt');
rewrite(h);

while x>0 Do

 x:=(k-0.1)/((k*k*k)+(abs(sin(2*k)/cos(2*k))));
 writeln(h,x);

close(h);
readkey;
end.
IgoreKMaN вне форума Ответить с цитированием
Старый 09.12.2012, 22:28   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Да. Так. Если не учитывать что ты забыл о необходимости поместить вывод в файл внутрь цикла.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запись в файл Aelon Общие вопросы C/C++ 2 29.05.2012 11:51
Запись информации в файл в файл Anubys Win Api 0 04.11.2011 23:27
Запись в файл и.т.п. pa6kevi4 Общие вопросы .NET 2 24.06.2010 11:00
запись в файл grater83 Общие вопросы Delphi 10 27.12.2009 15:01