Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Циклы

Автор: UCH 7.06.2007 1:08

Здравствуйте помогите пожалуста написать программу
Вот задание

1).Создать файл следующим образом: с клавиатуры вводятся числа до тех пор ,пока не будет введено число 9999. но нужно сделать так чтоб число 9999 не использовалось в коде.
2).Вывести каждый элемент файла на экран.

я понял так! что (от 1 до 9998) и (от 1000 до N)!

Помогите пожалуста

Автор: Айра 7.06.2007 1:44

Или так:


var a: integer;
...
repeat
...
until a=(10000-1);


Автор: UCH 7.06.2007 2:01

Цитата(Айра @ 6.06.2007 22:44) *

Или так:

var a: integer;
...
repeat
...
until a=(10000-1);




спасибо получилось а не знаешь как вывести те значения которые я водил на экран?

Автор: Айра 7.06.2007 2:58

Можно все это сделать вот так:

uses crt;
var a: word;
f: text;
begin
assign(f,'файл.txt');
rewrite(f);
repeat
begin
writeln('вводи');
readln(a);
writeln(f,a);
end;
until a=(10000-1);
close(f);
reset(f);
while not eof(f) do
begin
readln(f,a);
writeln(a);
end;
close(f);
end.

но программа почему-то после всех цифр выводит ноль, как с этим бороться пока не знаю, но на форуме недавно видела решение..

добавлено: исправила, теперь вроде нормально))

Автор: мисс_граффити 7.06.2007 3:16

1. почему типизированный не хочешь использовать?
2. в блоке repeat/until не обязательно писать begin/end
3. как бороться с нулем... смотри:

Код
writeln(f,a);
...
read(f,a);

надо как-то поединообразнее... или readln/writeln, или read/write

Автор: Айра 7.06.2007 3:24

Пасибо за советы)) С файлами я еще не очень дружу, изучаю методом проб и ошибок, и конечно же тыка)). А про repeat/until давно хотела спросить, теперь буду знать.